urldecode二次編碼繞過
urldecode二次編碼繞過
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代碼審計
代碼審計得需要傳入一個 hackerDJ
但是又不能直接傳需要簡單編碼一下繞過eregi函數(shù)
查表得 %44 = D
構造 hacker%44J
過不了
于是把%也重新構造一下
相當于2次編碼 得 hacker%2544J
得到
Access granted!
flag{bugku__daimasj-1t2}
參考 eregi()
eregi()函數(shù)在一個字符串搜索指定的模式的字符串。搜索不區(qū)分大小寫。Eregi()可以特別有用的檢查有效性字符串,如密碼慷妙。
可選的輸入參數(shù)規(guī)則包含一個數(shù)組的所有匹配表達式,他們被正則表達式的括號分組。
返回值
如果匹配成功返回true,否則,則返回false
參考 html url編碼
URL 編碼形式表示的 ASCII 字符(十六進制格式)千扔。
十六進制格式用于在瀏覽器和插件中顯示非標準的字母和字符妇拯。