極客大挑戰 2019 PHP

2021-10-09 21:10:58 字數 950 閱讀 2913

剛進入**,我們可以看到這樣的乙個介面

根據內容提示,「有備份**的習慣」

日常後台掃瞄,發現有www.zip檔案,我們進行解壓得到

看到flag.php開啟檢視,發現沒有什麼有用的資訊。

我們開啟index.php看看

我們可以看到通過get方式傳入引數select,並對引數select進行反序列化。

接下來,檢視class.php

進行**審計

我們可以看到當username=admin&&password=100時,就可以獲得flag,但是我們需要先對其進行序列化。

但是當經過wakeup()函式時,username會被賦值成guest,使得無法輸出flag,所以我們還需要繞過wakeup()函式。

1.構造序列化

得到o:4:「name」:2:

2.繞過wakeup()函式

即o:4:「name」:3:

但是由於private宣告的字段為私有字段,只在所宣告的類中可見,在該類的子類和該類的物件例項中均不可見。因此私有欄位的欄位名在序列化時,類名和欄位名前面都會加上0的字首。

即o:4:「name」:3:

最後獲得flag

極客大挑戰 2019 PHP

開啟以後,是三個php原始碼,其中最重要的是class.php,如下 include flag.php error reporting 0 class name function wakeup function destruct if this username admin else 看了一下,這個...

極客大挑戰 2019 PHP

開啟後,按照提示找備份檔案 用御劍沒掃到東西,換個工具dirsearch 找到備份檔案 解壓檔案,檢視flag,假的。審計一下這幾個的 吧 flag.php裡的 flag 給了個值syc,好像沒啥用。外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳 img jirqepnc 1612329...

極客大挑戰 2019 PHP

這不反手就試試www.zip?class.php class name function wakeup function destruct if this username admin else 這裡要注意的是兩個變數都是private型 private 宣告的字段為私有字段,只在所宣告的類中可見,...