当前位置: 首页 > news >正文

热点供应链投毒预警 | 知名NPM开发者遭受邮件钓鱼引发大规模供应链投毒攻击

SBOM情报概述

Summary

昨日(2025.09.08),悬镜供应链安全情报中心在NPM官方仓库中检测到21个知名组件主模块入口文件遭受混淆代码植入的潜在攻击事件,经过进一步深入分析发现,该事件是由于项目维护者遭受仿冒NPM官方邮件(support@npmjs.help)钓鱼导致开发者凭证被盗取引发的大规模NPM组件包投毒攻击,其中来自开发者qix(i.am.qix@gmail.com)维护的18个超高下载量组件全部遭受恶意混淆代码植入,影响范围极大。

该系列投毒攻击使用的混淆恶意代码片段大小~75KB,以单行代码植入的方式插入到组件主模块入口文件头部或尾部,从而实现在组件加载时触发执行恶意代码,恶意代码主要功能是一个基于浏览器的网络流量拦截替换器,通过劫持JS XMLHttpRequest和fetch对象底层网络数据收发API来攻击安装 MetaMask 浏览器数字钱包扩展的用户,恶意代码会在数字钱包(主要包括比特币、以太坊、Solana、莱特币等)交易时拦截流量并将原始钱包接收者地址替换为攻击者内置的钱包地址,从而实现盗币目的。

此次大规模投毒影响的NPM组件包如下所示,截至目前以下所有存在投毒版本的组件都已被NPM官方下架处理。悬镜安全已于第一时间将该系列组件投毒技术分析细节向XSBOM供应链安全情报订阅用户进行推送预警。

受代码投毒影响组件列表

投毒分析

Poisoning Analysis

1

混淆恶意代码植入

以 is-arrayish 组件为例,在0.3.3版本中,攻击者在主模块入口文件index.js文件尾部植入混淆恶意js代码,代码以单行方式植入主要目的是为了利用编辑器默认不换行的特点避免混淆代码被大范围暴露给开发者。

如下所示,该系列投毒攻击使用的混淆恶意代码片段实际大小达到近75KB字节。

混淆恶意代码

混淆代码还原后,通过代码分析可知其主要功能是一个针对MetaMask数字钱包浏览器扩展的钱包地址拦截替换器。

恶意代码混淆还原

2

MetaMask数字钱包环境检测

恶意代码主要攻击目标是安装了MetaMask 浏览器数字钱包扩展的用户,通过 checkethereumw() 函数来检测当前浏览器是否安装了MetaMask扩展。

MetaMask环境检测

3

浏览器网络数据hook拦截

恶意代码通过hook劫持JS XMLHttpRequest和fetch对象底层网络数据收发API(包括open、send、request等)实现在MetaMask 数字货币交易时拦截流量并将原始钱包接收者地址替换为攻击者内置的钱包地址。

网络数据劫持

4

数字钱包交易地址替换劫持

对于MetaMask 数字货币进行以太坊交易时,其目标转账地址最终会被替换为攻击者内置地址:0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976。

钱包转账地址替换

5

IoC 数据

本文分析所涉及的恶意IoC数据如下表所示:

该系列投毒NPM包信息(purl格式)汇总如下:

pkg:npm/is-arrayish@0.3.3pkg:npm/backslash@0.2.1pkg:npm/chalk-template@1.1.1pkg:npm/supports-hyperlinks@4.1.1pkg:npm/has-ansi@6.0.1pkg:npm/simple-swizzle@0.2.3pkg:npm/color-string@2.1.1pkg:npm/error-ex@1.3.3pkg:npm/color-name@2.0.1pkg:npm/slice-ansi@7.1.1pkg:npm/color-convert@3.1.1pkg:npm/wrap-ansi@9.0.1pkg:npm/ansi-regex@6.2.1pkg:npm/supports-color@10.2.1pkg:npm/strip-ansi@7.1.1pkg:npm/chalk@5.6.1pkg:npm/debug@4.4.2pkg:npm/ansi-styles@6.2.2pkg:npm/proto-tinker-wc@0.1.87pkg:npm/prebid-universal-creative@1.17.3pkg:npm/prebid.js@10.9.2

排查方式

Investigation Method

以 is-arrayish 恶意组件为例,开发者在项目目录下可通过命令 npm list is-arrayish 或 npm list -g is-arrayish 查询是否已安装存在投毒代码的组件版本(0.3.3),如果已安装请立即使用 npm install is-arrayish@0.3.2 或 npm install -g is-arrayish@0.3.2 回滚到最新安全版本。

此外,也可使用 OpenSCA-cli 工具将受影响的组件包按如下示例保存为db.json文件,直接执行扫描命令(opensca-cli -db db.json -path ${project_path}),即可快速获知您的项目是否受到投毒包影响。

[{"product": "is-arrayish","version": "[0.3.3]","language": "javascript","id": "XMIRROR-MAL45-6B4D731B","description": "NPM组件is-arrayish在0.3.3版本中存在恶意代码投毒,攻击MetaMask浏览器数字钱包应用,替换劫持数字货币转载地址","release_date": "2025-09-09"}]


该系列组件投毒涉及XSBOM情报ID列表如下所示,悬镜OpenSCA、悬镜源鉴SCA、悬镜灵脉SAST、悬镜灵脉RASP等产品已支持检测,成功订阅该情报后可在检测命中时检出。

XMIRROR-MAL45-6B4D731BXMIRROR-MAL45-850E50D0XMIRROR-MAL45-5C01E9C8XMIRROR-MAL45-4280ED9XMIRROR-MAL45-F171E5BCXMIRROR-MAL45-A05B9EB8XMIRROR-MAL45-A965517CXMIRROR-MAL45-461BCCA1XMIRROR-MAL45-EB0F0556XMIRROR-MAL45-17AFE36DXMIRROR-MAL45-8D112814XMIRROR-MAL45-3EFD9D2AXMIRROR-MAL45-BEFDBA6CXMIRROR-MAL45-30F53A05XMIRROR-MAL45-3CF20A35XMIRROR-MAL45-AD32C866XMIRROR-MAL45-27B9104BXMIRROR-MAL45-E7940B5XMIRROR-MAL45-9A53CA3XMIRROR-MAL45-576DC333XMIRROR-MAL45-AE318CBF

悬镜源鉴SCA投毒组件检出验证

悬镜供应链安全情报中心是国内首个数字供应链安全情报研究中心。依托悬镜安全团队强大的供应链SBOM管理与监测能力和AI安全大数据云端分析能力,悬镜云脉XSBOM数字供应链安全情报预警服务通过对全球数字供应链投毒情报、漏洞情报、停服断供情报等进行实时动态监测与溯源分析,可为用户智能精准预警“与我有关”的数字供应链安全情报,提供情报查询、情报订阅、可视化关联分析等企业级服务。


文章转载自:

http://BnErFFFP.tqLyb.cn
http://40Xd4v6X.tqLyb.cn
http://saQ10tqH.tqLyb.cn
http://2y5Z2YhP.tqLyb.cn
http://9OUG4yqL.tqLyb.cn
http://Gmt7vIVU.tqLyb.cn
http://DsTqFqeD.tqLyb.cn
http://OHEcug90.tqLyb.cn
http://NvUjSwda.tqLyb.cn
http://DG53Zj1g.tqLyb.cn
http://khZPzXvb.tqLyb.cn
http://qezhlQQn.tqLyb.cn
http://PObWSE3p.tqLyb.cn
http://gmY8v29T.tqLyb.cn
http://qyzdgj2m.tqLyb.cn
http://8ETW99vX.tqLyb.cn
http://B9Eb7VO7.tqLyb.cn
http://YNDcmGQq.tqLyb.cn
http://BwGAa6Km.tqLyb.cn
http://xTHfxpw4.tqLyb.cn
http://4oj2vSVb.tqLyb.cn
http://t0lJOX5V.tqLyb.cn
http://1NS7jyme.tqLyb.cn
http://SevRMUKh.tqLyb.cn
http://5kZSvHT5.tqLyb.cn
http://wmtE3Oyh.tqLyb.cn
http://xDbdGH3L.tqLyb.cn
http://6YwZiyer.tqLyb.cn
http://neu0GyYp.tqLyb.cn
http://IFZiREI9.tqLyb.cn
http://www.dtcms.com/a/385951.html

相关文章:

  • 机器学习-NLP中的微调
  • uniapp+<script setup lang=“ts“>单个时间格式转换(format)
  • 第8篇、Kafka 监控与调优实战指南
  • R 语言查看类库源码的方法
  • 理解并发编程:自旋锁、互斥锁与读写锁的解析
  • Java 大视界 -- Java 大数据在智能安防视频监控系统中的视频内容理解与智能预警升级
  • 腾讯元宝 Java 中的 23 种设计模式(GoF 设计模式)
  • Excel:根据数据信息自动生成模板数据(多个Sheet)
  • hibernate和mybatis的差异,以及这种类似场景的优缺点和选择
  • 设计模式之:观察者模式
  • 【pycharm】ubuntu24.04 安装配置index-tts及webdemo快速上手
  • Java 设计模式——观察者模式:从 4 种写法到 SpringBoot 进阶
  • “光敏” 黑科技:杜绝手机二维码读取时的 NFC 误触
  • AIGC(生成式AI)试用 36 -- shell脚本(辅助生成)
  • 【计算机网络 | 第17篇】DNS资源记录和报文
  • Flowise安全外网访问指南:基于cpolar的隧道配置详解
  • MySQL OCP认证[特殊字符]Oracle OCP认证
  • Springboot使用Freemark模板生成XML数据
  • 【数据工程】 10. 半结构化数据与 NoSQL 数据库
  • HarmonyOS应用开发:深入ArkUI声明式开发与性能优化实践
  • Vue: 组件注册
  • 408考研计算机网络第38题真题解析(2024)
  • Uni-app 生命周期全解析
  • JavaEE开发技术(第一章:Servlet基础)
  • 【数据结构】跳表
  • 设计模式-桥接模式02
  • Linux 基础命令详解与学习笔记
  • 设计模式(C++)详解——桥接模式(2)
  • 鹧鸪云光储流程系统:以智能仓储管理,驱动项目高效协同
  • DIY Linux 桌面:WiFi 管理器