ThinkPHP 远程代码执行漏洞预警
1、基本情况
ThinkPHP 是一个开源免费的,快速、简单的面向对象的轻量级 P
HP 开发框架,是为了敏捷 WEB 应用开发和简化企业应用开发而诞生
的。
近日,监测发现 ThinkPHP远程代码执行漏洞(QVD-2022-46174),
当 ThinkPHP 开启了多语言功能时,攻击者可以通过 lang 参数和目录
穿越实现文件包含,当存在其他扩展模块如 pear 扩展时,攻击者可
进一步利用文件包含实现远程代码执行。
对此,建议广大用户做好资产自查以及预防工作,以免遭受黑客
攻击。
2、影响范围
受影响版本
6.0.1 <= ThinkPHP <= 6.0.13
ThinkPHP 5.0.x
ThinkPHP 5.1.x
3、处置建议
临时修复建议:
ThinkPHP 默认关闭多语言功能,如果开启了该功能可以按照下
面方法关闭。
ThinkPHP 6
打开 app/middleware.php,将\think\middleware\LoadLangPac
k::class 这行注释掉。
ThinkPHP 5
打开 config/app.php,将'lang_switch_on'=> true 改成 '
lang_switch_on'=>false 修改完后,重启应用
通用修复建议
目前官方已发布安全更新,建议受影响客户安装更新
https://github.com/top-think/framework/releases
4、参考链接
1)
https://www.kancloud.cn/manual/thinkphp6_0/1037637
2)
https://static.kancloud.cn/manual/thinkphp5/118132