通告称,有开发人员在调查SSH性能问题时发现了涉及XZ包中的供应链攻击,进一步溯源发现SSH使用的上游liblzma库被植入了后门代码,恶意代码可能允许攻击者通过后门版本的SSH非授权获取系统的访问权限。恶意代码修改了liblzma代码中的函数,该代码是XZ Utils软件包的一部分,链接到 XZ 库的任何软件都可以使用此修改后的代码,并允许拦截和修改与该库一起使用的数据。
liblzma/xz被植入源码级后门,渗透了多个Linux的较新发行版,在核心的远程管理工具SSH中被使用,可能影响大量的喜欢尝鲜的系统管理员的系统,对网络基础设施构成威胁,目前实际的影响范围还需要时间评估。
目前已知XZ Utils版本5.6.0和5.6.1受到影响,恶意代码还不存在于XZ的Git发行版中,仅存在于完整的下载包中。已知的Linux发行版包括Fedora Rawhide、Fedora 41、Debian非稳定的测试版 5.5.1alpha-0.1 到 5.6.1-1等。
分析人士指出,本次影响范围虽然不及2021年的“核弹级漏洞”Apache Log4j2事件,但也充分爆露出数字世界中无处不在的漏洞和后门,给网络安全带来巨大的潜在威胁。
首次曝光该后门的为3月29日有开发人员在安全邮件列表上的发帖。该贴内容称,起先有人发现服务器上 sshd 出现异常资源占用的现象,一番排查发现竟然是从 xz 软件包里感染的后门程序。目前已知的后门存在于 v5.6.0 和 v5.6.1 版本。但是这个代码的提交人两年前就加入了项目维护,暂时不能确定之前的版本有没有问题。
据介绍,这个后门会篡改 Makefile 注入恶意脚本到 configure 里执行,从而在生成的代码里链接恶意的 .o。当满足一定条件,即当前进程是 /usr/sbin/sshd,不存在调试环境变量,配置了 LANG,就会触发后门逻辑。
该帖给出了一段快速检测后门是否存在的脚本,该恶意后门被分配了编号 CVE-2024-3094。
目前迹象表明,后门作者有选择地针对 linux 发行版下手。但这个 liblzma 可不只Linux上用。比如目前流行的 iOS 越狱环境,大部分 tweak 包还是以 .deb 格式发行,比较新的版本就用到了 lzma 作为压缩。
除此之外,近期有在 macOS 上使用 brew 安装过 xz 这个包应该也受影响,暂时不能证明有恶意行为:

后门,本质上是设计或开发者有意留下的可供特殊情况使用的系统漏洞,其如同“定时炸弹”,危害要远大于相当于开发人员无意之间留下的普通bug类漏洞。因此当前网络安全最突出矛盾之一就是软件供应链漏洞、后门难防。据奇安信统计,仅国内外应用最广泛的JAVA编程语言,就有近1500万个版本的JAVA开源组件,它们当中很多存在漏洞、后门等安全风险。