Thinkphp5远程代码执行漏洞事件

中科大型白癜风公益援助 http://m.39.net/pf/a_5327361.html

作者:知道创宇实验室

时间:年12月19日

0x00背景

年12月10日,ThinkPHP官方发布《ThinkPHP5.*版本安全更新》,修复了一个远程代码执行漏洞。由于ThinkPHP框架对控制器名没有进行足够的检测,导致攻击者可能可以实现远程代码执行。

知道创宇实验室漏洞情报团队第一时间开始漏洞应急,复现了该漏洞,并进行深入分析。经过一系列测试和源码分析,最终确定漏洞影响版本为:

ThinkPHP5.0.5-5.0.22

ThinkPHP5.1.0-5.1.30

在漏洞曝光后的第一时间,知道创宇实验室积极防御团队积极排查知道创宇云安全的相关日志,发现该漏洞最早从年9月开始,尚处于0day阶段时就已经被用于攻击多个虚拟货币类、金融类网站。

在漏洞披露后的一周时间内,实验室内部蜜罐项目也多次捕获到利用该漏洞进行攻击的案例,可以看到该漏洞曝光后短短8天就被僵尸网络整合到恶意样本中,并可以通过蠕虫的方式在互联网中传播。

由于该漏洞触发方式简单、危害巨大,知道创宇实验室在研究漏洞原理后,整理攻击事件,最终发布该漏洞事件报告。

0x01漏洞分析1.1漏洞成因

该漏洞出现的原因在于ThinkPHP5框架底层对控制器名过滤不严,从而让攻击者可以通过url调用到ThinkPHP框架内部的敏感函数,进而导致getshell漏洞,本文以ThinkPHP5.0.22为例进行分析。

通过查看手册可以得知tp5支持多种路由定义方式:




转载请注明:http://www.aierlanlan.com/rzdk/1216.html