漏洞函数在文件source\module\misc\misc_seccode.php下面
请看代码 这段代码粗略一看没什么利用条件“./source/plugin/'.$etype[0].'/seccode/seccode_'.$etype[1].'.php'” 但是 我们把其中的/seccode/seccode_这个变成文件夹 不就Ok了嘛 if(!is_numeric($_G['setting']['seccodedata']['type'])) { $etype = explode(':', $_G['setting']['seccodedata']['type']); if(count($etype) > 1) { $codefile = DISCUZ_ROOT.'./source/plugin/'.$etype[0].'/seccode/seccode_'.$etype[1].'.php'; $class = $etype[1]; } else { $codefile = libfile('seccode/'.$_G['setting']['seccodedata']['type'], 'class'); $class = $_G['setting']['seccodedata']['type']; } if(file_exists($codefile)) { @include_once $codefile;
生成一下 然后这个文件夹/seccode/seccode_就在你的根目录下面躺着 接下来构造exp 但是这点击提交没用 都变成了数字型 所以我们换张表单 更改表的name值 点击提交 漏洞证明:
修复方案: 呵呵~~~~~~~~~~~~~ |
-
上一篇: PHP中使用按位取反(~)函数创建后门,编码变异类
下一篇: 万户OA某处绕过限制文件上传以及sql注入 - 网站安
还没有人抢沙发呢~