PHP程式碼審計之漫畫CMS

最近一直在學習程式碼審計的相關課程,也在找一些通用的CMS在練習,剛好在安全群裡認識了一位志同道合的道友,於是就一起研究學習,前期還是不怎麼太會,所以也一直兩個人相互傳授經驗和交流,不過還好經過不斷的奮戰和努力終於出來了第一個洞,以下是相關步驟詳情,請各位大佬批評指正:

1、這個CMS是PHP採用路由方式開發,前期總是找不到類和函式的呼叫地方,找了兩天才有所發掘,找到sys/apps/controller/admin/backups。php檔案的下圖語句存在漏洞;

PHP程式碼審計之漫畫CMS

2、當url中存在restore_save時,即可繞過管理員登陸驗證,直接訪問網站後臺資料庫管理介面;

PHP程式碼審計之漫畫CMS

3、可備份資料庫所有檔案,並且下載訪問

http://127。0。0。1/admin。php/backups?restore_save在備份和下載時需要post:table=mc_admin和get:?restore_save同時傳參;

PHP程式碼審計之漫畫CMS

4、備份成功後,下載時由於本人學藝不精,無法破解加密過程,但是可以透過還原備份時的路徑獲取dir的值,從而下載資料庫備份檔案;

PHP程式碼審計之漫畫CMS

5、訪問

http://127。0。0。1/admin。php/backups/restore/?restore_save;點選剛剛備份的資料庫目錄,開啟burp抓包,點選還原

PHP程式碼審計之漫畫CMS

6、可以看到dir目錄加密後的值已經出來 7、再訪問

http://127。0。0。1/admin。php/backups/zip/restore?restore_save

post傳參剛剛抓到的post資料,也就是dir加密之後的值 get傳參?restore_save即可下載剛剛備份的資料,影響巨大,可以整站資料打包下載 總結,無論是程式碼審計還是挖洞,都要有不拋棄不放棄的精神才能有所突破,這也是成長階段必須的過程。加油!!!!(注:該漏洞已提交給廠商,目前已修復)

該貼來源於火線zone社群:

https://zone。huoxian。cn/d/520-phpcms