攻防世界web高階2分題(PHP2)

2021-10-08 18:28:30 字數 1125 閱讀 1506

第一步,要使得"admin"===$_get[id]不成立

第二步,經過$_get[id] = urldecode($_get[id]);,使得$_get[id] == "admin"成立。

當傳入引數id時,瀏覽器在後面會對非ascii碼的字元進行一次urlencode

然後在這段**中執行時,會自動進行一次urldecode

在urldecode()函式中,再一次進行一次解碼

urldecode(%2561)

=%61

urldecode(%61)

=a

即,當第一次比較時,實際是

if(

"admin"===

"%61dmin"

)

而經過

$_get

[id]

= urldecode(

$_get

[id]

);

第二次是

if(

"admin"

=="admin"

);

也不是只可以構造a,也可以構造d

urldecode(%2564)

=%64

urldecode(%64)

=d

即,當第一次比較時,實際是

if(

"admin"===

"a%61min"

)

而經過

$_get

[id]

= urldecode(

$_get

[id]

);

第二次是

if(

"admin"

=="admin"

);

所以?id=a%2564min

攻防世界php2 攻防世界高手高階web上

baby web 提示初始介面,嘗試index.php,則回跳轉到1.php,bp 抓包,可以看到flag在響應頭部的flag欄位 warmup 原始碼中有source.php highlight file file class emmm public static function checkfi...

攻防世界web高階題 unfinish

攻防世界web高階題 unfinish 1 看一下題目提示sql 2 開啟題目看一下原始碼,沒有問題 4 掃一下目錄,掃到乙個註冊頁面 register.php 註冊乙個賬號登入,登陸後的介面為 沒有可利用的地方,返回上一步,註冊,既然是sql注入,那就嘗試著繞過 登入後發現使用者名為2 猜測此處的...

攻防世界 web 高手高階區 PHP2

題目 首先發現原始碼洩露 檢視源 即 if admin get id get id urldecode get id if get id admin can you anthenticate to this website?分析 第一步,要使得 admin get id 不成立 第二步,經過 get...