ThinkCMF框架上的任意内容包含漏洞预警
2019-10-25 14:28:41
1.背景
ThinkCMF是一款基于PHP+MYSQL开发的中文内容管理框架,底层采用ThinkPHP3.2.3构建。
ThinkCMF提出灵活的应用机制,框架自身提供基础的管理功能,而开发者可以根据自身的需求以应用的形式进行扩展。每个应用都能独立的完成自己的任务,也可通过系统调用其他应用进行协同工作。在这种运行机制下,开发商场应用的用户无需关心开发SNS应用时如何工作的,但他们之间又可通过系统本身进行协调,大大的降低了开发成本和沟通成本。
官网:http://www.thinkcmf.com
2.漏洞详情
攻击者可利用任意内容包含漏洞构造恶意的url,读取服务器文件,甚至可以向服务器写入任意内容的文件,达到远程代码执行的目的。
文件读取POC:
?a=display&templateFile=public/install/css/install.css (templateFile可以自定义读取文件)
写入文件EXP:
?a=fetch&content=
3.影响版本
ThinkCMF X1.6.0
ThinkCMF X2.1.0
ThinkCMF X2.2.0
ThinkCMF X2.2.1
ThinkCMF X2.2.2
4.修复建议
将HomebaseController.class.php和AdminbaseController.class.php类中display和fetch函数的修饰符改为protected。