ZIP 是世界上最古老也最普遍的文件格式之一——你电脑上的几乎每一个压缩文件、Office 文档、Android APK、Java JAR 都用 ZIP 作为容器。但 USENIX Security 2025 的这篇论文发现:ZIP 格式规范本身存在大量模糊之处,导致不同编程语言的 ZIP 解析器对同一个文件可以产生不同的解读。
研究者开发了差分模糊器 ZipDiff,系统性地测试了 50 个 ZIP 解析器(覆盖 19 种编程语言)。结果:几乎每一对解析器之间都存在某种解析歧义。 他们总结了 14 种解析歧义类型(10 种是首次发现)。
这件事的严重性在于——当一个 ZIP 文件被两种不同的解析器解读为两种不同的内容时,攻击者就获得了一个"语义鸿沟"。例如:
- 绕过安全邮件网关:邮件附件被网关的 ZIP 解析器视为"安全",但用户的邮件客户端解压出了不同的、恶意的内容
- 欺骗 VS Code 扩展签名验证:扩展包看起来通过了签名检查,但实际加载了未签名的恶意代码
- 篡改已签名的 JAR 文件:Spring Boot 的签名验证通过,但实际执行的代码已经被篡改
论文通过这些漏洞获得了来自 Gmail、Coremail 和 Zoho 的漏洞赏金,以及三个 CVE(Go、LibreOffice、Spring Boot)。
核心洞见:当多个人读同一份"规范"各自实现时,规范中的每个模糊之处都是一个潜在的安全漏洞。
[My ZIP isn't your ZIP / USENIX Security 2025]
登录后可参与表态
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!
推荐
推荐
智谱 GLM-5 已上线
我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。
领取 2000万 Tokens
通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力