freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

基于Suricata实现域渗透主动防御
2020-09-20 14:35:36

最近在做域加固相关的事情,对于dcsync的攻击一直没找到解决办法,直接从防火墙做端口阻断也不是一个很好的解决方案,偶然想起Suricata具有IPS功能,经过以下测试可以完美符合要求,甚至之后的一些高级网络攻击,通过防火墙不能做到很好防护的情况下,都可以通过Suricata内联IPS来解决。

一、Windows 安装Suricata

Windows 版Suricata 要实现IPS功能需要安装WinDivert ,具体编译&安装步骤可参考https://suricata.readthedocs.io/en/suricata-4.1.3/setting-up-ipsinline-for-windows.html,我这边直接用的是Suricata已经编译好二级制安装包,这个安装包已经将WinDivert集成进去了,下载地址:https://www.openinfosecfoundation.org/download/windows/Suricata-6.0.0-beta1-1-64bit.msi。在安装Windows Suricata之前需要先安装WinPcap包,不过这个项目目前已经停止维护了,我们可以用npcap来替代,下载地址:https://nmap.org/npcap/dist/npcap-0.9997.exe

安装成功后,启动方式和Linux的一样:

# 192.168.111.128这个IP地址是我Windows域控的IP地址
# --service-install 将启动命令注册为服务,方便后面的自启动
suricata.exe -c suricata.yaml -s signatures.rules -i 192.168.111.128 --service-install

image.png

配置Suricata规则文件为自定义规则文件,因为我们这边的场景是使用Suricata作为IPS加固域控服务器,所以我们的规则只针对于域控。

image.png

将myself.rules放在规则文件夹中

image.png

启动Suricata服务

二、实际使用——解决dcsync攻击

首先解释如何检测dcsync攻击,dcsync攻击本身是利用了Windows的DRS(目录复制服务),而目录复制服务使用的是MS-DRSR(目录复制远程协议),MS-DRSR协议是基于dcerpc的,其UUID为e3514235-4b06-11d1-ab04-00c04fc2dcd2

正常情况下MS-DRSR通常会出现在域控服务器之间用来复制和管理活动目录中数据,排除原、目的为域控服务器之后,就可以看出异常。

Suricata 规则如下:

alert dcerpc any any -> any any (msg: "DCShadow"; flow: established; dce_iface: e3514235-4b06-11d1-ab04-00c04fc2dcd2; dce_opnum: 5; sid: 7000776; rev: 1;)

在实际情况下需要在Suricata的yml文件中配置域控服务器变量,然后在规则中进行排除,这里为了演示方便,直接源目的都设置为any。

在mimikatz中执行以下命令

lsadump::dcsync /domain:contoso.com /user:administrator /csv /all

Suricata 告警:

image.png

规则测试没有问题,现在需要将规则由alert模式转变为drop模式

drop tcp any any -> any any (msg: "DCShadow"; dce_iface: e3514235-4b06-11d1-ab04-00c04fc2dcd2; sid: 7000776; rev: 1;)

现在开启Suricata IPS/inline 模式,进行阻断,启动命令为:

suricata -c suricata.yaml -s signatures.rules --windivert true

1600583819_5f66f88b8c7b0bb8b5565.png!small

之后在mimikatz中使用相同命令,发现dcsync已经失败

image.png

告警文件中也出现相应告警:

1600583600_5f66f7b0a1deb5394e71f.png!small

由此引申,在出现新的针对于域控的高危漏洞时,如果来不及打补丁,可以先使用Suricata指定检测规则,对异常流量进行阻断,来保护域控,前提是规则要尽量准确。

# Suricata # 域渗透
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者