備份是個好習慣
阿新 • • 發佈:2020-11-14
我們看到備份肯定想到bak檔案,我們再網址輸入地址,就會自動下載
程式碼如下:
```<?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){ //滿足條件獲得flag echo $flag."取得flag"; } ```?>
所以str_replace的過濾我們使用kkeyey的形式進行繞過
kkeyey這個是中間的key被過濾,但是我們左右兩邊有k+ey,所以成功構造一個key讓下文parse_str中的變數讀取。
獲得flag