es3n1n 开发的开源工具,主要用于绕过或对抗 Windows Defender(现称为 Microsoft Defender)的检测机制,尤其是在渗透测试、红队操作或安全研究的背景下。
⚠️ 重要提示:该工具可能被用于规避杀毒软件检测,因此在合法合规的渗透测试或安全研究之外使用可能涉及法律和道德风险。请仅在授权范围内使用。
🔍 项目简介(基于公开信息)
项目名称:defendnot
作者:es3n1n
语言:主要使用 Python 和 PowerShell
目标:绕过 Microsoft Defender 对恶意载荷(payload)的检测,实现更隐蔽的攻击载荷投递。
🧰 主要功能与特点
绕过 Defender 的 AMSI(Antimalware Scan Interface)
利用已知漏洞或技巧(如反射调用、内存 patch、混淆等)禁用或绕过 AMSI 扫描。
例如:通过修改
amsi.dll的内存结构或调用AmsiScanBuffer时打补丁,使其返回AMSI_RESULT_CLEAN。PowerShell 脚本混淆与免杀
提供自动化脚本对 PowerShell 恶意命令进行编码、加密或混淆,避免被 Defender 的启发式引擎识别。
可能使用 Base64 编码 + 变形、字符串拆分、动态执行(如
IEX)等技术。载荷生成与封装
集成或支持生成免杀的
.exe、.ps1或.dll文件,用于 Cobalt Strike、Metasploit 等框架的 Beacon 载荷。可能使用反射加载、Loader 技术将 shellcode 注入内存,避免磁盘写入。
自动化工具链
提供脚本一键完成:载荷生成 → 混淆 → 编码 → 生成可执行文件或命令行。
持续更新对抗机制
作者可能定期更新绕过方法,以应对 Microsoft Defender 的新版本检测规则。
🛠️ 技术原理(常见手法)
AMSI Bypass:利用 PowerShell 中的漏洞(如未打补丁的 .NET 反射调用)绕过扫描。
CLR 加载器:通过 C# 编写的 loader 在内存中加载 .NET 程序集,避免写入磁盘。
Shellcode 注入:使用
VirtualAlloc+CreateThread或CreateRemoteThread将加密 shellcode 注入进程。签名绕过(可能):使用合法签名的二进制文件进行 DLL 劫持或侧加载(但该项目可能不直接提供)。
⚠️ 使用场景与风险
📚 参考与类似项目
AMSI.fail:收集各种 AMSI 绕过技巧。
Cortana、UnDefender:其他绕过 Defender 的开源工具。
Veil-Evasion:早期免杀载荷生成框架。
🔚 总结
defendnot 是一个面向红队和安全研究人员的工具,旨在帮助测试 Microsoft Defender 的防御能力。它通过混淆、内存注入、AMSI 绕过等技术,实现对恶意行为的隐藏。然而,这类工具极易被滥用,使用时必须遵守法律法规和道德准则。
