**如下:
```<?php
/** * created by phpstorm.
* user: norse
* date: 2017/8/6
* time: 20:22
*/include_once "flag.php";
ini_set("display_errors", 0);
$str = strstr($_server['request_uri'], '?'); //取得當前url的路徑位址查詢「?」字元首次出現的位置,將「?」後面字元的取值給$str
$str = substr($str,1); //將$str變數中的值為1(這裡從1開始計數,也就是說只會去掉第乙個字母)前面的數值全部去除
$str = str_replace('key','',$str); //將str變數中所有帶key的字串變為無資料
parse_str($str); //查詢str中的字串解析到變數中,也就是說查詢$key1,$key2
echo md5($key1);
echo md5($key2);
if(md5($key1) == md5($key2) && $key1 !== $key2)
```?>
所以str_replace的過濾我們使用kkeyey的形式進行繞過
kkeyey這個是中間的key被過濾,但是我們左右兩邊有k+ey,所以成功構造乙個key讓下文parse_str中的變數讀取。
獲得flag
BUGKU 備份是個好習慣
開啟頁面之後發現是這個樣子,檢視原始碼也沒啥好東西。檢視檔案原始碼 created by phpstorm.user norse date 2017 8 6 time 20 22 include once flag.php ini set display errors 0 str strstr se...
Bugku web 備份是個好習慣
開啟題目鏈結,沒有發現什麼線索,想到題目名稱 備份 考慮到一般備份的字尾為.bak,於是訪問 訪問後獲得網頁原始碼 created by phpstorm.user norse date 2017 8 6 time 20 22 include once flag.php ini set displa...
BUGKU 備份是個好習慣
這兩天放鬆了兩天,感覺有點玩的攤下來了,還是要堅持刷題啊!首先開啟題目,根據題目意思肯定是要找備份檔案,用御劍掃瞄,結果沒有自己想要的結果 嘗試在index.php後加上bak 備份檔案的副檔名一般為 swp,bak 開啟後發現是乙個檔案,直接用記事本開啟是一段 審計 可以知道key1,key2都被...