Duomicms變數覆蓋

2021-10-05 05:59:04 字數 1119 閱讀 4523

由於是第一次搞這個 ,不是很懂。。

所以 思路是參考這位博主的

首先去了解一下變數覆蓋漏洞的原理:

變數覆蓋漏洞是指可以用我們自定義的引數值替換程式原有的變數值,從而產生漏洞。大多都是由於函式使用不當導致,經常導致變數覆蓋漏洞的函式有:extract()函式、parse_str()函式、import_request_variables()函式等

跟著博主搞了一遍

這裡的是變數覆蓋漏洞是duomiphp\common.php檔案的$$變數覆蓋漏洞

去看這個變數覆蓋要滿足的條件:

傳參不為空,然後正規表示式的內容是不能有cfg_和globales,不能有cookie的值傳參

利用session變數的賦值方法來把某些特定的資訊儲存

在另乙個檔案admin.manger.php 中可以發現如果是管理員那麼他的groupid 應該為1

先登陸普通使用者獲取session 然後獲取管理員session,對比後構造session,將管理員session的值綁給普通使用者。

那麼就要在有漏洞的comment.php利用變數覆蓋構造:comment.php?_session[duomi_group_id]=1&_session[duomi_admin_id]=1&_session[duomi_admin_name]=admin

然後訪問管理員後台,就會自動登入

關於變數覆蓋

由於private變數受訪問許可權的限制,它不能被覆蓋。屬性的值取父類還是子類並不取決於我們建立物件的型別,而是取決於我們定義的變數的型別 既 等號前面的型別 friendly protected和public修飾符並不影響屬性的覆蓋。靜態變數和靜態常量屬於類,不屬於物件,因此它們不能被覆蓋。常量可...

變數覆蓋漏洞

變數覆蓋指的是可以用我們自定義的引數值替換程式原有的變數值 經常引發變數覆蓋漏洞的函式有 extract parse str 和import request variables 函式 一 使用函式不當 1.extract 函式 該函式有三種情況會覆蓋掉已有變數 第一種情況是第二個引數為extr ov...

extract 變數覆蓋

php extract 函式從陣列中把變數匯入到當前的符號表中。對於陣列中的每個元素,鍵名用於變數名,鍵值用於變數值。下面是php的超級全域性變數,可以了解乙個特性,全是陣列。gl obal s,所有 全域性變數 陣列g lo bals 所有全 局變數數 組 server,伺服器環境變數陣列 ge ...