微軟 Exchange Autodiscover設計和實現漏洞引發嚴重憑證泄露攻擊,數十萬Windows域憑證泄露。
Autodiscover是Microsoft Exchange用來自動配置outlook這類Exchange客戶端應用的工具。研究人員發現 Exchange Autodiscover協議存在設計漏洞,會引發到Autodiscover域的web請求泄露。
在配置郵件客戶端時,用戶需要配置:
- 用戶名、密碼;
- 郵件或exchange服務器的hostname或IP地址。
在一些特殊情況下,還需要進行其他的配置。本文介紹基于POX XML協議的 Autodiscover實現。用戶在outlook加入一個新的exchange賬戶后,用戶會收到一個彈窗要求輸入用戶名和密碼:
Microsoft Outlook自動賬號設置
用戶輸入信息后,outlook會使用 Autodiscover來配置客戶端。如下所示:
Microsoft Outlook自動賬號設置過程
在后臺Autodiscover工作過程中:
(1) 客戶端會分析用戶輸入的郵件地址——[email protected];
(2) 客戶端會嘗試基于用戶的郵件地址來構造Autodiscover URL:
- https://Autodiscover.example.com/Autodiscover/Autodiscover.xml
- http://Autodiscover.example.com/Autodiscover/Autodiscover.xml
- https://example.com/Autodiscover/Autodiscover.xml
- http://example.com/Autodiscover/Autodiscover.xml
如果以上URL都沒有回應,Autodiscover就會開始back-off過程。Back-off機制是泄露漏洞的關鍵,因為它會嘗試解析域名的Autodiscover 部分,也就是說下一個嘗試構造的URL是
http://Autodiscover.com/Autodiscover/Autodiscover.xml。即擁有Autodiscover.com的用戶會收到所有無法達到原始域名的請求。
Autodiscover "back-off"過程
濫用泄露
為分析 Autodiscover泄露場景的可行性,研究人員購買了以下域名:
- Autodiscover.com.br – Brazil
- Autodiscover.com.cn – China
- Autodiscover.com.co – Columbia
- Autodiscover.es – Spain
- Autodiscover.fr – France
- Autodiscover.in – India
- Autodiscover.it – Italy
- Autodiscover.sg – Singapore
- Autodiscover.uk – United Kingdom
- Autodiscover.xyz
- Autodiscover.online
隨后將這些域名分配給一個web服務器,并等待不同Autodiscover終端的web 請求。隨后,研究人員收到了大量來自不同域名、IP地址和客戶端的請求。其中部分請求相對路徑/Autodiscover/Autodiscover.xml的authorization header中含有HTTP 基本認證的憑證信息。
HTTP GET請求示例
從日志信息可以看出,hostname是Autodiscover客戶端嘗試認證的域名,還包括了認證使用的用戶名和密碼:
- 2021–05–18 03:30:45 W3SVC1 instance-2 10.142.0.4 GET /Autodiscover/Autodiscover.xml – 80 – HTTP/1.1 Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro) – -404 0 2 1383 301 265
- 2021–05–18 03:30:52 W3SVC1 instance-2 10.142.0.4 GET /Autodiscover/Autodiscover.xml – 80 – HTTP/1.1 Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro) – –404 0 2 1383 301 296
- 2021–05–18 03:30:55 W3SVC1 instance-2 10.142.0.4 GET /Autodiscover/Autodiscover.xml – 80 – HTTP/1.1 Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro) – –404 0 2 1383 296 328
- 2021–05–18 03:31:19 W3SVC1 instance-2 10.142.0.4 GET /Autodiscover/Autodiscover.xml – 80 – HTTP/1.1 Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro) – –404 0 2 1383 306 234
有趣的是客戶端在發送認證的請求前并不會檢查資源是否存在。
研究人員在2021年4月16日-2021年8月25日期間通過這種方式獲取了大量的憑證信息:
更多關于攻擊的信息參見:https://www.guardicore.com/labs/autodiscovering-the-great-leak/
本文翻譯自:https://www.guardicore.com/labs/autodiscovering-the-great-leak/
原文地址:https://www.4hou.com/posts/w7jr