TP5框架低版本漏洞
漏洞1:
- 描述:未对控制器名做严格过滤,导致非法用户可以通过将控制器名写为带完整命名空间类的方式来调起系统所有公共类的方法。
- 代码:\thinkphp\library\think\App.php类的module方法。
- 修复:添加下方补丁代码( 补丁代码 start 到 补丁代码 end)
// 设置默认过滤机制
$request->filter($config['default_filter']);
// 当前模块路径
App::$modulePath = APP_PATH . ($module ? $module . DS : '');
// 是否自动转换控制器和操作名
$convert = is_bool($convert) ? $convert : $config['url_convert'];
// 获取控制器名
$controller = strip_tags($result[1] ?: $config['default_controller']);
/**补丁代码 start**/
if