恶意软件包 - 恶意代码 - npm 恶意软件

2025年恶意软件包回顾:恶意代码和NPM恶意软件趋势

恶意代码和恶意软件包在2025年持续渗透开源生态系统。Xygeni的研究人员在每周和每月的报告中证实了这一点。 3,180 个恶意软件包, 包括大规模 npm恶意软件攻击活动 由自动化多版本发布、DevTools 冒充和供应链滥用攻击等因素驱动 CI/CD pipeline以及开发人员工作流程。

这份年度回顾汇总了所有已确认的信息。 恶意包 报告指出,2025 年检测到的主要威胁家族、攻击者行为以及用于绕过注册表控制和传统安全工具的规避技术。

2025年:年度数据概览 

  • 3,180个已确认的恶意软件包 全年
  • 持续增长 npm恶意软件活动
  • 强大的自动化驱动型发布和重复的家庭重新上传
  • 活动最活跃的月份: 十月、十一月、十二月
  • 转向 enterprise-style 和 DevTools 模拟

这些趋势共同证实了这一点。 通过软件包生态系统传播恶意代码已变得持久、可扩展且产业化。.

每月亮点回顾

一月/三月
早期浪潮 恶意包 由自动化发布和依赖关系混乱式有效载荷驱动。

四月/六月
扩展 域名抢注和版本膨胀恶意代码 几乎与合法软件包完全相同的克隆版本。

七月/九月
产量较低但工艺更精湛,尤其如此。 CI/CD面向 npm 的恶意软件 以及遥测式模拟库。

十月/十二月——活动高峰期
大规模协调波浪:

  • 多版本 恶意包
  • 工具和解析器主题的恶意软件家族
  • 大规模自动化版本泵送
  • 经常性 npm恶意软件集群

自动化多版本出版 

2025年全年,攻击者将严重依赖自动化技术。 pipeline生成了数十个连续的 恶意软件包版本 它们的有效载荷仅有极小的变化。因此,大型多版本集群成为年度最稳定的攻击模式之一。值得注意的恶意家族包括: let1x*, 零行动, 插件-senna, vitor-js@ikarem/遥测.

实际上,这一策略实现了三个明确的目标:
首先,为了规避启发式或基于模式的检测;
其次,通过反复发布版本人为地提高软件包的可信度;
最后,目的是压倒防守方,降低人工审查流程的有效性。

冒充内部人员和 Enterprise 工装

另外,很多 恶意包 故意模仿私有 SDK、管理工具、遥测库和 CI/CD 扩展名。由于这些名称看起来合法且熟悉,它们很容易融入其中。 enterprise 环境和开发者工作流程。

典型例子包括 私有内部 SDK, baas-admin-sdk, stitch-ui-toolboxpaypal-scripts-server-utils因此,这一趋势证实了一种明显的战略转变:攻击者越来越倾向于入侵目标。 开发人员和自动化环境而不是直接针对最终用户。

版本膨胀作为一种规避策略

此外,在多个方面 npm恶意软件家族攻击者反复滥用 版本膨胀技术这其中包括夸大的发行数量,例如: 99.x 或 9999.x快速增量补丁序列和虚假的“内部发布”版本控制规范。本质上,其目标是绕过 基于声誉的信任模型 依赖于成熟度、年龄或出版历史。

对安全和工程团队的影响

综合来看,这些行为表明,到2025年,供应链风险将发生结构性转变。攻击现在 持久的、自动化的、可操作的这意味着传统的注册表保护措施已不足以应对安全威胁。此外,恶意软件越来越多地针对这些目标。 CI/CD 工作流程、构建环境和开发人员工具而不是应用程序运行时层。

因此,有效的防御需要多种因素的结合。 连续监测, 行为驱动检测情境感知风险评分同样,补救工作流程也应直接嵌入到开发过程中。 pipeline这样就能在威胁扩散到其他环境之前,检测并遏制它们。

我们如何检测 npm 恶意软件和 PyPI 恶意软件中的恶意代码

Xygeni 使用多层技术在恶意代码传播前将其拦截。首先,静态代码分析可以检测混淆模式、隐藏的有效载荷和脚本滥用。此外,行为沙盒分析可以安装 hooks、运行时命令和持久性技巧。此外,机器学习检测可以识别签名扫描器遗漏的零日漏洞 npm 恶意软件和 pypi 恶意软件变种。最后,预警系统实时监控公共存储库,验证发现并立即向 DevOps 团队发出警报。

因此,这种组合确保开发人员能够快速获得可操作的情报,直接集成到 CI/CD 工作流程。

为什么开发人员应该关注恶意 npm 软件包

现代威胁很少等待运行时。例如,恶意 npm 包通常在安装过程中执行,而 pypi 恶意包则隐藏令牌泄露或后门。攻击者:

  • 将私有 GitHub 存储库翻转为公开以复制它们。
  • 使用编码的有效载荷窃取凭证和机密。
  • 使用混淆的 JavaScript 加载器来部署勒索软件或僵尸网络。

事实上,恶意开源软件包的数量在一年内激增了 156%。因此,仅依赖延迟反馈或基本扫描器的团队就会落后。

此恶意软件报告在 npm 和 PyPI 中追踪的内容

本摘要是以下内容的中心枢纽:

  • 已确认存在恶意 npm 软件包
  • 已确认的 pypi 恶意软件包
  • 基于行为的恶意代码检测
  • 登记处确认的事件
  • 每周和每月恶意软件报告摘要
  • 所有 npm 恶意软件和 pypi 恶意软件发现的历史更新日志

换句话说,它提供了一个单一的参考点。Xygeni 的研究团队每周更新此页面,提供完整技术分析和 GitHub IOC 的链接。

如何防范恶意 npm 包和 PyPI 恶意软件

由于这种风险日益增长,组织需要的不仅仅是基本的依赖项检查。要有效防御恶意 npm 包和 pypi 包,需要预防性控制和运行时强制措施:

强制使用 Lockfile 安装恶意 npm 包

绝大部分储备使用 npm ci or pip install --require-hashes in CI/CD.
这确保了使用 lockfiles 中定义的精确依赖关系树。这样一来,攻击者就无法植入经过修改或域名抢注的恶意 npm 包版本。

安装前扫描 npm 恶意软件和 PyPI 恶意软件

集成 Xygeni 的早期预警引擎,在软件包到达您的环境之前扫描 npm 恶意软件和 pypi 恶意软件。
此外,检测可疑 postinstall 脚本、混淆的加载器或硬编码的 C2 URL。

Guardrails 阻止恶意代码的构建

米 guardrails 如果检测到确认的恶意 npm 包或 pypi 恶意包,则构建将自动失败。
例如,在维护者、混淆模式或 IOC 匹配的软件包上进行中断构建。因此,恶意代码永远不会被忽视。

生成并验证 SBOM防范恶意 npm 软件包和 PyPI 恶意软件

创建 SBOMs(CycloneDX、SPDX)适用于每个构建。
然后,与已知的恶意 npm 包和 pypi 恶意软件源进行比较,以跟踪直接和传递依赖关系。

保护凭证和令牌免受 npm 恶意软件和 PyPI 恶意软件的侵害

许多恶意 npm 包试图读取 .npmrc, .pypirc或环境变量。
因此,请在强化容器中运行构建,尽量减少机密信息泄露。此外,请使用机密管理器而非环境变量来阻止恶意代码滥用。

监控恶意 npm 包中的注册表和维护者更改

攻击者经常劫持被废弃的项目。
特别要注意突然的维护者交换、不寻常的版本跳跃或 npm 恶意软件和 pypi 恶意软件包中的过度发布。

关于检测 npm 和 PyPI 中的恶意代码的开发人员培训

教导团队发现危险信号,例如:

  • 包含拼写错误的软件包名称(reqeust 而不是 request).
  • 异常 install or prepare 脚本。
  • 最近创建的软件包版本号可疑地高。
    最重要的是,这种意识有助于及早发现恶意代码。

恶意 npm 包和 PyPI 恶意软件的运行时异常检测

即使恶意软件绕过静态检查,运行时检测 CI/CD 可以捕捉:

  • 意外的网络连接。
  • 文件系统修改超出预期目录。
  • 跨工作持久性尝试。
    最后,这确保了 npm 恶意软件和 pypi 恶意软件威胁即使在安装后也会被阻止。

通过结合这些控制措施,团队可以防止恶意 npm 包和 pypi 恶意包进入生产环境 pipelines.

尝试 Xygeni 的恶意软件检测工具

Xygeni 提供:

  • 实时检测恶意代码,包括后门、间谍软件和勒索软件。
  • 与基本扫描器相比,可跨 npm、PyPI、Maven、NuGet、RubyGems 等进行分析。
  • 当恶意软件报告识别出风险时自动阻止构建。
  • 可利用性洞察、维护者声誉检查和异常检测。

最新资讯

我们的团队每周都会更新此页面。如需接收提醒和详细报告,请执行以下操作:

  • 订阅我们 资讯订阅
  • 关注 @XygeniSecurity 在Linkedin上
  • 收藏此页面以跟踪最新信息 npm 恶意软件 以及 pypi恶意软件 威胁
sca-tools-软件-成分分析工具
确定软件风险的优先级、进行补救并加以保护
7-day免费试用
无需信用卡

保护您的软件开发和交付

使用 Xygeni 产品套件