← 返回信息流
AI 资讯Hacker News·3 天前

RedHat发布的NPM软件包遭恶意篡改

原标题:NPM packages from RedHat have been compromised

速览

近期发现,由RedHat官方发布的多个NPM软件包被植入恶意代码。这一事件揭示了开源软件供应链中潜在的安全风险,提醒开发者和企业需加强依赖包的安全审计。

AI 深度解读

RedHat NPM 包遭劫持事件深度解读

背景

近期,安全研究公司 StepSecurity 发布报告指出,RedHat Cloud Services(红帽云服务)旗下多个 NPM 软件包遭到恶意篡改。这一事件通过 Hacker News 等社区广泛传播,引发了开源供应链安全的广泛关注。

此次事件的核心在于,攻击者成功入侵了 RedHat 的 NPM 发布账号或构建流程,并在多个核心库的特定版本中植入了恶意代码。受影响的范围不仅限于单一工具,而是覆盖了 RedHat Cloud Services 前端组件、客户端库以及内部配置工具等多个关键模块。由于这些包被广泛用于构建基于 RedHat 的技术栈应用,潜在的影响范围可能波及大量依赖这些库的开发者和企业。

核心内容

根据 StepSecurity 的安全 feed 及官方博客披露,此次攻击针对的是 @redhat-cloud-services 命名空间下的多个 NPM 包。攻击者并未修改所有版本,而是精准地篡改了特定的旧版本或特定构建版本。

受影响的具体包列表

以下是已确认被劫持的 NPM 包及其对应的受影响版本:

| 包名 (Package) | 受影响版本 (Compromised Version) | | :--- | :--- | | @redhat-cloud-services/chrome | 2.3.1 | | @redhat-cloud-services/compliance-client | 4.0.3 | | @redhat-cloud-services/config-manager-client | 5.0.4 | | @redhat-cloud-services/entitlements-client | 4.0.11 | | @redhat-cloud-services/eslint-config-redhat-cloud-services | 3.2.1 | | @redhat-cloud-services/frontend-components | 7.7.2 | | @redhat-cloud-services/frontend-components-advisor-components | 3.8.2 | | @redhat-cloud-services/frontend-components-config | 6.11.3 | | @redhat-cloud-services/frontend-components-config-utilities | 4.11.2 | | @redhat-cloud-services/frontend-components-notifications | 6.9.2 | | @redhat-cloud-services/frontend-components-remediations | 4.9.2 | | @redhat-cloud-services/frontend-components-testing | 1.2.1 | | @redhat-cloud-services/frontend-components-translations | 4.4.1 | | @redhat-cloud-services/frontend-components-utilities | 7.4.1 | | @redhat-cloud-services/hcc-feo-mcp | 0.3.1 | | @redhat-cloud-services/hcc-kessel-mcp | 0.3.1 | | @redhat-cloud-services/hcc-pf-mcp | 0.6.1 | | @redhat-cloud-services/host-inventory-client | 5.0.3 | | @redhat-cloud-services/insights-client | 4.0.4 | | @redhat-cloud-services/integrations-client | 6.0.4 | | @redhat-cloud-services/javascript-clients-shared | 2.0.8 | | @redhat-cloud-services/notifications-client | 6.1.4 | | @redhat-cloud-services/patch-client | 4.0.4 | | @redhat-cloud-services/quickstarts-client | 4.0.11 | | @redhat-cloud-services/rbac-client | 9.0.3 | | @redhat-cloud-services/remediations-client | 4.0.4 | | @redhat-cloud-services/rule-components | 4.7.2 | | @redhat-cloud-services/sources-client | 3.0.10 | | @redhat-cloud-services/topological-inventory-client | 3.0.10 | | @redhat-cloud-services/tsc-transform-imports | 1.2.2 | | @redhat-cloud-services/types | 3.6.1 |

攻击特征分析

虽然原文主要侧重于列出受影响范围,但从技术角度看,此类供应链攻击通常具有以下特征:

  1. 版本锁定:攻击者通常只修改特定版本,以避免引起大规模恐慌或导致构建立即失败,从而在长时间内潜伏。
  2. 核心基础设施渗透:受影响的包中包含了 eslint-config(代码规范配置)、frontend-components-config(前端组件配置)以及各类 client(客户端库)。这意味着恶意代码可能不仅存在于业务逻辑中,还可能渗透到构建工具和基础依赖中,增加了检测和清理的难度。
  3. 广泛依赖链@redhat-cloud-services/frontend-components 等包是许多基于 RedHat OpenShift 或 Red Hat Single Sign-On 构建的应用的基础,一旦这些基础库被污染,上层应用可能间接引入恶意载荷。

关键要点

  • 受影响范围广泛:超过 30 个 NPM 包受到波及,涵盖了从前端 UI 组件、客户端 SDK 到内部开发工具(如 ESLint 配置、TypeScript 转换器)的全方位模块。
  • 特定版本风险:并非所有版本都受影响,开发者需严格检查 package-lock.jsonyarn.lock 文件,确认是否安装了上述列出的具体版本号。
  • 供应链安全警示:此事件再次证明了开源供应链攻击的隐蔽性和破坏力。即使是大厂如 RedHat,其发布流程也可能成为攻击目标。
  • 即时行动建议
    • 立即扫描项目依赖,识别是否使用了上述受影响版本。
    • 如果使用了受影响版本,应尽快升级至最新的非受影响版本,或联系 RedHat 官方获取安全补丁。
    • 检查 CI/CD 日志,确认是否有异常构建活动。

意义与影响

1. 对开发者的影响

对于使用 RedHat Cloud Services 技术栈的前端和全栈开发者而言,此次事件意味着潜在的安全风险。如果恶意代码包含数据窃取、后门植入或恶意网络请求等功能,依赖这些包的应用可能会泄露敏感数据或成为僵尸网络的一部分。开发者需要立即进行依赖审计,这增加了日常维护的工作量。

2. 对企业安全架构的影响

企业级应用通常依赖稳定的第三方库。此次事件暴露了供应链信任模型的脆弱性。企业可能需要重新评估其第三方依赖管理策略,例如引入更严格的软件物料清单(SBOM)扫描、使用私有 NPM 代理并定期同步官方源以检测篡改,以及实施更严格的代码签名验证机制。

3. 对开源生态的警示

RedHat 作为开源领域的巨头,其 NPM 包被劫持是一个严重的信号。它表明攻击者正在将目光从个人开发者转向大型企业和知名开源项目,以期获得更大的破坏力和更隐蔽的传播路径。这一事件将推动社区更加重视 NPM 等包管理平台的发布安全机制,例如强制启用双因素认证(2FA)、限制发布权限以及加强发布后的完整性校验。

4. 后续追踪

目前,StepSecurity 已公开了受影响包的详细列表。RedHat 官方需尽快发布安全公告,提供修复版本或临时解决方案。安全社区将持续监控这些包的后续动态,任何新的异常行为都应及时上报。开发者应密切关注 RedHat 官方安全博客及 StepSecurity 的后续更新。

查看原文 →github.com