前言
在某次紅隊測試時發(fā)現(xiàn)了jeecg框架,原本可以通過session泄露進入后臺一把索,但創(chuàng)宇盾注定給這場測試增加了困難度。
jeecg
首先在一個tomcat頁面下面進行目錄掃描,發(fā)現(xiàn)/xxx/ 目錄,仔細探測發(fā)現(xiàn)為jeecg框架。

image.png
順利發(fā)現(xiàn)druid中存在session泄露。

image.png
修改cookie登錄系統(tǒng)。

image.png
可獲取722個管理用戶和密碼。

image.png
通過網(wǎng)上公開上傳漏洞測試發(fā)現(xiàn)存在創(chuàng)宇盾。

image.png
嘗試各種繞過方法均未突破。
審計zip漏洞
基于這種的思路就是需要找一個漏洞既可以shell也能繞過創(chuàng)宇盾,一邊下載審計代碼一邊想著這個思路。
果然發(fā)現(xiàn)了一個zip壓縮和解壓的代碼。如果可以通過zip壓縮的方式將木馬解壓出去,創(chuàng)宇盾應該不會檢測到。
通過cgformTemplateController控制器調(diào)用uploadZip方法上傳一個zip。

image.png
而后doAdd方法調(diào)用了removeZipFile方法,里面存在解壓操作

image.png

image.png
unzip 方法沒有過濾../../,可以跳出目錄。

image.png
繞過創(chuàng)宇盾
打包一個zip文件,將木馬放在其中。解壓的時候利用../跳轉(zhuǎn)到指定目錄。

image.png
為了繞過創(chuàng)宇盾在zip文件頭部填入臟字符。

image.png

image.png
成功上傳。返回一個zip文件名
再通過doAdd方法解壓該文件。

image.png
成功shell。

image.png
總結(jié)
通過分析代碼存在zip解壓漏洞,可用于繞過創(chuàng)宇盾是一種不錯的思路。