Exchange Autodiscover漏洞暴露10萬(wàn)Windows域憑證
微軟 Exchange Autodiscover設(shè)計(jì)和實(shí)現(xiàn)漏洞引發(fā)嚴(yán)重憑證泄露攻擊,數(shù)十萬(wàn)Windows域憑證泄露。
Autodiscover是Microsoft Exchange用來(lái)自動(dòng)配置outlook這類Exchange客戶端應(yīng)用的工具。研究人員發(fā)現(xiàn) Exchange Autodiscover協(xié)議存在設(shè)計(jì)漏洞,會(huì)引發(fā)到Autodiscover域的web請(qǐng)求泄露。
在配置郵件客戶端時(shí),用戶需要配置:
- 用戶名、密碼;
- 郵件或exchange服務(wù)器的hostname或IP地址。
在一些特殊情況下,還需要進(jìn)行其他的配置。本文介紹基于POX XML協(xié)議的 Autodiscover實(shí)現(xiàn)。用戶在outlook加入一個(gè)新的exchange賬戶后,用戶會(huì)收到一個(gè)彈窗要求輸入用戶名和密碼:
Microsoft Outlook自動(dòng)賬號(hào)設(shè)置
用戶輸入信息后,outlook會(huì)使用 Autodiscover來(lái)配置客戶端。如下所示:
Microsoft Outlook自動(dòng)賬號(hào)設(shè)置過(guò)程
在后臺(tái)Autodiscover工作過(guò)程中:
(1) 客戶端會(huì)分析用戶輸入的郵件地址——amit@example.com;
(2) 客戶端會(huì)嘗試基于用戶的郵件地址來(lái)構(gòu)造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都沒(méi)有回應(yīng),Autodiscover就會(huì)開(kāi)始back-off過(guò)程。Back-off機(jī)制是泄露漏洞的關(guān)鍵,因?yàn)樗鼤?huì)嘗試解析域名的Autodiscover 部分,也就是說(shuō)下一個(gè)嘗試構(gòu)造的URL是
http://Autodiscover.com/Autodiscover/Autodiscover.xml。即擁有Autodiscover.com的用戶會(huì)收到所有無(wú)法達(dá)到原始域名的請(qǐng)求。
Autodiscover "back-off"過(guò)程
濫用泄露
為分析 Autodiscover泄露場(chǎng)景的可行性,研究人員購(gòu)買了以下域名:
- 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
隨后將這些域名分配給一個(gè)web服務(wù)器,并等待不同Autodiscover終端的web 請(qǐng)求。隨后,研究人員收到了大量來(lái)自不同域名、IP地址和客戶端的請(qǐng)求。其中部分請(qǐng)求相對(duì)路徑/Autodiscover/Autodiscover.xml的authorization header中含有HTTP 基本認(rèn)證的憑證信息。
HTTP GET請(qǐng)求示例
從日志信息可以看出,hostname是Autodiscover客戶端嘗試認(rèn)證的域名,還包括了認(rèn)證使用的用戶名和密碼:
- 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
有趣的是客戶端在發(fā)送認(rèn)證的請(qǐng)求前并不會(huì)檢查資源是否存在。
研究人員在2021年4月16日-2021年8月25日期間通過(guò)這種方式獲取了大量的憑證信息:
更多關(guān)于攻擊的信息參見(jiàn):https://www.guardicore.com/labs/autodiscovering-the-great-leak/
本文翻譯自:https://www.guardicore.com/labs/autodiscovering-the-great-leak/