本帖最后由 乏味 于 2015-1-6 16:10 编辑
最近喜欢上了代码审计,看了很多文章
第一次学挖漏洞,挖到了一个心里嗷嗷爽。。。
这次审查的是骑士CMS
漏洞文件是/admin/admin_crons.php
漏洞代码大概在108-119行处
[PHP] 纯文本查看 复制代码 $id=intval($_GET['id']);
$crons=$db->getone("select * from ".table('crons')." WHERE cronid='{$id}' LIMIT 1 ");
if (!empty($crons))
{
if (!file_exists(QISHI_ROOT_PATH."include/crons/".$crons['filename']))
{
adminmsg("任务文件 {$crons['filename']} 不存在!",0);
}
require_once(QISHI_ROOT_PATH."include/crons/".$crons['filename']);
adminmsg("执行成功!",2);
}
}
我看了下,貌似对$crons['filename']这个没有过滤,直接带入包含。
可是我在地址栏构造语句不能包含,不知道为啥,如果可以包含的大大求教。。
于是我就直接访问这个文件,然后点击添加任务
其他的随便填,在任务脚本处填入../../robots.txt包含根目录的robots.txt文件
然后点击执行
包含成功
话说我都没有乌云账号,于是果断提交(*^__^*) 嘻嘻…… |