Binarly 最新研究发现:潜伏一年的后门仍在扩散
Binarly 安全研究团队在 2025 年 8 月发布的《Persistent Risk: XZ Utils Backdoor Still Lurking in Docker Images》报告敲响警钟:尽管 XZ Utils 后门漏洞(CVE-2024-3094)早在 2024 年 3 月就已公开披露,引发全球安全社区高度警觉,但该漏洞的威胁仍在持续蔓延。通过对 Docker Hub 镜像仓库展开大规模扫描与深度溯源分析,研究人员发现至少 12 个 Debian 基础镜像仍暗藏恶意代码,由此衍生的 "二阶" 受感染镜像数量更是突破 35 个。更值得警惕的是,部分仓库的 "latest" 标签仍指向受污染版本,这意味着即便遵循最佳实践、使用最新标签拉取镜像的用户,也可能在毫无察觉的情况下引入安全隐患。
研究团队发现这些受影响镜像均呈现出明确的时间特征 —— 标签集中在 2024 年 3 月 11 日前后,这与攻击者完成上游软件包篡改并进入分发渠道的时间线高度吻合。进一步的溯源分析显示,这些镜像通过 Docker 生态的依赖传递机制持续扩散,形成了一个复杂的感染网络,使得安全团队难以全面追踪所有受影响的终端系统。报告特别强调,由于 Docker 镜像的分层存储特性,受污染的基础层被多个上层镜像共享,导致污染范围呈指数级扩大,这也是后门能够长期潜伏的关键原因之一。
当前受影响的 Docker 镜像图谱
一级受感染镜像清单(直接包含恶意组件)
标签 | 清单摘要 | Blob 哈希 |
---|---|---|
rc-buggy-20240311 | a702c7f4bb57a17762e258871f45f8273ae49bec5515452d5133e66450c95ba5 | 3a737ad8ab65fe5ad068d6094fbf99ce9ed2b5beff9c86daceee8c2c50182bde |
experimental-20240311 | 81992d9d8eb99b5cde98ba557a38a171e047b222a767dc7ec0ffe0a194b1c469 | cd5a0401cc26824227d6ffe1f921e91657dc46666e0f20f408d8d154ca49f5c0 |
unstable-20240311-slim | 7a3332fbf100a0ef9762ead20a4224665768b237c5bfedfe0f86bf88e0c13b7a | 40f436db82f2316ccced5a0deef57fac6eb766b073d7e64d5dfe93e6782482b1 |
unstable-20240311 | 8690225da3ca369e9be720446f73e0aa06f290776fdf2605b6ec80c2b229b9f6 | cd5a0401cc26824227d6ffe1f921e91657dc46666e0f20f408d8d154ca49f5c0 |
trixie-20240311-slim | d4e306f14b8b7389b36be8fb0eadab638cb7744546a33a74f0fc27bb9037dc14 | b94224647092fbfb1fa9ceb18cf55a60f5a00183971516dd46f1f72f5f7b26df |
trixie-20240311 | 85068c773f7fcc9c9acd8f244759cb2131e7a1775c5bf8d6710f76e7467fa3f1 | 93e647bfd891e82156d7a13e0f0b194003855008967ec51e962ea0d70fc59ff6 |
testing-20240311-slim | c2e15dd5788b20f360ab3f2d8b60111b6e8b011c5c4960e0129551c743f5cd30 | 243521c5a6cd930662c078eec5f83156663f3197cf12158ce60e0a0f9d0a3eb6 |
testing-20240311 | 0746d89c588160d0470beaae7a55e38305ede06cb5717d132bd6a795610234d8 | 522a6d12a8a3032c984d93fd141274f1cb7cc1e9a6942e3b36cbf803bbe36a12 |
sid-20240311-slim | 94596b0770714bac6e8adef7e1d3dbc16245ad2978f94006587e44850343cb88 | 554b70c8b9ed0854851a55e915cefa47cdc18fed201b4aba87193d575410b53d |
sid-20240311 | 0aff2113f50451631f0f8c22d85c97aad855d73545b6018fcbe9f0a78ae26583 | 3a737ad8ab65fe5ad068d6094fbf99ce9ed2b5beff9c86daceee8c2c50182bde |
untagged | fa2016c58b4df666286dfa14b2402c05d60c556ecfd4c60635b64ad21380edba | 93e647bfd891e82156d7a13e0f0b194003855008967ec51e962ea0d70fc59ff6 |
untagged | e24f4205978e6c0f98697e2075439825f86df56457d2d1ea9e0f8593cf5b5236 | 522a6d12a8a3032c984d93fd141274f1cb7cc1e9a6942e3b36cbf803bbe36a12 |
上述镜像均为 amd64 架构,通过静态分析可检测到liblzma.so中包含的恶意初始化例程。Blob 哈希的重复出现表明这些镜像共享受污染的基础层,进一步验证了污染扩散的路径。
二级衍生镜像(基于受感染基础镜像构建)
除了直接受感染的基础镜像外,后门通过镜像构建过程进一步扩散,形成了数量更多的二级衍生镜像,这些镜像同样构成严重威胁。
仓库 | 标签 | 最新标签状态 | 清单摘要 |
---|---|---|---|
buildpack-deps | 多版本 | 未标记 | 5e4438a4660fff39ff4671bc5ecfaea3e639dafe61d5c19c735335c96d61c1e4 |
neurodebian | 多版本 | 未标记 | 388d46f65da097cd9371385d9c2f3f3fe04d4bc88b529b52125b9f94d74edaff |
r-base | 未标记 | 未标记 | 3b5c502ccd9d4a6c0937a6bfc51e02741bdc7c520fe458ce4d9c136553df42b0 |
georchestra/jenkins-builder | sid-jdk-8 | 是 | d7ad7c3386a874e81006bc6fab0ce7eb5cf227f4a1c2d3dff7850e17ff7a5f48 |
makepad/opencv | trixie-4.9.0 | 是 | 2fdc5fa0c19fe4e04d3117477f49b8b7e0e4124290d9f4270f215f8e7c5b9078 |
makepad/opencv | trixie-slim-4.9.0 | 是 | 7a4e5b592b318a38542dd21f87a810263d39a3b4caf9d85bb973594264a38fca |
controlplane/sectools | latest | 是 | 86090b316ad096e53c81f91e94ac2ae95c2f28feee10ce8ec32aa573d8263021 |
特别需要注意的是,标为 "最新标签状态" 的镜像仍受影响,这意味着即使遵循最佳实践使用latest标签的用户也可能受到影响。Binarly 的透明度平台数据显示,这些衍生镜像主要集中在开发工具链和 CI/CD 环境,可能导致攻击面向上游开发流程扩散。
XZ Utils 后门事件溯源与技术解析
要全面理解当前仍在扩散的威胁,我们必须回溯 XZ Utils 后门事件的源头,深入剖析其技术实现细节,这不仅有助于理解其持久影响的原因,也为有效的防御策略提供了技术依据。
初始攻击链构建
攻击者以 "jia tan" 名义长期渗透 XZ Utils 项目供应链,通过以下步骤完成后门植入:
这种植入方式规避了常规代码审查,通过测试文件传递恶意载荷的手法具有极强的隐蔽性。
后门技术实现细节
动态链接库劫持机制
受污染的liblzma.so包含特制的初始化例程,在被sshd进程加载时触发:
IFUNC 钩子实现
后门利用 GNU C 库的 IFUNC(间接函数)机制实现持久化挂钩:
这种技术允许恶意代码在不修改函数本身的情况下改变其行为,且难以通过常规内存扫描检测。
加密验证绕过逻辑
挂钩函数实现了特定条件下的身份验证绕过:
触发与攻击流程
防御策略与检测方案
基于对后门技术细节和当前传播状态的深入理解,我们可以制定出更具针对性的防御策略和检测方案,以应对这一持续存在的威胁。
即时检测手段
长期防御架构
结论
XZ Utils 后门事件揭示了供应链攻击的长期性和隐蔽性特征。Binarly 的最新研究表明,即使在事件披露一年多后,受污染的镜像仍在 Docker 生态中传播,这反映出开源供应链安全治理的复杂性。
对于安全团队而言,仅依赖版本号和发布日期进行风险评估已不再足够,必须实施二进制级别的持续验证。IFUNC 钩子等高级技术的应用,也要求防御体系从传统的特征检测向行为分析和环境感知演进。
该事件为开源生态敲响警钟:在追求开发效率的同时,必须建立更严格的贡献者身份验证、代码审查和构建流程审计机制,才能从根本上抵御此类高级供应链攻击。