MicrosoftExchangeAutodiscover设计和实现漏洞导致严重的凭据泄露攻击,数十万个Windows域凭据被泄露。Autodiscover是MicrosoftExchange用来自动配置Exchange客户端应用程序(如Outlook)的工具。研究人员发现了Exchange自动发现协议中的一个设计缺陷,该缺陷可能导致向自动发现域公开Web请求。配置邮件客户端时,用户需要配置:用户名,密码;邮件或交换服务器的主机名或IP地址。在某些特殊情况下,还需要进行其他配置。本文介绍基于POXXML协议的Autodiscover的实现。用户在Outlook中加入一个新的exchange帐户后,用户将收到一个弹出窗口,要求输入用户名和密码:MicrosoftOutlookAutomaticAccountSetup用户输入信息后,Outlook将使用Autodiscover来配置客户端。如下图:MicrosoftOutlook的自动账户设置过程在后台Autodiscover的过程中:(1)客户端会分析用户输入的邮箱地址——amit@example.com;(2)客户端会尝试根据用户的邮箱地址定位账户构造AutodiscoverURL:https://Autodiscover.example.com/Autodiscover/Autodiscover.xmlhttp://Autodiscover.example.com/Autodiscover/Autodiscover。xmlhttps://example.com/Autodiscover/Autodiscover.xmlhttp://example.com/Autodiscover/Autodiscover.xml如果上述URL均未响应,Autodiscover将启动退避过程。Back-off机制是漏洞泄露的关键,因为它会尝试解析域名的Autodiscover部分,这意味着它尝试构建的下一个URL是http://Autodiscover.com/Autodiscover/Autodiscover。xml。即,拥有Autodiscover.com的用户会收到所有无法到达原始域名的请求。自动发现“后退”过程滥用泄漏为了分析自动发现泄漏场景的可行性,研究人员购买了以下域:Autodiscover.com.br–巴西Autodiscover.com.cn–中国Autodiscover.com.co–哥伦比亚Autodiscover.es–SpainAutodiscover.fr–FranceAutodiscover.in–IndiaAutodiscover.it–ItalyAutodiscover.sg–SingaporeAutodiscover.uk–UnitedKingdomAutodiscover.xyzAutodiscover.online然后将这些域名分配给网络服务器并等待来自不同自动发现的网络终端询问。随后,研究人员收到了大量来自不同域名、IP地址和客户端的请求。相对路径/Autodiscover/Autodiscover.xml的一些请求的授权头中包含HTTP基本认证的凭证信息。HTTPGET请求示例从日志信息可以看出,hostname是Autodiscover客户端尝试认证的域名,还包括认证使用的用户名和密码:2021-05-1803:30:45W3SVC1实例-210.142.0.4GET/Autodiscover/Autodiscover.xml–80–HTTP/1.1Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro)–-4040213833012652021–05–1803:30:52W3SVC1instance-210.142.0.4GET/Autodiscover/Autodiscover.xml–80–HTTP/1.1Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro)––4040213833012962021–05–1803:30:55W3SVC1instance-210.142.0.4GET/Autodiscover/Autodiscover.xml–80–HTTP/1.1Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro)––4040213832963282021–05–1803:31:19W3SVC1instance-210.142.0.4GET/Autodiscover/Autodiscover。xml–80–HTTP/1.1Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft+Outlook+16.0.13901;+Pro)–404021383306234有意思的是,客户端在发送认证请求前并没有检查资源是否存在。3月25日期间通过这种方式获取了大量凭证信息:更多攻击信息请见:https://www.guardicore.com/labs/autodiscovering-the-great-leak/本文翻译自:https://www.guardicore.com/labs/autodiscovering-the-great-leak/
