近日Preempt研究小组发现了两个关键的微软漏洞,这两个漏洞都和三个NTLM中的逻辑漏洞有关,这些漏洞允许攻击者在任何Windows计算机上远程执行恶意代码,或对支持Windows集成身份验证(WIA)的任何web服务器(如Exchange或ADFS)进行身份验证。根据测试,目前所有 Windows 版本都会受到这两个漏洞的影响。更糟糕的是,这两个漏洞可绕过微软此前已部署的所有安全保护措施。
在允许的环境下,Kerberos是首选的认证方式。在这之前,Windows主要采用另一种认证协议——NTLM(NT Lan Manager)。NTLM使用在Windows NT和Windows 2000 Server(or later)工作组环境中(Kerberos用在域模式下)。在AD域环境中,如果需要认证Windows NT系统,也必须采用NTLM。较之Kerberos,基于NTLM的认证过程要简单很多。NTLM采用一种质询/应答(Challenge/Response)消息交换模式,下图反映了Windows2000下整个NTLM认证流程。中国菜刀
NTLM容易受到中继攻击,这允许攻击者捕获身份验证并将其转发到另一台服务器,从而使他们能够冒用经过身份验证的用户的特权在远程服务器上执行所有的操作。
NTLM Relay是Active Directory环境中最常见的攻击技术之一,在Active Directory环境中,攻击者先会攻击一台计算机,然后通过使用针对受感染服务器的NTLM身份验证向其他计算机扩展。
微软之前已经开发了几个缓解NTLM RELAY攻击的方法,但是研究人员发现这些方法都存在着以下缺陷:
1.基于消息完整性代码(MIC)字段确保攻击者不会篡改NTLM消息的措施:Preempt研究人员发现,只要绕过消息完整性代码(MIC)字段,攻击者就可以删除“MIC”保护并修改NTLM身份验证流中的各个字段,比如签名协商。
2.基于SMB会话签名防止攻击者发送NTLM身份验证消息来建立SMB和DCE/RPC会话的措施,Preempt研究人员发现,许攻击只要绕过SMB会话签名,就可以将NTLM身份验证请求转发到域中的任何服务器,包括域控制器,同时伪造一个签名会话来执行远程代码执行。如果转发的身份验证属于特权用户,则意味着整个域都能被攻击。
3.基于增强的身份验证保护(EPA)防止攻击者将NTLM消息转发到TLS会话的措施,Preempt研究人员发现,攻击者只要绕过身份验证保护(EPA),就可以修改NTLM消息来生成合法的通道绑定信息。这允许攻击者使用被攻击用户的特权连接到各种web服务器,并执行以下操作:通过中继到OWA服务器,读取用户的电子邮件;甚至通过中继到ADFS服务器,连接到云资源。
Preempt首席技术官Roman Blachman表示:
即使NTLM Relay是一项古老的技术,企业也无法彻底放弃对NTLM协议的使用,因为它会破坏许多应用程序。因此,它仍然给企业带来了巨大的风险,尤其是在不断发现新的漏洞的情况下,公司需要首先确保所有Windows系统都经过修补和安全配置。此外,公司可以通过获得网络NTLM可见性来进一步保护其环境。
在Preempt向微软公司披露了上述漏洞后,微软在6月11日的时候发布了CVE-2019-1040和CVE-2019-1019补丁来应对这些问题。
即使执行了这些修复,管理员还需要对某些配置加以更改,才能确保有效的防护。
保护策略
为了保护公司免受这些漏洞的攻击,建议管理员进行以下操作:
1.执行修补程序:确保为工作站和服务器打上了所需的补丁,要注意,单独的补丁是不够的,公司还需要进行配置更改,以便得到完全的保护。
2.配置更改:
2.1强制SMB签名:为了防止攻击者发起更简单的NTLM RELAY攻击,请务必在网络中的所有计算机上启用 SMB 签名。
2.2禁用NTLMv1:该版本相当不安全,建议通过适当的组策略来完全禁用。
2.3强制LDAP/S签名:为了防止LDAP中的NTLM RELAY攻击,在域控制器上强制LDAP签名和LDAPS通道绑定。
2.4强制实施EPA:为了防止NTLM在web服务器上被黑客用来发动中继攻击,强制所有web服务器(OWA、ADFS)只接受EPA的请求。
3. 减少NTLM的使用:因为即便采用了完整的安全配置,NTLM 也会比 Kerberos 带来更大的安全隐患,建议在不必要的环境中彻底弃用。
Windows NTLM安全协议漏洞史
其实早在2017年7月,安全公司 Preempt 专家就发现了 NTLM 协议存在两处关键漏洞,允许攻击者创建新域名管理员帐户、接管目标域名。奇热看片
调查显示,第一处关键漏洞涉及 NTLM 中继器内未受保护的 Lightweight Directory Access Protocol(LDAP)协议;而第二处 NTLM 漏洞影响 RDP Restricted-Admin 模式,允许攻击者在不提供密码的情况下远程访问目标计算机系统。