ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架
,
2020年1月10日,ThinkPHP官方发布了ThinkPHP v6.0.2的版本更新,该次更新修正sessionid检查的一处隐患,该隐患可导致任意文件操作漏洞。
漏洞名称
:ThinkPHP 6.0.0 - 6.0.1 任意文件操作漏洞
威胁等级
:高危
影响范围
:ThinkPHP 6.0.0-ThinkPHP 6.0.1
漏洞类型
:任意文件操作
利用难度
:较难
ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache 2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP 5.0以上版本支持,支持MySql、PgSQL、Sqlite多种数据库以及PDO扩展,ThinkPHP框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块决定。
ThinkPHP 6.0基于精简核心和统一用法两大原则在5.1的基础上对底层架构做了进一步的优化改进,并更加规范化。由于引入了一些新特性,ThinkPHP6.0运行环境要求PHP7.1+,不支持5.1的无缝升级。
2020年1月10日,ThinkPHP官方发布了ThinkPHP v6.0.2的版本更新,该次更新修正sessionid检查的一处隐患,该隐患可导致任意文件操作漏洞。该漏洞允许攻击者在目标环境已启用了session的前提下,创建任意文件及删除任意文件,并且在特定的环境下,还可以getshell。
该漏洞是在存储session时导致的文件写入,当目标环境中开启了session功能,攻击者利用Cookie中的PHPSESSID值来创建任意文件。
搭建ThinkPHP v6.0.0漏洞环境后,创建特定的Index controller后,复现漏洞:
目前受影响的ThinkPHP版本:ThinkPHP 6.0.0-6.0.1
根据全网数据统计,使用ThinkPHP的网站多达33万余个,其中大部分集中在国内,约占使用量的75%以上。其中,浙江、北京、广东三省使用量最高,下边统计图中展示了ThinkPHP在国内使用量前十的地域。
官方发布的最新版本已经修复了此漏洞,请受影响的用户下载最新版本防御此漏洞。
下载链接:
https://github.com/top-think/framework
【
深信服下一代防火墙
】可轻松防御此漏洞, 建议部署深信服下一代防火墙的用户开启WAF安全防护,可轻松抵御此高危风险。
【
深信服云盾