通过杀软 avast 及 no-defender 工具分析 Windows 防护机制
内容提要
Windows Defender已发展为端点检测和响应软件,成为Windows安全体系的一部分。安全研究员es3n1n分享了开源工具no-defender,通过逆向分析Avast杀毒软件提取关键组件,实现完全关闭Defender。no-defender工具修改Avast的运行逻辑,调用Windows Security Center注册杀毒软件的逻辑,实现Defender的自动关闭。
延伸解读
第三方杀软接管机制的原理
Windows安全中心通过wscsvc服务协调杀毒软件状态。当第三方杀软注册后,Defender会自动退出。no-defender逆向Avast的wsc.dll,复用其与安全中心通信的RPC逻辑,向系统报告一个虚拟杀软已运行,从而触发Defender关闭。这揭示了Windows安全体系依赖第三方注册状态来调整策略的设计。
传统关闭Defender方法的失效原因
文章列举了多种关闭Defender的方案,如组策略、注册表修改、服务停止等,但大多已失效。Windows逐步加码防护,即使临时关闭实时保护,Defender也会自动恢复。安全模式下损坏二进制虽可永久关闭,但具有侵入性和破坏性。这反映了微软强化Defender作为系统核心组件的趋势。
no-defender的技术实现与局限
no-defender通过hook Avast的wsc.dll关键函数,如CreateFileW和queue_worker,模拟RPC请求向安全中心注册杀软。它需要构建powrprof.dll并注册服务。但工具因影响Windows安全策略被DMCA下架。其实现依赖特定Avast版本,且wsc.dll无关闭服务逻辑,需重启或主动退出,存在稳定性和兼容性限制。
Q&A
Windows Defender的主要功能是什么?
Windows Defender已发展为端点检测和响应软件,成为Windows安全体系的一部分。
no-defender工具是如何工作的?
no-defender工具通过逆向分析Avast杀毒软件,提取关键组件并修改其运行逻辑,从而实现完全关闭Defender。
关闭Windows Defender的常见方法有哪些?
常见方法包括临时关闭实时保护、添加排除文件夹、组策略和注册表修改等,但大多数方案已失效。
Avast与Windows安全中心之间是如何通信的?
Avast通过wscsvc服务与Windows安全中心通信,注册杀毒软件状态并调整安全策略。
no-defender工具的代码实现包含哪些关键部分?
no-defender工具的代码实现包括hook CreateFileW和queue_worker函数,以向Windows安全中心报告杀毒软件状态。
关闭Defender的方案为什么会失效?
由于Windows安全体系的层层加码,许多关闭Defender的方案都存在局限性或直接失效。