[GKCTF2020]CheckIN 注意了解多方面的东西
打开之后是这样的,没有发现反序列化函数,但是发现有一个@eval,想到了一句话,这是用base64进行传参
首先传参phpinfo();
看看,需要经过base64编码
http://e0cc90ac-d4bc-450c-a6a4-476298ce7c18.node3.buuoj.cn/?Ginkgo=cGhwaW5mbygpOw==
- 1
找到disable_functions,发现过滤了许多危险函数
我们上传一个一句话木马看看eval($_POST[123]);
,经过base64是ZXZhbCgkX1BPU1RbMTIzXSk7
执行
http://e0cc90ac-d4bc-450c-a6a4-476298ce7c18.node3.buuoj.cn/?Ginkgo=ZXZhbCgkX1BPU1RbMTIzXSk7
- 1
用菜刀,连不上,我呆了,还好有个蚁剑
再试一下,成功了
发现了flag,结果打不开,也修改不了权限
打开readflag看看,有乱码,想到是通过执行readflag来读取flag
然后怎么办,我在不会了。。。
看了大佬的wp后才知道做题要注意版本
通过phpinfo()知道php版本为7.3,这个版本有一个漏洞
php7-gc-bypass漏洞利用PHP garbage collector程序中的堆溢出触发进而执行命令
影响范围是linux,php7.0-7.3
给出了exp
https://github.com/mm0r1/exploits/blob/master/php7-gc-bypass/exploit.php
下载后进行修改,改为执行readflag
然后通过蚁剑进行上传这里发现tmp目录权限是1777,于是决定上传到这个目录
点击此处上传
通过之前的一句话来执行文件包含,得到flag