有一条重要的安全警报,发现了 XZ Utils 中的后门。XZ Utils 是一种用于 XZ 格式的压缩工具,通常被集成在很多 Linux 发行版中。这个漏洞被编入 CVE-2024-3094 目录,通过允许未经授权的远程访问来对受影响的系统构成了严重风险。

这个安全漏洞影响了 5.6.0 版本(于 2 月底发布)和 5.6.1 版本(于 3 月 9 日发布)的 xz 库。这些受损的版本携带了恶意代码,能够绕过 sshd 认证,使威胁行为者能够对整个系统进行全面的远程控制。

检查 XZ Utils 版本。 这个后门是由安德里斯·弗洛伊德(Andres Freund)发现的,他是一位 PostgreSQL 开发者,也是微软的软件工程师。弗洛伊德发现了 Debian sid 安装中的异常行为,比如 SSH 登录时 CPU 使用率过高。

“在过去几周中观察到 Debian sid 安装中 liblzma(xz 软件包的一部分)周围的一些奇怪症状后(ssh 登录时 CPU 使用率过高,valgrind 错误),我找到了答案:上游的 xz 仓库和 xz 压缩包已经被植入了后门。起初我以为这是 Debian 软件包的被入侵,但事实证明是上游的问题。”

这些受影响版本中的恶意代码被巧妙地隐藏起来,采用了混淆技术来掩盖攻击的真实性质。红帽的分析显示,XZ Utils 的 Git 发布版不包含负责启动恶意代码构建过程的 M4 宏。

然而,在构建阶段注入代码所需的辅助组件是存在的,它们等待恶意 M4 宏的出现以激活它们。

好的,什么是 M4?简单来说,它是一种强大的宏处理器,通常用于软件开发和系统管理,用于代码生成、文本处理和配置文件预处理等任务。

在这种情况下,“.m4” 文件用于编译后门的 liblzma,而 liblzma 又被 libsystemd 中的 systemd-notify 部分所使用,用于通知服务管理器有关启动完成和其他守护程序状态更改的信息。

因此,当 OpenSSH 服务器启动时,也会调用 liblzma。当这种情况发生时,“RSA_public_decrypt” 函数将被重定向到绕过身份验证的恶意软件代码,从而直接访问系统。

令人震惊的是,初步调查结果表明,这些有害的修改是由一个名为 JiaT75 的用户提交的。他被认为是 XZ Utils 的两名主要开发者之一,对该项目的开发有多年的贡献。

与此同时,就在两天前,一个名为 Jia Tan 的新用户提议在 Ubuntu 软件源中包含受损包,将其呈现为常规错误修复更新。幸运的是,那件事没有发生。

“鉴于这个问题在 Debian 中已被撤销,不应将其同步到 Ubuntu 中。”

一位 Fedora 开发人员分享了类似的情况,他们遇到了相同的问题,有人试图将该软件包包含在即将发布的 Fedora 40 beta 版本以及随后的 Fedora 41 中。

“非常恼人 – 后门的明显作者在几个星期内与我进行了沟通,试图将 xz 5.6.x 添加到 Fedora 40 和 41 中,因为它有‘很棒的新功能’。我们甚至与他合作解决了 valgrind 问题(现在发现是由他添加的后门导致的)。在意外违反禁令后,我们昨晚不得不赶紧解决问题。”

这种情况揭示了一种经过计算和大胆的事先计划,表明了一种大胆的决心,试图渗透到数百万用户使用的最广泛的 Linux 发行版中。明显的意图是将后门嵌入其中,然后通过它们的常规更新传播到众多的衍生版本中。

现在,让我们花一点时间讨论一下 XZ 软件包。这值得一提,因为即使对于一些人来说可能不熟悉,它实际上几乎是每个 Linux 系统中的标配。

Linux 中的 XZ Utils 是什么?

Linux 中的 XZ Utils 是一套旨在压缩和解压 XZ 格式文件的实用工具集合。XZ 是一种无损数据压缩格式和软件,具有很高的压缩比,使其成为减小文件大小以进行存储或传输的理想选择。

XZ Utils 软件包通常包括一些工具,如用于压缩文件的 xz,用于解压文件的 unxz 或 xz –decompress,以及用于测试、比较和修复 XZ 格式文件的各种其他工具。

这些实用工具对大多数 Linux 发行版都是至关重要的,因为它们通常用于管理压缩文件和归档。系统管理员和用户使用这些工具执行各种任务,从压缩日志文件以减小磁盘空间使用量到分发和安装通常使用 XZ 格式压缩的软件包。

哪些 Linux 发行版受到影响?

现在,让我们解决一个关键问题:您当前使用的 Linux 发行版是否受到 CVE-2024-3094 的影响?以下是来自 Linux 生态系统主要参与者的最新官方声明。

Debian

“目前,没有已知受影响的 Debian 稳定版本。被篡改的软件包是 Debian 测试、不稳定和实验性发行版的一部分,版本范围从 5.5.1alpha-0.1(于 2024 年 02 月 01 日上传)到 5.6.1-1。该软件包已经回退到使用上游 5.4.5 代码,我们将其版本化为 5.6.1+really5.4.5-1。我们敦促运行 Debian 测试和不稳定版本的用户更新 xz-utils 软件包。”

Fedora

“目前,Fedora Rawhide 用户很可能已收到受损的软件包,并且如果 Fedora Linux 40 Beta 用户选择从测试仓库更新,则可能已收到该软件包。仅使用稳定仓库的 Fedora Linux 40 Beta 用户不受影响。Fedora Linux 39 和 38 用户也不受影响。请立即停止使用 Fedora Rawhide 进行工作或个人活动。”

Red Hat

“没有 Red Hat Enterprise Linux(RHEL)的任何版本受到影响。”

Arch Linux

“以下发行包含受损的 xz:

  • 虚拟机镜像 20240301
  • 虚拟机镜像 20240301.218094 和 20240315.221711
  • 在 2024 年 02 月 24 日至 2024 年 03 月 28 日期间创建的容器镜像

受影响的发行包已从我们的镜像中移除。我们强烈建议不要使用受影响的发行包,而是下载当前可用的最新版本!如果您的系统当前安装了 xz 版本 5.6.0-1 或 5.6.1-1,请立即进行全面系统升级。”

SUSE / openSUSE

  • “SUSE Linux Enterprise 和 Leap 是独立于 openSUSE 构建的。Tumbleweed 的代码、功能和特性不会自动引入到 SUSE Linux Enterprise 和/或 Leap 中。已经确定,在 Tumbleweed 中引入的恶意文件不存在于 SUSE Linux Enterprise 和/或 Leap 中。
  • openSUSE 的维护人员已于 3 月 28 日回退了 Tumbleweed 上的 xz 版本,并发布了一个新的 Tumbleweed 快照(20240328 或更高版本),该快照是从一个安全备份构建的。”

当然,我们将密切关注事态的发展,并在情况变化时提供更新。

发表回复