Bombadil-Systems/zombie-zip

GitHub: Bombadil-Systems/zombie-zip

利用ZIP压缩方法字段声明与实际数据不匹配的技术,规避主流杀毒引擎检测的文件格式混淆研究项目。

Stars: 113 | Forks: 25

# Zombie ZIP 一种可规避 98% 杀毒引擎的 ZIP 格式混淆技术。 **CVE-2026-0866** | [VU#976247](https://kb.cert.org/vuls/id/976247) | 发布于 2026 年 3 月 10 日 ## 技术原理 创建一个满足以下条件的 ZIP 文件: ``` Compression Method = 0 (STORED) Actual data = DEFLATE compressed CRC-32 = Checksum of uncompressed payload ``` ``` AV Engine: Reads Method 0 → Scans compressed noise → No detection Attacker: Ignores Method field → Decompresses as DEFLATE → Recovers payload ``` ## 检测结果 |文件 |技术 |VirusTotal | |-------------------|----------|------------------------------------------------------------------------------------------------------------| |baseline.zip |有效 ZIP |55/67 | |method_mismatch.zip|Zombie ZIP|[1/66](https://www.virustotal.com/gui/file/7316a4c3cd1cf183925ab4b7e77dbf52b38180ee1faf0156d7ea410f42cb5e76)| 98% 规避率。相同的 Payload。相同的字节。不同的容器。 ## 快速测试 ``` # 生成 Zombie ZIP python3 zombie_zip.py # 上传 method_mismatch.zip 到 VirusTotal # 观察到 1/51 的检出率,对比 baseline 的 55/67 # 以编程方式恢复 payload python3 loader_poc.py method_mismatch.zip # 输出字节完全相同的 EICAR (SHA-256: 275a021b...) ``` ## 文件 zombie_zip.py - 生成脚本 method_mismatch.zip - 预生成的 EICAR PoC baseline.zip - 用于对比的有效 ZIP loader_poc.py - 演示程序化 Payload 恢复 ## 工作原理 AV 引擎信任 ZIP 的 Method 字段。当 Method=0 (STORED) 时,它们将数据作为原始未压缩字节进行扫描。但数据实际上是 DEFLATE 压缩的 —— 因此扫描器看到的是压缩噪音,找不到特征签名。 CRC 被设置为未压缩 Payload 的校验和,这产生了额外的校验和不匹配,导致标准解压工具 (7-Zip, unzip, WinRAR) 报告错误或解压出损坏的输出。 然而,一个忽略声明方法并强制按 DEFLATE 解压的专用加载器可以完美恢复 Payload。loader_poc.py 演示了这一点 —— 仅需六行标准 zlib 代码。 该漏洞的本质是扫描器规避:安全控制断言“不存在恶意软件”,而恶意软件确实存在且可被攻击者工具轻易恢复。 ## 攻击向量 这不是终端用户解压漏洞。这是一种分阶段投递/走私技术: 1. 恶意 Payload 封装在 Zombie ZIP 中 2. ZIP 穿越安全边界(邮件网关、网络扫描器、终端 AV) 3. 扫描器读取 Method=0,扫描压缩噪音,报告“干净” 4. 加载器或释放器通过程序化解压 Payload 5. Payload 显现并执行 这与既定的恶意软件投递模式(ISO 走私、HTML 走私、CAB 滥用)一致,攻击者使用自定义加载器而非普通解压工具。 ## 受影响方 - VirusTotal 上 50/51 的 AV 引擎 - Microsoft Defender, Avast, Bitdefender, ESET, Kaspersky, McAfee, Sophos, TrendMicro 等。 - 仅金山 (Kingsoft) 检测到了它 ## 先前技术 - **VU#968818** (CERT/CC, 2004):规避 AV 的畸形 ZIP 压缩包 - **CVE-2004-0935**:通过畸形 ZIP 头绕过 ESET Anti-Virus - 本技术在同一漏洞类别中展示了一种新的原语(Method 字段去同步化) ## 作者 Chris Aziz - Bombadil Systems ## 许可证 MIT - 仅限授权安全研究。
标签:CVE-2026-0866, DAST, DEFLATE压缩, DNS 反向解析, ESC8, ZIP格式混淆, 免杀技术, 反病毒规避, 恶意软件分析, 数据隐藏, 文件格式解析, 暴力破解检测, 社会工程学, 解析器差异化, 逆向工具, 静态检测绕过