[CTF刷題篇]攻防世界Web進階之unserialize3 Writeup

前言

有了之前的PHP反序列化漏洞實例復現姿勢詳解這篇文章,終於不用再畏懼反序列化了,而且遇見這種題型甚至有一絲小興奮,畢竟可以檢驗這段時間的學習了!

分析

創建環境,訪問題目中給的url:
在這裏插入圖片描述
很明顯,這題就考了2個點:

`反序列化`
`魔術函數__wakeup()的繞過`

附:繞過__wakeup()的姿勢:
__wakeup 觸發於 unserilize() 調用之前, 當反序列化時的字符串所對應的對象的數目被修改, __wake 的函數就不會被調用. 並且不會重建爲對象

首先,我們構造111的反序列化字符串
詳情請移步:PHP反序列化漏洞實例復現姿勢詳解
在這裏插入圖片描述
得到序列化後的字符串:

O:4"xctf":1:{s:4:"flag";s:3:"111"}

在這裏插入圖片描述
然後結合前文提到的繞過姿勢,將對象數目修改構造payload:

O:4"xctf":2:{s:4:"flag";s:3:"111"}

然後以get方式提交即可:
在這裏插入圖片描述
OK,成功得到了flag!

結語

但行好事,莫問前程.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章