[極客大挑戰 2019]PHP


[極客大挑戰 2019]PHP
知識點:
1.網站的備份文件:www.zip
2.Php 反序列化漏洞:當反序列化字符串時,如果表示屬性個數的值大於真實屬性個數,就會跳過_wakeup函數的執行

備份泄露,應該可以用工具掃目錄掃出來,但是不知道為什么用御劍和dirbuster都掃不出來。直接在url后面輸入www.zip,可以獲取到網站的備份,打開以后可以看到有三個php,一個個看過去

下載下來的flag.php里的flag顯然不是正確答案。繼續看。重點是class.php,可以看到php的魔術方法,應該存在php反序列化漏洞.

仔細看一下代碼

index.php ,會調用class.php,以及對輸入反序列化

而反序列化后調用_wakeup會直接覆蓋輸入的用戶名。一個簡單的辦法是直接在class下面創建一個對象然后序列化。

然后因為要繞過wakeup,把Name后的數字改成3.因為username和password是私有變量,變量中的類名前后會有空白符,而復制的時候會丟失,所以要加上%00
最后payload:

O:4:"Name":3:{s:14:"%00Name%00username";s:5:"admin";s:14:"%00Name%00password";i:100;}

提交得到flag


免責聲明!

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



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