著名压缩软件 7-Zip 伪开源、不安全?

说到压缩解压软件相信大家都很熟悉「7-Zip」这款软件,它发布于 1999 年,使用了 LZMA / LZMA2 高压缩率算法,同时兼容支持打开 ZIP / RAR 等格式。并且完全免费、开源,同时也 “养活” 不了不少软件公司,因为很多压缩软件都使用了它的源码。

20220711

然而在最近有位 Paul 开发者试图抵制「7-Zip」软件,它表示这款软件存在三个问题,分别是:安全问题不完全开源作者是俄罗斯开发者。

不完全开源

这位 Paul 表示「7-Zip」因为源码没有托管在 Github 等任何公共代码托管平台上,只有在  Sourceforge 页面里能找到,并且没有提供信息,包括名称、提交者、文档说明等。

不过锋哥认为是不是这位开发者想编译源码,找不到开发文档,看不懂呢?哈哈。毕竟「7-Zip」基于 GNU LGPL 许可协议发布,加上不少解压软件都用了它的源码,所以肯定是完全开源的项目。

安全问题

这位 Paul 还表示「7-Zip」存在许多漏洞,例如之前爆出的提权漏洞 CVE-2022-29072 至今也仍未修复,明显存在安全隐患。以及指出安装程序似乎从未设置签名。

针对这个漏洞问题,锋哥还去搜了下,根据介绍由于 7z.dll 的错误配置和堆溢出,在 Windows 的「7-Zip」21.07 版本中,允许将 .7z 文件拖到 Help>Contents 区域时实现权限提升和命令执行。

20220711

虽然目前「7-Zip」作者还没有修复这个漏洞问题,不过解决方法也很简单:

  1. 删除安装文件中的 7-zip.chm 文件即可
  2. 只赋予读取和运行权限(适用于所有用户)

网友评论

这位 Paul 抵制「7-Zip」的文章在 Reddit 上引起了热议,抵制的理由让网友无法理解,当然也有不少网友进行了进行了反驳,其中获赞数最高网友的评论如下:

@qvop:即便 7-Zip 源码没有在 Github、Gitlab 等平台上托管,那又怎样?它仍然是开源的,没有任何规定要求开源就一定要在某些特定平台上托管代码,我看是 Paul 自己的认知有问题。实际上,7-Zip 在 Sourceforge 上的源码是有一些(相对较少的)文档的,包括变更日志和关于如何编译程序及其一些内部工作的描述。而且,如果开发者只想单独开发、不想寻求贡献,那么这些不必需的东西开源也没用。Paul 认为 7-Zip 作者故意不让开发者通过源码构建应用的说法也几乎是“阴谋论”,因为目前没有任何证据支持这一说法,相反 7-Zip 方面有超过 20 年的开发和维护记录。

此外,因为 7-Zip 作者的国籍而放弃使用开源软件更是愚蠢至极,尤其目前没有任何迹象表明其作者有何相关冲突立场。

最后

当然锋哥也是不认同 Paul 的理由,不过「7-Zip」功能实在有点简陋,对于经常需要压缩解压的用户来说,可能会寻找代替品。具体推荐可以看这篇:[Windows篇] 8 款免费压缩解压软件推荐 文章。

不过目前大多数压缩解压软件不兼容 Win11 的新右键菜单。所以最近锋哥在用基于「7-Zip」的「NanaZip」版,虽然界面也是那么朴素,不过好在它兼容 Win11 菜单。

20220711-1

这款「NanaZip」其它功能就使用起来跟「7-Zip」基本上一样,感兴趣的可以到微软应用商店里面搜索下载安装。