「威胁情报」新一波恶意 npm 软件包威胁 Kubernetes 配置和 SSH 密钥插图

引言

最近,网络安全研究人员在 npm 软件包注册表中发现了一批新的恶意软件包,这些软件包旨在将 Kubernetes 配置和 SSH 密钥从受感染的计算机窃取到远程服务器。这种威胁给开发人员和系统安全性带来了严重的风险。

恶意软件包发现

Sonatype 是一家专注于软件供应链安全的公司,他们表示目前已经发现了14个不同的 npm 包,其中包括@am-fe/hooks、@am-fe/provider、@am-fe/request、@am-fe/utils、@am-fe/watermark、@am-fe/watermark-core、@dynamic-form-components/mui、@dynamic-form-components/shineout、@expue/app、@fixedwidthtable/fixedwidthtable、@soc-fe/use、@spgy/eslint-plugin-spgy-fe、@virtualsearchtable/virtualsearchtable 和亮点。

这些恶意软件包伪装成常用的 JavaScript 库和组件,如 ESLint 插件和 TypeScript SDK 工具。但事实上,安装后它们会运行混淆代码,并从目标计算机收集和窃取敏感文件。

受影响的数据和域

除了窃取 Kubernetes 配置和 SSH 密钥外,这些恶意软件包还能够收集系统元数据,如用户名、IP 地址和主机名,并将这些信息传输到一个名为 app.thretest[.]com 的域。

类似攻击事件

在不久之前,Sonatype 还发现了一批伪造的 npm 软件包,这些软件包使用一种称为依赖性混淆的技术,冒充 PayPal Zettle 和 Airbnb 开发人员所用的内部软件包。这显示出威胁行为者正在继续利用各种新型恶意软件对开源注册表(如 npm 和 PyPI)进行加密劫持、信息窃取等供应链攻击,以危害开发人员系统并最终影响整个软件供应链。

案例分析

Phylum 提供了一些具体案例进行分析。其中一个案例涉及一个名为 Hardhat-gas-report 的 npm 模块,该模块在过去的八个多月里一直保持良性,但在2023年9月1日接连两次更新后,包含了恶意代码。这段 JavaScript 代码能够泄露复制到剪贴板的以太坊私钥到远程服务器。该事件显示出威胁行为者对加密货币安全性有深入了解,并且目标是获取和泄露敏感的加密密钥,以非法访问以太坊钱包或其他安全数字资产。

另一个案例涉及一个名为 gcc-patch 的狡猾的 npm 软件包,它伪装成定制的 GCC 编译器。然而,实际上它隐藏了一个加密货币矿工,这个矿工利用无辜开发人员的计算能力来挖掘加密货币,并以牺牲他们自身利益为代价获取利益。

攻击的多样化

值得注意的是,这种供应链攻击的活动已经多样化,覆盖了 JavaScript(npm)、Python(PyPI)和 Ruby(RubyGems)等生态系统。威胁行为者上传了多个具有数据收集和渗透功能的软件包,并通过发布携带恶意负载的新版本来持续进行攻击。此外,这种活动还专门针对苹果 macOS 用户,这表明恶意软件在开源软件包存储库中不仅越来越普遍,而且还针对除了 Windows 之外的其他操作系统。

Phylum 在分析报告中指出:“这些软件包的作者正针对软件开发人员展开广泛的攻击行动,我们尚不清楚他们最终的目标是什么。”

网络安全一直是一个需要高度关注和防范的领域,对于开发人员来说,确保软件供应链的安全性至关重要。及时更新和审查依赖项、采用多层次的安全措施以及定期进行安全审计都是必要的措施。同时,用户也应该保持警惕,只从可信的来源获取软件包,并及时监测和修复可能的漏洞和安全问题。