首页
/ NanaZip项目中的Zstandard解压问题分析与修复

NanaZip项目中的Zstandard解压问题分析与修复

2025-05-22 17:42:27作者:吴年前Myrtle

问题背景

近期,7-Zip项目中发现了一个编号为CVE-2024-11477的技术问题,该问题影响使用Zstandard压缩算法的文件解压过程。由于NanaZip是基于7-Zip开发的衍生项目,用户自然关心NanaZip是否也受到此问题影响。

问题影响范围分析

通过对NanaZip各版本的代码审查,可以确定:

  1. 受影响版本

    • NanaZip 3.5 Preview 0 (3.5.1000.0)
    • NanaZip 3.0 Update 1 (3.0.1000.0)
    • NanaZip 3.5 Preview 0 (3.5.996.0)
    • NanaZip 3.0 (3.0.996.0)
  2. 不受影响版本

    • NanaZip 3.1 (3.1.1080.0)及更高版本
    • 更早的版本(使用不同的Zstandard解压实现)

技术细节

该问题源于Zstandard解压算法实现中的缓冲区处理不当。特殊构造的压缩文件在解压过程中可能触发内存越界写入,可能导致程序异常。

值得注意的是,NanaZip在Release构建中禁用了动态代码生成功能,这在一定程度上降低了问题的潜在影响,使得即使存在问题也难以被利用来执行非预期操作。

修复方案

NanaZip团队采取了以下措施:

  1. 将核心代码更新至7-Zip 24.08主线版本,该版本已修复此问题
  2. 发布了NanaZip 5.0 (5.0.1250.0)正式版,确保所有用户都能获得更新

对于使用Microsoft Store安装的用户,NanaZip会自动更新到新版本,无需手动干预。

用户建议

  1. 使用NanaZip 3.1或5.0及更高版本
  2. 避免在生产环境中使用Preview预览版本
  3. 通过官方渠道保持软件更新

总结

NanaZip团队及时响应技术挑战,通过版本更新解决了Zstandard解压中的问题。用户只需确保使用最新稳定版本即可获得安全保障。这也体现了开源项目在技术响应方面的优势——能够快速集成上游修复并发布更新。

登录后查看全文
热门项目推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
860
511
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
259
300
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
596
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K