在xz/liblzma库中发现后门,暴露ssh

流行的xz库被入侵,为未经授权的SSH访问打开了大门。

在XZ Utils包中发现了一个重要的安全漏洞,其中包括
liblzma
库和实用程序,用于处理压缩数据。xz”格式。发现了一个后门程序,编号为CVE-2024-3094
liblzma
库,允许拦截和修改与liblzma库相关的应用程序处理的数据。

后门程序的主要目标是OpenSSH服务器,在一些Linux发行版中,OpenSSH服务器与libsystemd库捆绑在一起,而libsystemd库又使用libzma。将sshd与易受攻击的库链接在一起,攻击者可以在没有身份验证的情况下访问SSH服务器。

这个后门存在于2月24日和3月9日发布的xz 5.6.0和5.6.1的官方版本中,并且在各种发行版和存储库中都有发现。这包括Gentoo, Arch Linux, Debian sid/unstable, Fedora Rawhide和40-beta, openSUSE factory和tumbleweed, LibreELEC, Alpine edge, Solus, CRUX, Cygwin, MSYS2 mingw, HP-UX, Homebrew, KaOS, NixOS unstable, OpenIndiana, Parabola, PCLinuxOS, OpenMandriva cooker和rolling, pkgsrc current, Slackware current, Manjaro和Void Linux。

在xz/liblzma库中发现后门,暴露ssh-每日运维在xz/liblzma库中发现后门,暴露ssh-每日运维Fedora 39中的xz包(可能存在漏洞)

建议xz 5.6.0和5.6.1版本的用户至少紧急回滚到5.4.6版本,但最好回滚到5.4.1版本,因为这是上一个维护者发布的最后一个版本。

这个后门程序只影响基于Linux内核和Glibc C库的x86_64系统,Glibc C库将sshd与libsystemd捆绑在一起,以支持sd_notify机制。

后门激活码隐藏在从构建到主机的m4宏中。在构建时,automake工具包使用的M4文件。激活后门的m4宏包含在发布包中,但不在Git存储库中(它们被添加到.gitignore中)。

然而,恶意测试存档出现在存储库中,表明实现后门的人可以访问存储库和发布生成过程。

当设置了环境变量LANG和TERM时(即在终端中启动进程时),并且没有设置环境变量LD_DEBUG和LD_PROFILE时,后门包含了对检测的保护,但只有在执行可执行文件/usr/sbin/sshd时才会激活。这个后门也有一种在调试环境中检测执行的方法。

攻击者设法获得了对xz项目基础设施的访问权限,并且后门的引入是由xz项目的活跃开发人员之一有目的地执行的。所谓的后门作者,Jia Tan,参与了xz的开发,在过去的两年里一直是“共同维护者”,影响了从xz 5.4.2开始的版本。

建议用户更新到5.4.1版本的xz包,并对系统上的任何可疑活动保持警惕。此外,建议监视系统日志和网络流量,以查找任何异常行为。

作为预防措施,GitHub已经阻止了对xz相关存储库的访问,包括xz、xz-java和xz-embedded,而项目的官方网站xz.tukaani.org也无法访问。

更多信息:

  • 事件顺序:https://boehs.org/node/everything-i-know-about-the-xz-backdoor
  • 来自xz的主要作者:https://tukaani.org/xz-backdoor/
  • 内核邮件列表:https://lore.kernel.org/lkml/20240330144848.102a1e8c@kaneli/

通过Openwall邮件列表