跳转到内容

7-Zip

本页使用了标题或全文手工转换
维基百科,自由的百科全书
(重定向自7-zip
7-Zip
7-Zip在Windows 10运行的截图
7-Zip在Windows 10运行的截图
原作者伊戈尔·帕夫洛夫英语Igor Pavlov (programmer)
开发者伊戈尔·帕夫洛夫英语Igor Pavlov (programmer)
首次发布1999年7月18日​(25年前)​(1999-07-18
当前版本
  • 24.09(2024年11月29日;稳定版本)[1]
编辑维基数据链接
源代码库 编辑维基数据链接
编程语言C++
操作系统Microsoft Windows
Linux
MacOS
语言87种语言
类型数据压缩
许可协议 编辑维基数据链接
网站7-zip.org 编辑维基数据链接

7-Zip是一个开放源码数据压缩程序,主要在Microsoft Windows操作系统Unix-like的操作系统(如LinuxFreeBSD)可以使用7-zip的移植版本p7zip[锚点失效]。它提供命令行接口的程序与图形用户界面的程序,而且可以与资源管理器结合。7-Zip是自由软件,由伊戈尔·帕夫洛夫英语Igor Pavlov (programmer)于1999年开始开发,并把主体在GNU LGPL下发布;加密部分,使用高级加密标准(AES)的代码,使用BSD许可证发布;解压RAR部分,使用RAR特定的许可协议。在2007年获得SourceForge.net的社区票选为“最佳技术设计”及“最佳项目”两个奖项。

7z压缩格式

[编辑]

7-Zip预设的格式是其自行开发的7z格式,扩展名为.7z。7z格式包含多种算法,最常使用的就是Bzip2以及作者伊戈尔·帕夫洛夫开发的LZMALZMA算法比起其他常见的传统压缩算法,如Zip、RAR来说相对较新,压缩率也比较高。7z格式支持Unicode,且将其默认用于存储文件名称,可以避免不同系统、语言环境间压缩解压乱码的问题。除7-Zip外,目前流行的压缩程序也大多支持此格式,如WinRARPeazip等。[2]

其他支持的格式及运算方式

[编辑]

7-Zip支持众多的压缩/未压缩的文件格式,包含ZIPCABRARARJZgzipbzip2LLHAtarcpioRPM。从4.42版开始支持CD/DVD映像档格式ISO,另外因为著作权问题不再支持ACE。从7-Zip 9.14测试版开始,7-Zip可以开启和解压缩VHD

特性

[编辑]
  • 7-zip文件本身功能众多:
    • 256位AES加密
    • 多线程压缩与解压缩
    • LZMA(2)压缩强度远高于ZIP DEFLATE,速度和压缩强度稍高于RARv3。
    • 支持动态文件大小压缩(分卷压缩),应对备份至移动媒体如CDDVD十分有效
  • 支持FAR Manager插件
  • 支持79种语言(含英文、中文(简体、繁体)、日文、韩文)
  • 相对于需付费的WinRARWinZip,提供更多文件类型解压支持,如exe段读取。
  • 7-Zip有能力建立自解压缩包(SFX)
    • WinRAR和基于7-Zip LZMA SDK的HaoZip都提供向导式自解压前端,而7-zip不支持。
  • 7-Zip有能力解压缩错误文件名的压缩包,必要时,可以重命名文件
  • 7-Zip支持 Descript.ion风格的文件注释
  • 注意:设置所有用户的文件类型关联时,需要管理员权限(右键管理员权限打开)。

版本

[编辑]

从4.65版本之后,7-Zip采用了与Ubuntu等一些项目的相同做法。改为使用年份来增加版本号,第一个使用新版本号发行的版本为9.04 Beta。

2010年11月18日后,7-Zip版本号为9.20。

自2015年起,7-Zip再度使用年份作为主版本号。

分支

[编辑]

p7zip是移植到POSIX/Unix-like系统的7-Zip软件,可以压缩解压7z格式的文件。常用命令包括7z和7za,通过参数调整压缩解压设置。其支持的系统包括但不限于Linux内核的DebianFedoraGentoo Linux、AltLinux.org,非Linux内核的FreeBSDMac OS XiOS(越狱后可安装)、BeOSFreeDOSAmigaOS等。

但由于该项目从2016年以来已无继续维护达4~5年时间,因此2021年3月7-zip的原作者使用最新代码发行了官方的Linux版作为代替,提供了x64、x86、arm64、armhf四个硬件平台版本。[3]

安全问题

[编辑]

在7-Zip 16.03之前的版本中[4],自解压档案容易通过DLL劫持遭受任意代码执行攻击:如果UXTheme.dll与可执行文件位于同一文件夹中,它们会加载并运行该DLL[5][6][7]

18.05之前的7-Zip版本在从RAR档案提取文件的模块中包含一个任意代码执行漏洞 (CVE-2018-10115),该漏洞已于2018年4月30日修复[8]

23.0之前的版本还包含一个任意代码执行漏洞,已于2023年5月7日修复[9]。一年后,在 24.07之前的版本中发现了一个严重的远程代码执行漏洞(CVE-2024-11477),该漏洞于2024年11月20日修复[10]

24.09之前版本在处理带有MotW安全标记的压缩文件时,解压后的文件不会保留MotW标记,攻击者可绕过这个安全检查执行任意代码(CVE-2025-0411[11]。该漏洞已在2024年1月24日修复[12]

参见

[编辑]

参考资料

[编辑]
  1. ^ HISTORY of the 7-Zip. [2024年12月3日]. 
  2. ^ 存档副本. [2011-04-02]. (原始内容存档于2011-04-03). 
  3. ^ 7-Zip developer releases the first official Linux version. BleepingComputer. [2021-03-15]. (原始内容存档于2021-04-24) (美国英语). 
  4. ^ History of 7-zip changes. 7-Zip 20.02 alpha. 8 August 2020 [8 August 2020]. 
  5. ^ Kanthak, Stefan. Executable installers are vulnerable^WEVIL (case 7): 7z*.exe allows remote code execution with escalation of privilege. SecLists.org. 8 December 2015. 
  6. ^ Kanthak, Stefan. Executable installers are vulnerable^WEVIL (case 14): Rapid7's ScanNowUPnP.exe allows arbitrary (remote) code execution. SecLists.org. 22 December 2015. 
  7. ^ Hart, Jon. ScanNow DLL Search Order Hijacking Vulnerability and Deprecation. Rapid7.com. 21 December 2015. 
  8. ^ A Vulnerability in 7-Zip Could Allow for Arbitrary Code Execution. cisecurity.org. 2018-05-01. 
  9. ^ 7-Zip 7Z File Parsing Integer Underflow Remote Code Execution Vulnerability. zerodayinitiative.com. 2022-08-23. 
  10. ^ 7-Zip RCE Vulnerability Let Attackers Execute Remote Code. GBHackers Security | #1 Globally Trusted Cyber Security News Platform. 25 November 2024 [26 November 2024]. 
  11. ^ CVE-2025-0411 7-zip Mark-of-the-Web protection mechanism. vuldb.com. [2025-01-26]. 
  12. ^ 7-Zip Security Update Advisory (CVE-2025-0411). ASEC. 2025-01-23 [2025-01-26]. 

外部链接

[编辑]