帝國CMS(EmpireCMS) v7.5配置文件寫入漏洞分析


帝國CMS(EmpireCMS) v7.5配置文件寫入漏洞分析

一、漏洞描述

該漏洞是由於安裝程序時沒有對用戶的輸入做嚴格過濾,導致用戶輸入的可控參數被寫入配置文件,造成任意代碼執行漏洞。

二、漏洞復現

1、漏洞出現位置如下圖,phome_表前綴沒有被嚴格過濾導致攻擊者構造惡意的代碼

  

2、定位漏洞出現的位置,發現在/e/install/index.php,下圖可以看到表名前綴phome_,將獲取表名前綴交給了mydbtbpre參數。

  

3、全文搜索,$mydbtbpre,然后跟進參數傳遞,發現將用戶前端輸入的表前綴替換掉后帶入了sql語句進行表的創建,期間並沒有對前端傳入的數據做嚴格的過濾

  

  

4、創建表的同時將配置數據和可以由用戶控制的表前綴一起寫入到config.php配置文件

  

5、通過對整個install過程的代碼分析,可以發現沒有對用戶數據進行過濾,導致配置文件代碼寫入。

5.1、burp對漏洞存在頁面進行抓包,修改phome參數的值,構造payload,payload如下:

‘;phpinfo();//

5.2、在burp中的phome參數的值中輸入特殊構造的payload

  

6、查看config.php配置文件,發現成功寫入配置文件

  

7、再次訪問安裝結束的頁面, http://192.168.10.171/empirecms/e/install/index.php?enews=moddata&f=4&ok=1&defaultdata=1

  

8、構造特殊的payload getshell

  

9、菜刀連接,成功getshell

  

 

 

 

----------------------------------------------------------------------------------------------------------------------

參考資料:https://qclover.github.io/2018/10/10/EmpireCMS_V7.5%E7%9A%84%E4%B8%80%E6%AC%A1%E5%AE%A1%E8%AE%A1.html


免責聲明!

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



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