综 述
ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。ThinkPHP可以支持windows/Unix/Linux等服务器环境。
漏洞分析Thinkphp的核心类Requests的method方法实现了表单请求类型伪装,默认为$_POST['_method']变量,但是并未对$_POST['_method']进行严格校验,可以通过变量覆盖对该类的任意函数进行调用,从而达到任意代码执行的效果。
经过本地复现确认,攻击者仅仅通过一个 HTTP POST 请求,就可以完成漏洞的利用,执行任意代码。以执行 whoami为例。
漏洞复现危险等级:高危
CNVD编号:CNVD-1999-01092
受影响版本: ThinkPHP 5.0.X-5.0.23
捷普安全实验室第一时间对次漏洞进行了复现,发现的确可以成功执行命令,且危害较大,同时捷普网络脆弱性评估系统已支持检测该漏洞,请大家及时升级或更新补丁。
捷普网络脆弱性智能评估系统扫描结果:
推荐使用捷普网络脆弱性智能评估系统第一时间进行漏洞检查。
解决方案升级应用版本
参考官方手册的升级指导章节进行升级。
参考链接如下:https://www.kancloud.cn/manual/thinkphp5/163239
代码修复
无法进行更新的用户,可对当前的项目源码进行人工修复,具体代码修复方案可参考下列链接:
https://github.com/top-think/framework/commit/4a4b5e64fa4c46f851b4004005bff5f3196de003
针对本次高危ThinkPHP5-远程代码执行漏洞,交大捷普攻防实验室一直深层次分析和研究,请广大用户登录交大捷普官网,对网络脆弱性智能评估系统(漏扫)、IPS、WAF及时更新,以应对本次漏洞危害。
专注网络安全
国内领先的网络信息安全产品和技术领导者