博客

Linux 中的 XZ Utils 后门指向了更广泛的供应链安全问题,我们需要的不仅仅是社区精神来阻止它的出现

皮特-丹休
发表于 2024 年 4 月 11 日

在发现一个阴险的软件供应链漏洞后,网络安全行业再次进入高度警戒状态。该漏洞影响到主要 Linux 发行版中的 XZ Utils 数据压缩库,被记录在 CVE-2024-3094 下,归结起来就是一个曾被信任的志愿系统维护者故意插入的后门。

值得庆幸的是,在恶意代码进入稳定的 Linux 版本之前,另一位维护者发现了这一威胁,但它仍然给那些已经开始运行作为 Fedora Rawhide 一部分的 XZ Utils 5.6.0 和 5.6.1 版本的用户带来了问题,并敦促企业将其作为紧急优先级打补丁。如果没有及时发现,其风险状况将使其成为有史以来最具破坏性的供应链攻击之一,甚至可能使 SolarWinds 黯然失色。

对社区志愿者维护关键系统的依赖已被广泛记录在案,但在像此次事件这样具有重大影响的问题浮出水面之前,却很少被讨论。虽然他们的不懈努力对开源软件的维护至关重要,但这也凸显了在开发人员层面认真强调安全技能和意识的必要性,更不用说加强对软件仓库的访问控制了。

XZ Utils 后门是什么,如何缓解?

3 月 29 日,红帽发布紧急安全警报,通知 Fedora Linux 40 和 Fedora Rawhide 用户,最新版本的 "XZ "压缩工具和库包含恶意代码,似乎是专门为未经授权的第三方访问提供便利而构建的。这个人花费了无数的时间来赢得其他维护者的信任,在两年多的时间里为 XZ Utils 项目和社区做出了合法的贡献,在多个 sockpuppet 账户削弱了志愿者项目所有者 Lasse Collin 的信心之后,最终赢得了 "可信维护者 "的地位:

贾诞作为项目的贡献者加入。资料来源:Mail Archive:邮件档案

原维护者工作过度。Jia Tan 获得了更多的社区信任,可以接手了。 资料来源:Mail Archive:邮件档案

这个不寻常的场景是一个典型的例子,说明技术高超的人仍然会成为通常用来对付那些不那么精明的人的策略的受害者,这说明需要进行精确的、基于角色的安全意识培训。微软软件工程师兼 PostgreSQL 维护者安德烈斯-弗罗因德(Andres Freund)好奇心强、思维敏捷,才发现了这个后门,并将其版本回滚,从而阻止了可能成为近期最具破坏性的供应链攻击。

NIST 的注册表中,该后门本身被正式列为严重程度最高的漏洞。最初,该漏洞被认为可以绕过 SSH 身份验证,但进一步调查发现,它可以在易受攻击的 Linux 系统(包括 Fedora Rawhide、Fedora 41、Kali Linux、openSUSE MicroOS、openSUSE Tumbleweed 和某些版本的 Debian)上执行未经身份验证的远程代码。

Jia Tan 似乎不遗余力地混淆恶意软件包,当在构建过程中触发该软件包构建自身时,它会通过 systemd 妨碍 SSHd 的身份验证。正如红帽公司详细说明的那样,在适当的情况下,这种干扰可能会让攻击者破解 SSHd 身份验证,并在未经授权的情况下远程访问整个系统。

Jia Tan 在 libarchive 代码库中的首次提交。 函数 fprintf()代替 safe_fprintf()。现阶段的意图可能并非恶意,但不可忽视的是,这一改动有可能引入字符转义漏洞。来源:GitHubGitHub.



微软等公司已经发布了全面的指南,指导用户扫描系统中的漏洞实例并减轻其影响。CISA建议立即采取的行动是,受影响的开发人员和用户应将 XZ Utils 降级到未受攻击的版本,如 XZ Utils 5.4.6 Stable。

防止这种攻击类型的难度极大,尤其是在软件中使用开源组件时,因为供应链的安全性几乎没有保证和透明度。我们已经对付过软件供应链中的意外缺陷,但这种风险已经上升到包括恶意植入的安全漏洞,以破坏开源安全。

大多数开发人员都无法阻止这种性质的攻击,除非他们有强烈的安全意识、健康的安全知识和偏执狂。这几乎是一个需要威胁行为者心态的案例。不过,主要考虑因素应始终围绕内部控制源代码库(即非开源)。只有具备经过验证的相关安全技能的人才能访问这些资源库。AppSec 专业人员可能会考虑类似分支级安全控制的设置,只允许具备安全技能的开发人员向最终主分支提交更改。

志愿维护者是英雄,但维持安全软件需要(应该)全村人的努力

对于软件工程领域之外的人来说,一个由志愿者组成的充满活力的社区在自己的时间里煞费苦心地维护关键系统是一个难以理解的概念,但这正是开源开发的本质,而且对于保护供应链的安全专业人员来说,这仍然是一个存在重大风险的领域。

开源软件几乎是每个企业数字生态系统的重要组成部分,值得信赖的维护者(其中大多数人都是真诚行事的)在无私地追求技术进步和完整性的过程中确实表现出了英雄气概,但让他们孤立地提供服务却是荒谬的。在这个以 DevSecOps 为中心的时代,安全是一项共同的责任,每个开发人员都必须掌握相关知识和合适的工具,以应对工作中可能遇到的安全问题。在软件开发过程中,安全意识和实践技能是不可或缺的,而安全领导者则有责任影响企业层面的变革。

‍今天就在您的组织中 建立蓬勃发展的安全文化 Courses Secure Code Warrior 。

查看资源
查看资源

在主要 Linux 发行版使用的 XZ Utils 数据压缩库中发现了一个关键漏洞(CVE-2024-3094),该漏洞是由威胁行为者通过后门引入的。这个高严重性问题允许潜在的远程代码执行,给软件构建过程带来重大风险。该漏洞影响了 Fedora Rawhide 中 XZ Utils 的早期版本(5.6.0 和 5.6.1),并紧急呼吁企业实施补丁。该事件凸显了社区志愿者在维护开源软件方面的关键作用,并强调了在软件开发生命周期内加强安全实践和访问控制的必要性。

想了解更多信息?

首席执行官、主席和联合创始人

Secure Code Warrior 我们在这里为您的组织提供服务,帮助您在整个软件开发生命周期中确保代码安全,并创造一种将网络安全放在首位的文化。无论您是应用安全经理、开发人员、CISO或任何涉及安全的人,我们都可以帮助您的组织减少与不安全代码有关的风险。

预定一个演示
分享到
作者
皮特-丹休
发表于 2024 年 4 月 11 日

首席执行官、主席和联合创始人

Pieter Danhieux是全球公认的安全专家,拥有超过12年的安全顾问经验,并在SANS担任首席讲师8年,教授如何针对和评估组织、系统和个人的安全弱点的攻击性技术。2016年,他被评为澳大利亚最酷的科技人士之一(Business Insider),被授予年度网络安全专业人士(AISA - 澳大利亚信息安全协会),并持有GSE、CISSP、GCIH、GCFA、GSEC、GPEN、GWAPT、GCIA认证。

分享到

在发现一个阴险的软件供应链漏洞后,网络安全行业再次进入高度警戒状态。该漏洞影响到主要 Linux 发行版中的 XZ Utils 数据压缩库,被记录在 CVE-2024-3094 下,归结起来就是一个曾被信任的志愿系统维护者故意插入的后门。

值得庆幸的是,在恶意代码进入稳定的 Linux 版本之前,另一位维护者发现了这一威胁,但它仍然给那些已经开始运行作为 Fedora Rawhide 一部分的 XZ Utils 5.6.0 和 5.6.1 版本的用户带来了问题,并敦促企业将其作为紧急优先级打补丁。如果没有及时发现,其风险状况将使其成为有史以来最具破坏性的供应链攻击之一,甚至可能使 SolarWinds 黯然失色。

对社区志愿者维护关键系统的依赖已被广泛记录在案,但在像此次事件这样具有重大影响的问题浮出水面之前,却很少被讨论。虽然他们的不懈努力对开源软件的维护至关重要,但这也凸显了在开发人员层面认真强调安全技能和意识的必要性,更不用说加强对软件仓库的访问控制了。

XZ Utils 后门是什么,如何缓解?

3 月 29 日,红帽发布紧急安全警报,通知 Fedora Linux 40 和 Fedora Rawhide 用户,最新版本的 "XZ "压缩工具和库包含恶意代码,似乎是专门为未经授权的第三方访问提供便利而构建的。这个人花费了无数的时间来赢得其他维护者的信任,在两年多的时间里为 XZ Utils 项目和社区做出了合法的贡献,在多个 sockpuppet 账户削弱了志愿者项目所有者 Lasse Collin 的信心之后,最终赢得了 "可信维护者 "的地位:

贾诞作为项目的贡献者加入。资料来源:Mail Archive:邮件档案

原维护者工作过度。Jia Tan 获得了更多的社区信任,可以接手了。 资料来源:Mail Archive:邮件档案

这个不寻常的场景是一个典型的例子,说明技术高超的人仍然会成为通常用来对付那些不那么精明的人的策略的受害者,这说明需要进行精确的、基于角色的安全意识培训。微软软件工程师兼 PostgreSQL 维护者安德烈斯-弗罗因德(Andres Freund)好奇心强、思维敏捷,才发现了这个后门,并将其版本回滚,从而阻止了可能成为近期最具破坏性的供应链攻击。

NIST 的注册表中,该后门本身被正式列为严重程度最高的漏洞。最初,该漏洞被认为可以绕过 SSH 身份验证,但进一步调查发现,它可以在易受攻击的 Linux 系统(包括 Fedora Rawhide、Fedora 41、Kali Linux、openSUSE MicroOS、openSUSE Tumbleweed 和某些版本的 Debian)上执行未经身份验证的远程代码。

Jia Tan 似乎不遗余力地混淆恶意软件包,当在构建过程中触发该软件包构建自身时,它会通过 systemd 妨碍 SSHd 的身份验证。正如红帽公司详细说明的那样,在适当的情况下,这种干扰可能会让攻击者破解 SSHd 身份验证,并在未经授权的情况下远程访问整个系统。

Jia Tan 在 libarchive 代码库中的首次提交。 函数 fprintf()代替 safe_fprintf()。现阶段的意图可能并非恶意,但不可忽视的是,这一改动有可能引入字符转义漏洞。来源:GitHubGitHub.



微软等公司已经发布了全面的指南,指导用户扫描系统中的漏洞实例并减轻其影响。CISA建议立即采取的行动是,受影响的开发人员和用户应将 XZ Utils 降级到未受攻击的版本,如 XZ Utils 5.4.6 Stable。

防止这种攻击类型的难度极大,尤其是在软件中使用开源组件时,因为供应链的安全性几乎没有保证和透明度。我们已经对付过软件供应链中的意外缺陷,但这种风险已经上升到包括恶意植入的安全漏洞,以破坏开源安全。

大多数开发人员都无法阻止这种性质的攻击,除非他们有强烈的安全意识、健康的安全知识和偏执狂。这几乎是一个需要威胁行为者心态的案例。不过,主要考虑因素应始终围绕内部控制源代码库(即非开源)。只有具备经过验证的相关安全技能的人才能访问这些资源库。AppSec 专业人员可能会考虑类似分支级安全控制的设置,只允许具备安全技能的开发人员向最终主分支提交更改。

志愿维护者是英雄,但维持安全软件需要(应该)全村人的努力

对于软件工程领域之外的人来说,一个由志愿者组成的充满活力的社区在自己的时间里煞费苦心地维护关键系统是一个难以理解的概念,但这正是开源开发的本质,而且对于保护供应链的安全专业人员来说,这仍然是一个存在重大风险的领域。

开源软件几乎是每个企业数字生态系统的重要组成部分,值得信赖的维护者(其中大多数人都是真诚行事的)在无私地追求技术进步和完整性的过程中确实表现出了英雄气概,但让他们孤立地提供服务却是荒谬的。在这个以 DevSecOps 为中心的时代,安全是一项共同的责任,每个开发人员都必须掌握相关知识和合适的工具,以应对工作中可能遇到的安全问题。在软件开发过程中,安全意识和实践技能是不可或缺的,而安全领导者则有责任影响企业层面的变革。

‍今天就在您的组织中 建立蓬勃发展的安全文化 Courses Secure Code Warrior 。

查看资源
查看资源

请填写下表下载报告

我们希望得到您的许可,向您发送有关我们产品和/或相关安全编码主题的信息。我们将始终以最谨慎的态度对待您的个人资料,绝不会将其出售给其他公司用于营销目的。

提交
要提交表格,请启用 "分析 "cookies。完成后,请随时再次禁用它们。

在发现一个阴险的软件供应链漏洞后,网络安全行业再次进入高度警戒状态。该漏洞影响到主要 Linux 发行版中的 XZ Utils 数据压缩库,被记录在 CVE-2024-3094 下,归结起来就是一个曾被信任的志愿系统维护者故意插入的后门。

值得庆幸的是,在恶意代码进入稳定的 Linux 版本之前,另一位维护者发现了这一威胁,但它仍然给那些已经开始运行作为 Fedora Rawhide 一部分的 XZ Utils 5.6.0 和 5.6.1 版本的用户带来了问题,并敦促企业将其作为紧急优先级打补丁。如果没有及时发现,其风险状况将使其成为有史以来最具破坏性的供应链攻击之一,甚至可能使 SolarWinds 黯然失色。

对社区志愿者维护关键系统的依赖已被广泛记录在案,但在像此次事件这样具有重大影响的问题浮出水面之前,却很少被讨论。虽然他们的不懈努力对开源软件的维护至关重要,但这也凸显了在开发人员层面认真强调安全技能和意识的必要性,更不用说加强对软件仓库的访问控制了。

XZ Utils 后门是什么,如何缓解?

3 月 29 日,红帽发布紧急安全警报,通知 Fedora Linux 40 和 Fedora Rawhide 用户,最新版本的 "XZ "压缩工具和库包含恶意代码,似乎是专门为未经授权的第三方访问提供便利而构建的。这个人花费了无数的时间来赢得其他维护者的信任,在两年多的时间里为 XZ Utils 项目和社区做出了合法的贡献,在多个 sockpuppet 账户削弱了志愿者项目所有者 Lasse Collin 的信心之后,最终赢得了 "可信维护者 "的地位:

贾诞作为项目的贡献者加入。资料来源:Mail Archive:邮件档案

原维护者工作过度。Jia Tan 获得了更多的社区信任,可以接手了。 资料来源:Mail Archive:邮件档案

这个不寻常的场景是一个典型的例子,说明技术高超的人仍然会成为通常用来对付那些不那么精明的人的策略的受害者,这说明需要进行精确的、基于角色的安全意识培训。微软软件工程师兼 PostgreSQL 维护者安德烈斯-弗罗因德(Andres Freund)好奇心强、思维敏捷,才发现了这个后门,并将其版本回滚,从而阻止了可能成为近期最具破坏性的供应链攻击。

NIST 的注册表中,该后门本身被正式列为严重程度最高的漏洞。最初,该漏洞被认为可以绕过 SSH 身份验证,但进一步调查发现,它可以在易受攻击的 Linux 系统(包括 Fedora Rawhide、Fedora 41、Kali Linux、openSUSE MicroOS、openSUSE Tumbleweed 和某些版本的 Debian)上执行未经身份验证的远程代码。

Jia Tan 似乎不遗余力地混淆恶意软件包,当在构建过程中触发该软件包构建自身时,它会通过 systemd 妨碍 SSHd 的身份验证。正如红帽公司详细说明的那样,在适当的情况下,这种干扰可能会让攻击者破解 SSHd 身份验证,并在未经授权的情况下远程访问整个系统。

Jia Tan 在 libarchive 代码库中的首次提交。 函数 fprintf()代替 safe_fprintf()。现阶段的意图可能并非恶意,但不可忽视的是,这一改动有可能引入字符转义漏洞。来源:GitHubGitHub.



微软等公司已经发布了全面的指南,指导用户扫描系统中的漏洞实例并减轻其影响。CISA建议立即采取的行动是,受影响的开发人员和用户应将 XZ Utils 降级到未受攻击的版本,如 XZ Utils 5.4.6 Stable。

防止这种攻击类型的难度极大,尤其是在软件中使用开源组件时,因为供应链的安全性几乎没有保证和透明度。我们已经对付过软件供应链中的意外缺陷,但这种风险已经上升到包括恶意植入的安全漏洞,以破坏开源安全。

大多数开发人员都无法阻止这种性质的攻击,除非他们有强烈的安全意识、健康的安全知识和偏执狂。这几乎是一个需要威胁行为者心态的案例。不过,主要考虑因素应始终围绕内部控制源代码库(即非开源)。只有具备经过验证的相关安全技能的人才能访问这些资源库。AppSec 专业人员可能会考虑类似分支级安全控制的设置,只允许具备安全技能的开发人员向最终主分支提交更改。

志愿维护者是英雄,但维持安全软件需要(应该)全村人的努力

对于软件工程领域之外的人来说,一个由志愿者组成的充满活力的社区在自己的时间里煞费苦心地维护关键系统是一个难以理解的概念,但这正是开源开发的本质,而且对于保护供应链的安全专业人员来说,这仍然是一个存在重大风险的领域。

开源软件几乎是每个企业数字生态系统的重要组成部分,值得信赖的维护者(其中大多数人都是真诚行事的)在无私地追求技术进步和完整性的过程中确实表现出了英雄气概,但让他们孤立地提供服务却是荒谬的。在这个以 DevSecOps 为中心的时代,安全是一项共同的责任,每个开发人员都必须掌握相关知识和合适的工具,以应对工作中可能遇到的安全问题。在软件开发过程中,安全意识和实践技能是不可或缺的,而安全领导者则有责任影响企业层面的变革。

‍今天就在您的组织中 建立蓬勃发展的安全文化 Courses Secure Code Warrior 。

开始吧

点击下面的链接,下载本资料的 PDF 文件。

Secure Code Warrior 我们在这里为您的组织提供服务,帮助您在整个软件开发生命周期中确保代码安全,并创造一种将网络安全放在首位的文化。无论您是应用安全经理、开发人员、CISO或任何涉及安全的人,我们都可以帮助您的组织减少与不安全代码有关的风险。

查看报告预定一个演示
查看资源
分享到
想了解更多信息?

分享到
作者
皮特-丹休
发表于 2024 年 4 月 11 日

首席执行官、主席和联合创始人

Pieter Danhieux是全球公认的安全专家,拥有超过12年的安全顾问经验,并在SANS担任首席讲师8年,教授如何针对和评估组织、系统和个人的安全弱点的攻击性技术。2016年,他被评为澳大利亚最酷的科技人士之一(Business Insider),被授予年度网络安全专业人士(AISA - 澳大利亚信息安全协会),并持有GSE、CISSP、GCIH、GCFA、GSEC、GPEN、GWAPT、GCIA认证。

分享到

在发现一个阴险的软件供应链漏洞后,网络安全行业再次进入高度警戒状态。该漏洞影响到主要 Linux 发行版中的 XZ Utils 数据压缩库,被记录在 CVE-2024-3094 下,归结起来就是一个曾被信任的志愿系统维护者故意插入的后门。

值得庆幸的是,在恶意代码进入稳定的 Linux 版本之前,另一位维护者发现了这一威胁,但它仍然给那些已经开始运行作为 Fedora Rawhide 一部分的 XZ Utils 5.6.0 和 5.6.1 版本的用户带来了问题,并敦促企业将其作为紧急优先级打补丁。如果没有及时发现,其风险状况将使其成为有史以来最具破坏性的供应链攻击之一,甚至可能使 SolarWinds 黯然失色。

对社区志愿者维护关键系统的依赖已被广泛记录在案,但在像此次事件这样具有重大影响的问题浮出水面之前,却很少被讨论。虽然他们的不懈努力对开源软件的维护至关重要,但这也凸显了在开发人员层面认真强调安全技能和意识的必要性,更不用说加强对软件仓库的访问控制了。

XZ Utils 后门是什么,如何缓解?

3 月 29 日,红帽发布紧急安全警报,通知 Fedora Linux 40 和 Fedora Rawhide 用户,最新版本的 "XZ "压缩工具和库包含恶意代码,似乎是专门为未经授权的第三方访问提供便利而构建的。这个人花费了无数的时间来赢得其他维护者的信任,在两年多的时间里为 XZ Utils 项目和社区做出了合法的贡献,在多个 sockpuppet 账户削弱了志愿者项目所有者 Lasse Collin 的信心之后,最终赢得了 "可信维护者 "的地位:

贾诞作为项目的贡献者加入。资料来源:Mail Archive:邮件档案

原维护者工作过度。Jia Tan 获得了更多的社区信任,可以接手了。 资料来源:Mail Archive:邮件档案

这个不寻常的场景是一个典型的例子,说明技术高超的人仍然会成为通常用来对付那些不那么精明的人的策略的受害者,这说明需要进行精确的、基于角色的安全意识培训。微软软件工程师兼 PostgreSQL 维护者安德烈斯-弗罗因德(Andres Freund)好奇心强、思维敏捷,才发现了这个后门,并将其版本回滚,从而阻止了可能成为近期最具破坏性的供应链攻击。

NIST 的注册表中,该后门本身被正式列为严重程度最高的漏洞。最初,该漏洞被认为可以绕过 SSH 身份验证,但进一步调查发现,它可以在易受攻击的 Linux 系统(包括 Fedora Rawhide、Fedora 41、Kali Linux、openSUSE MicroOS、openSUSE Tumbleweed 和某些版本的 Debian)上执行未经身份验证的远程代码。

Jia Tan 似乎不遗余力地混淆恶意软件包,当在构建过程中触发该软件包构建自身时,它会通过 systemd 妨碍 SSHd 的身份验证。正如红帽公司详细说明的那样,在适当的情况下,这种干扰可能会让攻击者破解 SSHd 身份验证,并在未经授权的情况下远程访问整个系统。

Jia Tan 在 libarchive 代码库中的首次提交。 函数 fprintf()代替 safe_fprintf()。现阶段的意图可能并非恶意,但不可忽视的是,这一改动有可能引入字符转义漏洞。来源:GitHubGitHub.



微软等公司已经发布了全面的指南,指导用户扫描系统中的漏洞实例并减轻其影响。CISA建议立即采取的行动是,受影响的开发人员和用户应将 XZ Utils 降级到未受攻击的版本,如 XZ Utils 5.4.6 Stable。

防止这种攻击类型的难度极大,尤其是在软件中使用开源组件时,因为供应链的安全性几乎没有保证和透明度。我们已经对付过软件供应链中的意外缺陷,但这种风险已经上升到包括恶意植入的安全漏洞,以破坏开源安全。

大多数开发人员都无法阻止这种性质的攻击,除非他们有强烈的安全意识、健康的安全知识和偏执狂。这几乎是一个需要威胁行为者心态的案例。不过,主要考虑因素应始终围绕内部控制源代码库(即非开源)。只有具备经过验证的相关安全技能的人才能访问这些资源库。AppSec 专业人员可能会考虑类似分支级安全控制的设置,只允许具备安全技能的开发人员向最终主分支提交更改。

志愿维护者是英雄,但维持安全软件需要(应该)全村人的努力

对于软件工程领域之外的人来说,一个由志愿者组成的充满活力的社区在自己的时间里煞费苦心地维护关键系统是一个难以理解的概念,但这正是开源开发的本质,而且对于保护供应链的安全专业人员来说,这仍然是一个存在重大风险的领域。

开源软件几乎是每个企业数字生态系统的重要组成部分,值得信赖的维护者(其中大多数人都是真诚行事的)在无私地追求技术进步和完整性的过程中确实表现出了英雄气概,但让他们孤立地提供服务却是荒谬的。在这个以 DevSecOps 为中心的时代,安全是一项共同的责任,每个开发人员都必须掌握相关知识和合适的工具,以应对工作中可能遇到的安全问题。在软件开发过程中,安全意识和实践技能是不可或缺的,而安全领导者则有责任影响企业层面的变革。

‍今天就在您的组织中 建立蓬勃发展的安全文化 Courses Secure Code Warrior 。

目录

下载PDF
查看资源
想了解更多信息?

首席执行官、主席和联合创始人

Secure Code Warrior 我们在这里为您的组织提供服务,帮助您在整个软件开发生命周期中确保代码安全,并创造一种将网络安全放在首位的文化。无论您是应用安全经理、开发人员、CISO或任何涉及安全的人,我们都可以帮助您的组织减少与不安全代码有关的风险。

预定一个演示下载
分享到
资源中心
资源中心