npm史上最大规模垃圾包攻击之一:15万恶意包被用于“挖矿”

IT之家
Nov 17, 2025

IT之家 11 月 17 日消息,亚马逊 11 月 13 日披露了“开源注册表历史上规模最大的包泛滥事件之一”,但这次攻击方式与以往投毒挂马、窃取凭证、植入勒索软件等手法不同,而是通过虚拟代币以实现牟利。

Amazon Inspector 安全研究人员在全新的检测规则与 AI 协助下,于 10 月下旬首次发现可疑的 npm 软件包,并在 11 月 7 日前已标记出数千个。到 11 月 12 日,团队在来自“多个”开发者账号中累计发现超过 15 万个恶意软件包。

这些恶意包被指与一场协调实施的 tea.xyz 代币挖取活动相关。tea.xyz 是一个去中心化协议,旨在通过 TEA 代币奖励开源开发者的贡献,该代币用于激励、质押与治理等生态用途。

据介绍,攻击者在 npm 注册表中注入了超过 15 万个恶意包,这些恶意包含有自我复制代码,能够让被感染的软件包自动生成并发布新包,从而借助合法开源开发者的生态获得加密货币奖励。IT之家从亚马逊获悉,相关代码中还包含指向攻击者控制的钱包地址的 tea.yaml 文件,而用户在使用这些软件包时完全不知情地为攻击者“充值”。

亚马逊安全研究人员警告,此类攻击不仅消耗注册表资源、降低开源社区信任度,还可能激发类似的金融驱动型自动化包生成攻击。

亚马逊正与开放源码安全基金会(OpenSSF)合作,对相关包采取响应措施,并将新发现的恶意包提交至 OpenSSF 的恶意包仓库。据称,每个被提交的软件包平均在 30 分钟内都会获得 MAL-ID 标识。

AWS 的研究人员 Chi Tran 和 Charlie Bacon 表示:“此事件显示了威胁形态的持续演变,金融激励正在以前所未有的规模推动注册表污染,也凸显了业界与社区协作在保护软件供应链中的关键性。”

Tran 和 Bacon 指出,尽管这次攻击未使用窃密或其他恶意程序,但仍带来多方面风险,包括向 npm 注册表大量灌入低质量、无功能的软件包,侵蚀本已承受巨大安全压力的开源社区信任。此外,注册表的基础设施、带宽与存储会被这些以牟利为目的的软件包占用,挤压真正贡献者所需的资源。

他们也警告称,“这场活动的成功可能会激发类似方式对其他基于奖励的系统进行滥用,使以获利为目的的自动化包生成行为被进一步常态化。”

作为供应商,亚马逊建议防御者使用其工具检查开发环境中是否存在与 tea.xyz 代币挖取活动相关的软件包。但移除低质量、不具功能的软件包、加固供应链,包括使用软件物料清单(SBOM)以及隔离 CI / CD 环境,始终是提升安全性的通用做法。

Disclaimer: Investing carries risk. This is not financial advice. The above content should not be regarded as an offer, recommendation, or solicitation on acquiring or disposing of any financial products, any associated discussions, comments, or posts by author or other users should not be considered as such either. It is solely for general information purpose only, which does not consider your own investment objectives, financial situations or needs. TTM assumes no responsibility or warranty for the accuracy and completeness of the information, investors should do their own research and may seek professional advice before investing.

Most Discussed

  1. 1
     
     
     
     
  2. 2
     
     
     
     
  3. 3
     
     
     
     
  4. 4
     
     
     
     
  5. 5
     
     
     
     
  6. 6
     
     
     
     
  7. 7
     
     
     
     
  8. 8
     
     
     
     
  9. 9
     
     
     
     
  10. 10