下面通過一個CTF靶場賽場景的覆盤,來展示如何從信息蒐集到獲得flag的過程。
1.環境信息
Windows 7.
PHPstudy 2018(開啟目錄遍歷)。
DedeCMS(織夢CMS,未開啟會員註冊)。
2.解題步驟
通過訪問網站,根據觀察和Wappalyzer的提示(見圖1和圖2),我們可以發現這是搭建在Windows上的DedeCMS,訪問默認後臺目錄發現是404,見圖3。
圖1
圖2
圖3
這時我們可以聯想到DedeCMS在Windows服務器上存在後臺目錄爆破漏洞(漏洞成因在這裡不過多敘述,讀者可以自行查閱),我們在本地運行爆破腳本,得到目錄為zggga111,見圖4。
但是經過測試,我們發現其關閉了會員註冊功能,也就意味著我們不能利用會員密碼重置漏洞來重置管理員密碼。我們應該怎麼辦?其實,在DedeCMS中,只要管理員登錄過後臺,就會在data目錄下有一個相應的session文件,而這個題目恰好沒有關閉目錄遍歷,見圖5。所以我們可以獲得管理員的session值,通過editcookie修改Cookie,從而成功進入後臺,見圖6。
然後在模板的標籤源碼碎片管理中插入一段惡意代碼,即可執行任意命令,見圖7和圖8。
圖4
圖5
圖6
圖7
圖8
3.總結
這個例子可以反映信息蒐集的重要性,體現在如下兩方面。
一是服務器的信息,針對Windows服務器,大概率意味著我們去尋找CMS在其上的一些漏洞。
二是在不知道密碼和無法重置的情況下,通過CMS網站本身的特性,結合目錄遍歷來實現最後的RCE(Remote Command/Code Execute,遠程命令/代碼執行)。
最新評論