零比特:当EDR网速慢到还不如断网"

admin 2026-10-20 20:44:18 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

cover_image

零比特:当 EDR 网速慢到还不如断网

幻泉之洲

2026年6月8日 09:16
北京

在小说阅读器读本章

去阅读

把 EDR 的网速限制到每秒 8 比特——这是一个什么概念?相当于让一个骑自行车的人扛着一整栋写字楼赶路。本文提出一种新的 EDR 断网思路:不封端口、不丢包,而是用系统自带的服务质量策略,把 EDR 进程的带宽压到几乎为零。这种方式操作在比防火墙更底层的位置,留下的痕迹也更少。文末附带了 EDRChoker 工具的完整演示。

EDR 断网这件事

云时代的 EDR,本质上是一个和服务器保持长连接的客户端。检测能力、响应指令、日志回传,全靠这条通道。一旦通道断了,终端上的 agent 就变成了瞎子。攻击者手里能做什么,大家心里都清楚。

断开 EDR 连接,过去主要靠两招:Windows 防火墙规则,或者 Windows 过滤平台。Windows 防火墙本质上也跑在 WFP 之上——它能针对任意进程设置出站阻断,只要你有本地管理员权限。

微软对自己的核心安全进程做了保护。比如 MsMpEng.exe,你想用防火墙规则把它拦下来,系统层面会直接拒绝。这不奇怪,操作系统防的就是这种自残式操作。

WFP 这条路更精细一些。FwpmFilterAdd0 这个 API 可以直接编程注册网络过滤器,EDRSilencer 这类工具打得就是这个点。问题是留下了痕迹。包被丢弃这件事,EDR 自己会记录,Elastic 甚至为 WFP 层面的规避行为专门写了检测规则[1]。

你打断了它的腿,它还能喊一声。这就是问题。

换个思路:不拦你,让你慢到死

Windows 有一套基于策略的服务质量控制机制,叫做 Policy-based QoS。你通过组策略或者 PowerShell,可以给特定程序、端口、协议设定一个绝对的出站带宽上限。

一行命令就能设置:

New-NetQosPolicy -Name \"FTP\" -AppPathNameMatchCondition \"ftp.exe\" -ThrottleRateActionBitsPerSecond 1MB -PolicyStore ActiveStore

实测最小可以设到每秒 8 比特。注意,是比特,不是字节。换算一下,一秒传 1 个英文字母都勉强。

带宽低到这个程度会发生什么?一个现代 TLS 握手大概消耗多少数据,我们来算笔账。

Client Hello 大约 150 到 500 字节,Server Hello 加密钥交换再要 100 到 500 字节。大头是证书链——一张 RSA-2048 或 ECDSA 签名的证书带上公钥,体积不小;如果站点发下来 3 到 4 张中间证书凑成完整链,光这个环节就能吃掉 3000 到 8000 字节,甚至更多。最后再补上各约 100 字节的 Finished 验证消息。一次完整的 TLS 握手,少则 3、4 KB,多到 10 KB 以上,属于常态。

现在你把应用限到每秒千里挑几个字节。握手需要交换好几 KB 的证书——在 8 bps 的带宽下,光传输这些证书就得几个小时。没有哪台服务器会等你这么久。大多数应用程序和 API 都设置了严格超时,2 到 5 秒握手没完成,直接判定丢包,连接超时。

所以不用封你。把你网速掐到 8 bps,你自己就会不停地超时、断开、重试、再超时。效果和断网没有区别,但方式完全不同。

pacer.sys 的位置优势

这个方案真正有意思的地方,在于 QoS 数据包调度器运行在比 WFP 更底层的位面。

看数据从应用层往下走的路线:应用生成数据 → tcpip.sys 打包成 TCP/IP 帧 → WFP 在这一层和 tcpip.sys 紧挨着,执行规则检查、路径匹配、防火墙操作 → 数据离开内核进入 NDIS 层 → pacer.sys 以 NDIS 轻量过滤驱动的身份截获原始以太网帧,紧贴着物理网卡的小端口驱动 → 数据从网卡出去。

pacer.sys 待在 NDIS 这一层。WFP 在第三层,pacer.sys 在第五层。越贴近硬件,控制力越强。现在市面上阻断 EDR 的工具,普遍只能摸到 WFP 那层。

这就意味着:如果你在 pacer.sys 的层级动手,EDR 只要不主动检查 QoS 策略,就不知道自己已经废了。

EDRChoker:实操一把

基于上面的思路,我写了个小工具 EDRChoker[2]。它读取 EDR 进程名单,为每个进程创建一个 QoS 策略,带宽限制是每秒 8 比特。就这么多。

两个模式:Install 模式接收一个进程名列表文件,批量创建策略;Remove 模式不带参数运行,清掉之前安装的所有策略。

每条策略用进程名拼上一个随机 GUID 来命名,确保每台机器、每次跑出来的规则名都不一样。而且这些策略在 Windows 重启后依然生效。

我在 Elastic Defend 上测了一下。策略创建完,Elastic 客户端直接和服务器失联。

清理也一样简单,直接跑 EDRChoker,所有东西恢复原状。

现实环境里你不知道目标机器装的哪个 EDR,所以最佳做法是把所有 EDR 的名字都列进名单里,一次全堵上。

视频演示:https://youtu.be/hj05mT-45bo

这事怎么防

需要服务器连接的 EDR,生来就有这么一个软肋:连不上服务器,能力就大幅缩水,管理员从这台终端上收不到日志,也下发不了指令。

以前搞断 EDR 的路子,基本就是防火墙和 WFP 两条。这两层都还不够\"低\",做不到对任意进程的可靠阻断,还会在 WFP 日志里留下记录。

而 pacer.sys 蹲在离网卡最近的地方,对数据包的控制力天然更强。EDRChoker 利用基于策略的 QoS,把 EDR agent 的带宽拖到人类想象力的下限——代理程序每次尝试建连,都会被低到反人类的带宽拖到超时。

防守方可以做的事情:定期审计终端上的 QoS 策略;关注 PowerShell 审计日志和 Windows 事件日志,追踪策略创建事件和进程带宽限制的应用记录。最核心的一点——盯着那些在攻击者拿到管理员权限之前就会触发的事件。真到了能跑 EDRChoker 那一步,事情已经很难看了。


参考资料

[1] https://www.elastic.co/guide/en/security/8.19/potential-evasion-via-windows-filtering-platform.html

[2] https://github.com/TwoSevenOneT/EDRChoker

[3] https://www.zerosalarium.com/2026/06/edrchoker-choking-telemetry-stream-block-edr.html


随着人工智能的兴起,银行为大规模裁员奠定基础" 网络安全文章

随着人工智能的兴起,银行为大规模裁员奠定基础"

文档探讨人工智能在银行业的应用导致大规模裁员趋势,多位银行高管承认AI将削减岗位,尤其影响初级分析师和行政类职位。当前AI主要用于客户服务、交易监控等场景,但法律风险与就业结构性变化引发争议。部分银行通过再培训缓解冲击,但毕业生招聘规模已显著收缩。
傻瓜式Codex接入DeepSeek指南" 网络安全文章

傻瓜式Codex接入DeepSeek指南"

本文提供将DeepSeek接入Codex的详细操作指南,通过安装CCSwitch工具实现API路由切换,具体步骤包括工具安装、模型添加、密钥配置和路由设置,最终成功在Codex中调用DeepSeek模型进行开发工作。
Encoder、Decoder和Encoder-Decoder的区别" 网络安全文章

Encoder、Decoder和Encoder-Decoder的区别"

本文系统解析了Transformer架构中encoder、decoder和encoder-decoder三类核心结构的区别,指出其关键在于信息流动方式、注意力范围和任务目标的差异。encoder采用双向注意力,适合文本理解与表征任务,典型模型为BERT;decoder采用因果注意力,专长自回归文本生成,典型模型为GPT系列;encoder-decoder则结合两者,适用于序列到序列转换任务如翻译和摘要,典型模型为T5和BART。文章还解释了当前生成式大模型多采用decoder-only架构的原因,并总结了
评论:0   参与:  0