netero1010 的 EDRSilencer
netero1010/EDRSilencer: A tool uses Windows Filtering Platform (WFP) to block Endpoint Detection and Response (EDR) agents from reporting security events to the server. (github.com)
是一种工具,它利用 Windows 筛选平台 (WFP) 阻止 EDR 代理通过添加 IPv4 和 IPv6 WFP 出站阻止规则(需要管理员访问权限)将其事件数据发送到其服务器。这很糟糕,因为大多数防御者严重依赖来自 EDR 的事件数据来执行其操作任务。在这篇博客中,以下是一些指标,如果 EDR 事件数据流由于任何安全事件(例如红队或威胁参与者)而被“阻止”,我们可以选择这些指标。
事件日志
像往常一样,安全事件日志包含与 WFP 相关的事件,现在我们重点关注 WFP 阻止事件,即 EID 和5152
5157
但是,默认情况下不启用它,因为启用它可能会导致事件泛洪,从而导致性能问题。
相关视频教程
恶意软件开发(更新到了155节)
此审核有一个缺点,因为一旦 EDRSilencer 添加了 WFP 规则以阻止 EDR 进程的出站连接,它就不会立即从 EDRSilencer 记录 WFP 筛选器规则添加事件。仅当用户执行任何文件(例如 Laucnhing mimikatz.exe)时,才会记录这些 WFP 事件,这些文件将触发 EDR 将事件数据发送到其服务器。
上面的屏幕截图是事件 EID 和 WFP 规则阻止的出站连接(我的环境中没有 EDR,所以我只是使用它作为示例🤣)5157
5152
msmpeng.exe
感谢 Soren 的博客,MDE 代理还有另一个事件日志,即 Microsoft-Windows-SENSE/Operaping,它将记录从 MDE 到服务器的任何失败连接作为 EID 。可能不同的 EDR 会有不同的方法来记录此类事件。
Netsh
我们还可以利用命令来获取 WFP 事件的形式。netsh wfp show netevents
xml
正如我们在 中看到的,标签中的字符串是格式的,而标签是标签中字符串的十六进制表示。netevents.xml
<asString>
UTF16-LE
<data>
<asString>
WFPExplorer
zodiacon 的 WFPExplorer 是一个可以查找 WFP 对象的 GUI 工具。查找 ,我们可以在那里找到来自 EDRSilencer 的硬编码过滤器名称。Filters
Custom Outbound Filter
请注意,WFPExplorer 中的字节与 ( tag) 中的 App ID 匹配ALE App ID
netviews.xml
<appId> > <data>
防火墙日志
防火墙日志还包含一些有用的信息(Src和Dest IP,数据包大小等),以支持进一步支持存储在安全事件日志中的事件。
与 WFP 事件日志相同,默认情况下,Windows 防火墙不会记录这些数据包丢弃事件。我们必须根据我们使用的网络配置文件启用它。
启用后,任何丢弃的数据包都将被登录Log dropped packets
%systemroot%system32logfilesfirewallpfirewall.log
注册表项
可以在服务注册表项中找到 EDRSilencer 的 WFP 筛选器数据,该注册表项位于Base Filtering Engine (BFE)
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesBFEParametersPolicyPersistentFilter
来自夸克实验室的一些关于wfp的额外阅读。
Host Events
EDRSilencer 必须加载 才能将 EDR 进程传递到 WFP 筛选器函数(相关代码)中。因此,从理论上讲,加载过程仍将通过 EDR 获取日志。msmpeng.exe
但是,对于调查人员来说,这只是一个线索,表明 EDR 进程已加载。
成功后,我们可以看到 中的事件,一旦禁用了 WFP 阻止规则,到服务器的事件数据流就会恢复正常 ( & )。但是,此部分在 EDR 中不可见,因为 WFP 阻止规则已应用于 EDR 进程。TCP Disconnect
msmpeng.exe
TCP Send
TCP Receive
希望这篇简短的博客文章有助于并记住检查 IPv4 和 IPv6 WFP 规则。
原文始发于微信公众号(安全狗的自我修养):EDRSilencer事件取证
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论