ZeroLogon漏洞防御指南

admin 2021年5月10日20:15:56评论304 views字数 2719阅读9分3秒阅读模式

关于Zerologon(CVE-2020-1472)漏洞

2020年9月11日,Secura研究员Tom Tomvoort发表了一篇文章,简要概述了Zerologon漏洞的相关情况。之后,微软提供了CVE-2020-1472漏洞的安全补丁,并指出,该漏洞是由于Netlogon的加密算法缺陷所致,攻击者可以利用该漏洞劫持企业服务器。通过该漏洞,攻击者能够为活动目录域控制器的计算机账户设置密码,然后,可以通过该密码从域控制器中获取凭证。Dirk-jan Mollema对这种攻击及其影响进行了全面的概述。下面,我们将针对Zerologon攻击给出相应的防御指导。我使用Benjamin Delpy的最新Mimikatz版本来执行攻击,并利用Samir Bousseaden在Splunk中的EVTX Samples来演示该攻击的检测技术。此外,我还将演示Sysmon以及网络/PCAP检测技术,以实施更加全面的检测。

攻击演示

虽然利用Zerologon漏洞的演示工具有多种,但在本文中,我们将演示如何通过最新的(截至本文撰写时)Mimikatz版本来利用该漏洞。首先,我们需要测试系统是否存在该漏洞:

ZeroLogon漏洞防御指南

如果存在该漏洞的话,我们就可以启动exploit了:

ZeroLogon漏洞防御指南

此时,我们将执行DCsync攻击,从域控制器中提取敏感数据。请注意,这种攻击会破坏域控制器的功能——请不要在没有适当的预防措施、批准和备份计划的情况下在生产环境中进行尝试。本文的测试是在虚拟机环境下进行的。

检测方法

事件码5805

正如Samir所指出的那样,当遭受Zerologon攻击时,将产生一个5805事件。该日志位于Windows主机的系统日志中;所以,为了查找这种类型的活动,可以执行如下所示的Splunk查询:

```
index=winlogs EventCode=5805
| table body,Name,dest

```

查询结果:

ZeroLogon漏洞防御指南

虽然在这个例子中,计算机名称明显被设置为mimikatz,但域名控制器的NETLOGON失败了,在这里,它被称为“Server2”,这才是最重要的。

事件码4624+4742

当执行该exploit时,会先触发事件码4624,然后触发事件码4724。在这里,我们将使用Samir提供的EVTX样本(链接如上)来执行以下查询:

```
index= [evtx_location] EventCode=4624 OR EventCode=4742
Account_Name=”ANONYMOUS LOGON”
| table name,MSADChangedAttributes,Source_Network_Address,Account_Name

```

从而得到以下结果:

ZeroLogon漏洞防御指南

我们可以看到,域控制器的计算机账户的密码被修改了,并且执行了一次成功的匿名登录。注意:在我们的(尽管具有一定的局限性)测试中,这两个事件并没有出现在测试域控制器上,所以,我们想深入研究一下这个检测逻辑。

Sysmon事件ID 3

Zerologon攻击的另一种检测技术是利用Sysmon NetworkConnect事件及其强大的规则语法。当Zerologon事件发生时,从攻击机器到受害者域控制器再到LSASS进程之间建立一个传入网络连接,我们可以使用以下Sysmon配置来监视该过程:

```
lsass.exe
false

```

然后,执行如下所示的Splunk查询:

``` index=sysmon RuleName=”Incoming LSASS NetworkConnect”
| table Protocol,Initiated,SourceIp,DestinationIp

```

结果如下所示:

ZeroLogon漏洞防御指南

这里我们可以看到,主机192.168.1.143是攻击机器,它与被攻击的域控制器192.168.1.156的LSASS进程建立了网络连接。注意:与任何Sysmon规则一样,也需要进行相应的调整以剔除误报和一般噪音。

利用Moloch检测漏洞

当然,在主机层之外,我们也可以通过数据包捕获技术来检测Zerologon攻击活动。虽然这里使用的是 Moloch Full Packet Capture工具,但这个检测逻辑也很有希望扩展到其他PCAP系统。如果我们考察该攻击的PCAP(这里已经生成了自己的PCAP,但如果你无法生成的话,可以使用Samir提供的PCAP),就会发现客户端凭证字段被置为全0:

ZeroLogon漏洞防御指南

我们可以借助于Moloch的Hunt功能在PCAP数据中寻找这些十六进制字节。当然,我们也可以通过protocols == dcerpc查询来告诉Moloch,仅查找RPC协议的流量数据:

ZeroLogon漏洞防御指南

填入000000000000000000ffff2f21220000c0后,我们就可以运行该hunt了,就这里来说,我们可以看到Moloch找到了7个符合我们的hunt逻辑的会话:

ZeroLogon漏洞防御指南

然后,我们可以打开该Hunt来查看数据。这里可以看到,Moloch是元数据的主宰,并会给我们的会话打上Hunt Names和Hunt ID的标签,以便进一步查询和透视。如果我们展开会话流量,就可以看到Zerologin攻击的网络活动:

ZeroLogon漏洞防御指南

小结

Zerologin漏洞应该引起高度重视,任何受该漏洞影响的系统都应该尽快打上补丁。为此,本文为读者详细介绍了如何使用本地Windows日志、Sysmon和PCAP为这个高危漏洞提供必要的检测指导。

参考资料

https://github.com/sbousseaden/EVTX-ATTACK-SAMPLES

Tweets by SBousseaden

https://github.com/gentilkiwi/mimikatz/releases

https://www.secura.com/blog/zero-logon

Tweets by _dirkjan

https://molo.ch/

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-1472

原文地址:https://www.lares.com/blog/from-lares-labs-defensive-guidance-for-zerologon-cve-2020-1472/

相关推荐: Vulhub系列之Lampiao

一、靶机地址:1.https://www.vulnhub.com/entry/lampiao-1,249/2.下载镜像直接用VMware打开即可。二、实验环境:1.攻击机:kali  IP:192.168.31.1282.靶机:IP  19…

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年5月10日20:15:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   ZeroLogon漏洞防御指南http://cn-sec.com/archives/246717.html