極客大挑戰 2019 PHP

2022-04-16 02:49:16 字數 930 閱讀 8908

要點:私有變數序列化是使用:/0+類名+/0+變數名來區分私有

這道題前端小哥哥得加雞腿

0x00

剛開啟時頁面沒有任何東西,一般使用dirseach來跑目錄,由於提示**備份,掃秒到的www.zip十分可疑,訪問得到原始碼。

index.php的php部分

<?php

include 'class.php';

$select = $_get['select'];

$res=unserialize(@$select

); ?>

class.php

<?php

include 'flag.php';

error_reporting(0);

class

name

function

__wakeup()

function

__destruct()

if ($this->username === 'admin')

else

}}?>

還有個flag.php,flag明顯在裡面,但是怎麼可能這麼輕易看到

從index.php可以得出來上傳select引數進行反序列化,所以我們要通過構造序列化讀取flag

<?php

class

name

}$a = new name('admin', 100);

var_dump(serialize($a

));?>

得到

string(77) "o:4:"name":2:"

注意nameusername只有12個字元,還有兩個是/0.所以最後是

select=o:4:"name":3:

不加%00反序列化就會出錯。

極客大挑戰 2019 PHP

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

極客大挑戰 2019 PHP

剛進入 我們可以看到這樣的乙個介面 根據內容提示,有備份 的習慣 日常後台掃瞄,發現有www.zip檔案,我們進行解壓得到 看到flag.php開啟檢視,發現沒有什麼有用的資訊。我們開啟index.php看看 我們可以看到通過get方式傳入引數select,並對引數select進行反序列化。接下來,...

極客大挑戰 2019 PHP

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