74CMS include/common.fun.php 文件包含漏洞
文件 include/common.fun.php,有漏洞的 executioncrons 函数:
function execution_crons() { global $db; $crons=$db->getone("select * from ".table('crons')." WHERE (nextrun<".time()." OR nextrun=0) AND available=1 LIMIT 1 "); if (!empty($crons)) { require_once(QISHI_ROOT_PATH."include/crons/".$crons['filename']); } }
executioncrons 函数直接从数据库里读取配置好的文件路径,未做任何判断就带入 requireonce 函数了。这个函数是后台的“计划任务”调用的,$crons['filename'] 对应的是脚本路径,所以可以在后台的计划任务里添加:
../../../../etc/passwd