微软 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) 客户端会分析用户输入的邮件地址——amit@example.com;
(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日,研究人员-20218月25日,通过这种方式获得了大量的凭证信息:
更多关于攻击的信息见:https://www.guardicore.com/labs/autodiscovering-the-great-leak/
本文翻译自:https://www.guardicore.com/labs/autodiscovering-the-great-leak/