npm 再遭恶意软件攻击,AntV 命名空间被攻破,开发者需加强防御!
npm 遭受恶意软件攻击开发者需检查软件包安全专家表示此次有史以来最大规模的事件给开发者敲响了警钟他们应立即检查软件包的安全性。全球最大的开源软件包注册表 npm 又遭受了一次快速传播的恶意软件攻击此次攻击的目标是广泛使用的企业级数据可视化工具 AntV。与上周针对 TanStack 的那次备受瞩目的 npm 攻击不同上次攻击利用了复杂的 GitHub Actions 缓存投毒漏洞而 5 月 19 日凌晨的这次最新攻击采用了更为传统的方式即窃取了一个高价值 npm 维护者账户的凭证。攻击者发布大量恶意版本AntV 命名空间被攻破据 SafeDep 分析涉事账户 atoolihust.cc负责发布 timeago.js JavaScript 库该账户有权管理大量软件包其中包括一些热门工具如 size - sensor每月下载量 420 万次、echarts - for - react380 万次、antv/scale220 万次和 timeago.js115 万次。凭借这种权限攻击者在短短 22 分钟内就发布了至少 637 个恶意版本涉及 317 个不同的 npm 软件包。这导致阿里巴巴的 AntV 命名空间大面积被攻破AntV 是一个在亚洲、美国和欧洲不断发展的平台用于构建仪表盘、用户界面和交互式应用程序。今年 npm 供应链攻击趋势严峻Aikido Security 在分析中指出今年针对 npm 供应链的攻击呈现出严峻的趋势。“这是我们追踪到的第三波重大攻击。从 4 月针对少数 SAP 软件包的攻击到 TanStack 攻击浪潮中的 169 个软件包再到现在数量更多的软件包。每一波攻击都比上一波更快、影响范围更广。”“噩梦重演”恶意软件窃取令牌与凭证任何不幸感染了这些恶意软件包的用户都会被 Mini - Shai - Hulud 蠕虫盯上。该蠕虫的源代码最近在 GitHub 上被短暂分享给了其他犯罪分子。其目的是窃取 npm 和 GitHub 令牌以及来自 130 个文件路径的凭证包括多个云平台、Kubernetes、Docker、Hashicorp、密码保险箱、SSH 密钥和比特币钱包等。出于未知原因攻击者随后利用窃取的 CI/CD 令牌将窃取的数据存储在以科幻小说《沙丘》为主题的公共 GitHub 仓库中。在攻击发生后的几个小时内这些仓库的数量就增加到了 2500 个。每个仓库的描述中都包含字符串 “niagA oG eW ereH :duluH - iahS”即 “Shai - Hulud: Here We Go Again” 的倒序。理论上该恶意软件还能够通过安装在 ~/.local/share/kitty/cat.py 的基于 Python 的后门实现持久化。不过据安全公司 Wiz 称这一功能目前似乎尚未激活。此次攻击背后的团队 TeamPCP 野心勃勃该恶意软件甚至试图修改 Claude Code 的 settings.json 文件这样即使受感染的 npm 软件包被移除恶意软件也能凭借完整的大语言模型LLM权限悄悄恢复。后续措施开发者需谨慎对待剩余软件包攻击被发现后AntV 的维护者在 GitHub 上发布了以下警告“由于受到外部蠕虫攻击的影响与 AntV 相关的 npm 软件包已被攻破。受感染的软件包已被删除其余软件包已被标记为弃用。” 警告内容还提到“建议用户仔细甄别并下载最新版本。AntV 正在积极联系 npm 注册表以移除这些弃用的软件包。”也就是说虽然恶意版本已被删除但对于剩余的软件包仍需格外谨慎这也促使开发者对软件包进行审计并迁移到已知的安全版本。由于此次攻击感染了同一库的多个版本确定一个已知的安全版本并非易事。开发者可以参考 SafeDep 发布的受影响软件包列表以 .csv 文件形式提供不过可以肯定的是如果正在使用 AntV 库的任何版本都有被感染的风险。除此之外建议开发者检查 CI/CD 环境和仓库是否存在被攻击的迹象并轮换所有凭证。但专家给出的最重要建议其实很简单通过加强监控和软件包验证增强对未来针对 npm 攻击的防御能力。关键词网络攻击、网络犯罪、安全、开发工具、软件开发