來自外部的威脅 - XXE漏洞攻擊成因
於去年底公布的 OWASP 2017 Top 10 中,新加入的重大風險分別是:XML 外部實體注入的風險、不安全的反序列化及不充分的記錄及監控。上次的專欄介紹的是不安全的反序列化,這次我們針對 XML 外部實體注入做介紹。以下會先簡單介紹什麼是 XML,接著帶入 XXE 的成因,並以簡單的範例展現它會造成的危害。
What is XML
XXE Injection 的全名是 XML External Entity Injection,因此,在介紹 XXE 之前,先來簡單介紹一下什麼是 XML 和它的用途。
XML 是一個純文件型態的檔案格式,目的就是將 data 以簡單的格式儲存,方便 data 在不同平台間傳遞、儲存、共享等。
XML 檔案有兩個特徵:DTD 及 XML Schema,在此特別介紹所謂的 DTD,Document Type Definition,文件類型定義,用來宣告網頁的文件類型。舉例來說,HTML 有很多版本,如:HTML, HTML2.0, ... , XHTML, XHTML5 等,利用 <!DOCTYPE> 讓瀏覽器能正確顯示內容,如下圖:
DTD 還可以宣告以下四種:元素 (Elements)、屬性 (Attribute)、實體 (Entities)及註解 (Comments) 。其中的實體 (Entities)就是 XML External Entity Injection 中的 Entity,接下來就開始介紹 XXE Injection 吧。
What is XXE Injection
XXE Injection,全名 XML eXternal Entity Injection,XML 外部實體注入。會發生 XXE 主要是因為 parser 沒有禁止使用外部實體,意思是我們可以自行定義一個實體名稱,並在實體內容中定義要伺服器做的行為,因此注入點通常是可以輸入 XML 的位置。
假設一個簡單網站頁面,要求輸入一個暱稱,輸入後發現他是以 XML 格式傳遞資料:
那也許可以嘗試將 body 做出以下變化:
自己額外宣告一個實體 xxe,目的是輸出本機資料夾中的密碼檔,並將原本丟出暱稱的位置更改成實體名稱,沒有禁止解析外部實體的狀況下就會獲得:
以上是一個最基本的 XXE Injection 範例。
然而,一個 XXE 風險,並不只有造成 Local File Inclusion 一個危害,讓我們來修改一下 payload:
這樣就成功的使伺服器訪問指定的外部網站,表示也可以造成RCE (Remote Code Execute)。
同理,也可使伺服器訪問外網無法訪問的內部系統,便可達成 SSRF (Server-Side Request Forgery, 服務請求偽造)。
還有個利用 XXE 達成的攻擊手法 - Billion Laugh Attack,其 payload 如下:
由伺服器的 CPU 得知,它造成的結果就是有名的 DoS (Denial-of-service)啦!
結論
由上述可見,XXE Injection 並不是一個結果,可以說它是一個成因,因為網站含有 XXE 風險,會造成如洩漏敏感資訊、RCE、SSRF、DoS 等結果。
預防 XXE 其實並不難,完整的禁止使用外部實體,parser 就不會處理攻擊者自行宣告之 entity,即可防止 XXE Injection 的發生。以 PHP 為例,在程式碼中加入 libxml_disable_entity_loader(true); 即可防止 parser 處理外部實體。
其他訊息


社交工程是什麼?被攻擊該如何防範?5大資安攻擊和防範手法一次知!
2018/06/15
企業需要用到CDN嗎?3分鐘快速瞭解CDN架構、用途和優點!
2018/06/15
AWS是什麼?AWS雲端服務類型、優勢和使用方式一次瞭解!
2018/06/15
DevOps和SRE差在哪?DevOps的4大優勢和相關服務推薦一次看!
2018/06/15
如何做好雲端安全防護?推薦這6大雲端資安健診方法一次看!
2018/06/15
IDC是什麼?我適合用嗎?挑選IDC機房3個重點和注意事項一次懂!
2018/06/15
全新登場!阿里雲 CAPTCHA 服務,給您頂級安全防護與用戶體驗
2018/06/15
什麼是DDoS攻擊?一次教你如何做好DDoS防護,保護你的網站!
2018/06/15
如何提升網站效能優化?推薦5個改善網站速度的方法一次看!
2018/06/15
雲端遷移成功關鍵因素
2018/06/15
SOC它到底是什麼?它對資安有什麼作用?對於SOC資訊安全監控的功能與優勢有哪些?
2018/06/15
精準運維,一站監控:探索騰訊雲可觀測平台的強大功能
2018/06/15
Page Speed網頁速度如何加快?四種方法教你如何改善網站速度!
2018/06/15
果核 2024 首發 Hacker Talk 論壇, 破解資安求職與無人機資安盲點
2018/06/15
如何定義開源軟體&套件?3分鐘快速搞懂第三方套件的授權模式!
2018/06/15
雜貨店也能數位轉型?食品零售商如何透過公有雲優化商務呢
2018/06/15
騰訊雲CCN雲聯網 手把手配置 高效穩定企業跨境全球互聯
2018/06/15
【2024最新】公司企業的3款最佳Devops工具,成功案例一次看!
2018/06/15
使用CDN安全嗎?CDN如何達到基本防護功能呢?
2018/06/15
我用的APP安全嗎?會被竊個資嗎?3分鐘快速檢查手機APP資安!
2018/06/15
如何確保做好企業資訊安全?這4大DDoS防護方法,推薦學起來!
2018/06/15
發現手機被追蹤怎麼辦?注意 這十大被駭徵兆,手機資安恐不 保!
2018/06/15
如何加快網站速度?影響網速的要件及升級指南
2018/06/15
Vertex AI 和 Workbench 語言模組實戰,打造有人性的客服小幫手
2018/06/15
我的 AWS實例啟用失敗,應該怎麼做?
2018/06/15
果核 2023 最終場駭客論壇,探討網站風險、原碼檢測盲點與 Crypto 黑暗面
2018/06/15
DDOS流量清洗是什麼?可以阻擋攻擊嗎?DDOS防禦方法一次看!
2018/06/15
Devops是什麼?推薦企業一次看懂Devops定義、流程及優缺點!
2018/06/15
如何做好資安防護?3個APP資安檢測工具、費用及功能一次看!
2018/06/15
CDN廠商怎麼選?中華電信CDN、Cloudflare及Multi CDN大評比!
2018/06/15
如何檢測iOS、Android手機資安?4招檢測方法預防詐騙&駭客!
2018/06/15
Google Cloud 引領潮流,擴大企業級生成式 AI的應用範疇,開創無限可能!
2018/06/15
果核邀請專家獻策,破解惡意後門與車載資安盲點
2018/06/15
企業為什麼要上雲?用途為何?盤點上雲5大優勢和費用解析!
2018/06/15
可自建CDN嗎?和供應商差在哪?兩者優缺點和供應商挑選一次懂!
2018/06/15
優化數據處理體驗:探索騰訊雲 EdgeOne 邊緣計算新境界
2018/06/15
我該如何選擇最適合 AWS EC2 實例?
2018/06/15
企業如何挑選合適的雲端服務?公有雲、私有雲差異比較總整理
2018/06/15
技術專欄_運用AWS Network Firewall控制 Workspaces
2018/06/15
弱點掃描工具有哪些?5款免費、付費弱點掃描工具優缺點分析!
2018/06/15
如何設定網站CDN?推薦公司企業使用CDN加速的4大原因!
2018/06/15
如何應對邊緣節點的網路攻擊?在 CDN 邊緣節點建立防護系統!
2018/06/15
如何測試網站安全?OWASP工具測試弱點掃描的功能服務解析!
2018/06/15
如何防禦DDoS攻擊?推薦這4大DDoS防護方法,避免網站被駭!
2018/06/15
Google Cloud 初學者指南:我該將服務運行在哪呢?
2018/06/15
果核串聯執法機關、資安廠商與風險顧問引導企業降低遇駭危機
2018/06/15
企業需要SOC資安監控嗎?如何評估?看懂SOC監控的5大功能!
2018/06/15
Multi CDN是什麼?為什麼要融合CDN?其應用方法與原理一次知!
2018/06/15
如何利用CDN內容傳遞網路讓網站加速?4大優勢與趨勢分析!
2018/06/15
DDoS攻擊怎麼防禦?DDoS攻擊手法與資安供應商挑選一次搞懂!
2018/06/15
為什麼網站速度慢?和網頁設計有關嗎?速度慢會造成什麼影響?
2018/06/15
如何提升企業雲端防護力-Cloud Armor
2018/06/15
果核 2023 首發論壇,揭示藍隊能力升級、 開發/資安磨合的奧妙心法
2018/06/15
2021 OWASP Top 10 A09資安紀錄與監控失效
2018/06/15
2021 OWASP Top 10 A10伺服器請求偽造
2018/06/15
安全防護:Web Application Firewall 設定教學
2018/06/15
主動追蹤 AWS 「資源用量」,避免配額用盡造成任務失敗
2018/06/15
我的網站慢嗎?如何檢測讓網站加速?新手必知 5 項網站優化指南!
2018/06/15
阿里雲訪問控制與權限設置教學
2018/06/15
該怎麼選擇 GCP Disk ?
2018/06/15
AWS-WorkSpaces雲端桌面服務 (下集)
2018/06/15
SOC 是什麼?SOC 資訊安全監控 v.s NOC 網路操作中心的差異?
2018/06/15
2021 OWASP Top 10 A08軟體及資料完整性失效
2018/06/15
OWASP前10大A07認證及驗證機制失效,瞭解如何修補及預防!
2018/06/15
2022 果核 Hacker Talk 漂亮收尾, 解構開發模式、弱點檢測之安全盲點
2018/06/15
CDN 內容傳遞網路是什麼?其運作的原理及用途為何?
2018/06/15
SOC 資訊安全監控中心是什麼?4 項功能服務與優勢一次知!
2018/06/15
如何提高網站的速度,為中國用戶提供可靠的體驗?
2018/06/15
如果AWS訪問密鑰暴露怎麼辦?記住這4步驟一定要先做起來!
2018/06/15
快速上手打造專屬直播平台
2018/06/15
2021 OWASP Top 10 A06易受攻擊和已淘汰的組件
2018/06/15
果核Hacker Talk傳授企業資安設計要訣,並探索IoT資安風險化解之道
2018/06/15
HACKER TALK - 常被遺漏的開發測試環境如何面對駭客迎擊? 弱點掃描是否足夠阻擋駭客攻擊? 今年最後一場論壇,精彩議程不容錯過!
2018/06/15
資安弱點掃描v.s滲透測試,差異在哪?3分鐘看優缺點與流程!
2018/06/15
智慧戰情室能夠帶給企業什麼好處?一次瞭解其功能與特點!
2018/06/15
我該如何選擇最適合的阿里雲 ECS 實例?
2018/06/15
收到 AWS Abuse Report,該怎麼辦?
2018/06/15
AWS-WorkSpaces雲端桌面服務 (上集)
2018/06/15
公司網站速度慢怎麼辦?4 大網站速度慢原因,與自我檢測方法一次看
2018/06/15
智慧戰情室能夠帶給企業什麼好處?一次瞭解其功能與特點!
2018/06/15
什麼是公有雲?公有雲安全嗎?適合哪種企業使用?
2018/06/15
2021 OWASP Top 10 A05 Security Misconfiguration 安全設定缺陷
2018/06/15
2021 OWASP Top 10 A04 不安全設計
2018/06/15
雲端WAF是什麼?WAF應用程式防火牆6點效益,提升網站安全防護力!
2018/06/15
網站該建置雲端WAF嗎?如何運用WAF保護您的網站應用程式!
2018/06/15
2021 OWASP Top 10 A03 Injection 的攻擊
2018/06/15
多層式安全防護機制教學!運用 Anti-DDoS、WAF、CDN 和 Cloud Firewall 鞏固線上業務
2018/06/15
2021 OWASP Top 10 A02加密機制失效的問題
2018/06/15
【企業案例】《今日新聞》融合CDN技術,網站流量成長 50%
2018/06/15
2021年OWASP Top 10新規範,有效補強企業資安機制缺陷!
2018/06/15
Hack Talk駭客論壇,深度剖析ICS攻擊與Windows提權威脅!
2018/06/15
源碼檢測是什麼?動態&靜態的弱點掃描測試有什麼不同?
2018/06/15
OWASP Top 10 2021 十大常見的弱點與風險,如何做好企業資安防護?
2018/06/15
網站速度太慢怎麼辦,速度也會影響到網站的轉換率嗎?
2018/06/15
內容傳遞網路(CDN)提供哪些服務?Alibaba Cloud CDN如何?
2018/06/15
SSTI惡意指令注入防不勝防,面對駭客惡意攻擊,要如何戒備與防範?
2018/06/15
2021最大資安漏洞!修補方式一次完整揭露
2018/06/15
「負載平衡」是什麼意思?網站加速與負載平衡也有關嗎?
2018/06/15
企業安全合規5式,做好DDOS防護提升您的網絡安全策略!
2018/06/15
線上學習網站速度太慢怎麼辦?透過CDN達到網站加速!
2018/06/15
遇到DDoS駭客攻擊怎麼辦?一站式的雲端安全管理有用嗎?
2018/06/15
如何提升網站速度及效能?推薦先搞懂動態v.s靜態網站的差 異!
2018/06/15
網站在中國速度很慢?中國網站加速的CDN內容傳遞最佳實務!
2018/06/15
什麼是滲透測試?從網路資安看Client-Side Template Injection
2018/06/15
手機更新後銀行帳密全被盜!小心Flubot惡意軟體入侵
2018/06/15
APP資安防禦不可輕忽!最新手遊作弊修改器GameGuardian!
2018/06/15
飛馬間諜軟體讓駭客監控你的手機!不點連結就能自動感染
2018/06/15
什麼是幸運破解器Lucky Patcher?不得不正視的APP資安問題!
2018/06/15
從零基礎學破解的駭客工具 Magisk Root, 看懂駭客攻擊如何操作!
2018/06/15
新型Android安卓駭客破解工具Mhook出現!當心被手機駭客攻擊!
2018/06/15
什麼是ApkCrack?3步驟瞭解駭客工具並完美預防駭客攻擊!
2018/06/15
預防駭客行動詐騙!看懂App網路資訊安全「原始碼加密」技術!
2018/06/15
支付、網銀金融App安全嗎?你必知的白帽App資安漏洞分析!
2018/06/15
手機被駭怎麼辦?5分鐘一次教你破解Mobile App駭客攻擊手法!
2018/06/15
App手機行動裝置的Xposed軟件攻擊模式,該如何防禦網路資安?
2018/06/15
什麼是Web Cache?3分鐘快速帶你瞭解Web Cache的功能及使用方式!
2018/06/15
如何防範網站速度的延遲及停機?看國外在特賣期間是如何做到的!
2018/06/15
常見手機APP駭客工具-FRIDA,預防你的網站遭受駭客攻擊!
2018/06/15
注意!行動裝置App資安檢測最需要注意「防記憶體偵測」技術!
2018/06/15
要如何預防駭客攻擊?6步驟教你如何提升網路資安的安全性!
2018/06/15
網路詐騙手法!釣魚信件、釣魚網站的社交工程駭客常見3手法!
2018/06/15
來自外部的威脅 - XXE漏洞攻擊成因
2018/06/15
JAVA世界中不安全的反序列化風險
2018/06/15
API 安全問題探討
2018/06/15
駭客工具的氾濫VS企業所面對的資安威脅
2018/06/15
會員、個人資料外洩怎麼辦?4個預防資料外洩方法一次看懂!
2018/06/15
嚇!手遊資安危機 數小時恐喪失上億營收
2018/06/15
Pokemon Go越紅公司損失越大! 歷時兩年開發,上市不到72小時就被駭
2018/06/15
注意!金融業已成為駭客攻擊目標,4個防範手機App的資安威脅!
2018/06/15
準行政團隊Line國事作法急轉彎,準經長受命客製臺版即時通
2018/06/15
從Google Play下載App保證安全!? 資安業者:超過100款惡意程式會偷資料、點擊詐騙
2018/06/15
網銀App漏洞 金管會關注
2018/06/15
Google釋出Nexus Android 4月份更新,一次修補近40項漏洞
2018/06/15
Android逆向之旅---靜態分析技術來破解Apk
2018/06/15
Xcode Ghost事件說明及處理建議
2018/06/15
NEW-【第一季資安報告】加密勒索軟體感染翻兩倍;行動惡意威脅App突破500萬大關!
2018/06/15
Critical GHOST vulnerability affects most Linux Systems
2018/06/15