悬镜安全 02月22日
SBOM情报预警 | 恶意NPM组件窃取Solana智能合约私钥
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

悬镜安全情报中心捕获多起针对Solana智能合约用户的NPM投毒攻击,攻击者通过伪装成Solana SDK的恶意组件包,窃取Windows、Linux及Mac平台用户的合约私钥。这些恶意组件已在NPM官方仓库和国内镜像源传播,对开发者构成严重安全隐患。该恶意组件通过混淆代码,读取系统剪切板中的私钥,并将其发送到攻击者控制的Redis服务器。受害者众多,已有多名开发者的私钥被盗。建议开发者立即排查并卸载可疑组件,使用OpenSCA-cli工具检测项目是否受影响,并密切关注供应链安全情报。

🚨恶意投毒:攻击者在NPM仓库投放伪装成Solana智能合约SDK的恶意组件包,诱导开发者下载使用。

🔑私钥窃取:恶意组件通过混淆代码,在受害者电脑上读取剪切板数据,筛选并窃取Solana智能合约私钥。

📡数据外传:窃取的私钥通过ioredis模块发送到攻击者控制的Redis服务器,导致用户资产面临风险。

🛡️排查方法:通过npm list命令检查是否安装恶意组件,使用npm uninstall卸载,并使用OpenSCA-cli工具扫描项目。

原创 悬镜安全情报中心 2025-02-21 17:01 北京

供应链风险情报预警!悬镜供应链安全情报中心在NPM官方仓库中捕获多起针对Windows、Linux及Mac平台Solana智能合约用户开展私钥盗取投毒攻击。目前已有多名受害者私钥被盗。


SBOM情报概述

Summary

近日(2025.02.15 ~ 2025.02.19),悬镜供应链安全情报中心在NPM官方仓库(www.npmjs.com)中捕获多起针对Windows、Linux及Mac平台Solana智能合约用户开展合约私钥窃取的NodeJs组件投毒事件。投毒者(satoshinana11)在npmjs官方源上连续投放4个伪装成Solana智能合约SDK的NPM恶意组件包,并利用代码混淆技术对抗静态安全检测,已有多名NodeJs开发者受到投毒攻击导致合约私钥泄露。

截至目前,这些恶意组件仍正常托管在NPM官方源及国内各大主流镜像源,对于NPM开发者来说存在较大安全隐患。悬镜安全已于第一时间将该系列恶意投毒包的详细技术分析向XSBOM供应链安全情报订阅用户进行推送预警。


solana合约窃密恶意组件列表


根据NPM官方接口统计,该系列Solana合约私钥窃密投毒组件近一个月的总下载量约为455次。

恶意组件月度下载量


投毒分析

Poisoning Analysis

以 serum-anchor-wallet 恶意组件为例,该系列恶意组件将投毒代码经过混淆后嵌入到lib/app.js 代码文件中,并伪装成Solana智能合约SDK



恶意NPM包 serum-anchor-wallet


1

代码混淆

组件主模块入口 index.js 及 lib/app.js 代码文件如下所示,index.js 负责加载并执行 lib/app.js 文件中的混淆代码。


投毒组件恶意模块代码


对恶意代码文件 lib/app.js 混淆代码进行解码还原后如下所示,其主要功能是调用 child_process 模块读取系统剪切板中缓存的Solana智能合约私钥,并通过 ioredis 模块将窃取的私钥存储到投毒者控制的redis服务中。


恶意文件 app.js 混淆代码还原

2

合约私钥盗取







getQuryResult() 函数中负责针对Windows、MacOS以及Linux系统分别调用外部系统命令powershell Get-Clipboard、pbpaste和xclip读取剪切板数据。恶意代码通过设置定时器,每隔1秒钟调用 getQuryResult() 函数对剪切板进行实时监控。窃取的剪切板数据会进一步利用 isValidSolanaPrivateKey() 函数筛选出Solana智能合约私钥数据。


系统剪切板数据窃取

3

合约私钥外传




投毒代码一旦监控捕获到剪切板中的Solana智能合约私钥,会立即通过 ioredis 模块将私钥数据外传投递到投毒者控制的redis服务器(redis-12193.c259.us-central1-2.gce.redns.redis-cloud.com:12193)。

系统剪切板数据外传

投毒者控制的redis服务器解析IP地址为 34.28.66.214,利用密码可远程连接投毒者redis服务器,并发现多名受害者的合约私钥数据已被窃取。

投毒者redis服务器IP地址

投毒者redis服务器数据

受害者合约私钥数据

4

IoC 数据

本次捕获的Solana合约窃密系列NPM投毒组件包涉及的IoC数据如下表所示:


排查方式

Investigation Method

serum-anchor-wallet 恶意组件为例,开发者可通过命令 npm list serum-anchor-wallet 在项目目录下使用查询是否已安装存在恶意投毒的组件版本,如果已安装请立即使用 npm uninstall serum-anchor-wallet 进行卸载。此外还需关闭系统网络并排查系统是否存在异常进程。

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


[ { "product": "serum-anchor-wallet", "version": "[1.0.2, 1.0.3]", "language": "javascript", "id": "XMIRROR-MAL45-ED7D46DA", "description": "恶意NPM组件窃取Solana智能合约私钥", "release_date": "2025-02-18" }, { "product": "raydium-sdk-liquidity-init", "version": "[1.0.2]", "language": "javascript", "id": "XMIRROR-MAL45-CAEF758A", "description": "恶意NPM组件窃取Solana智能合约私钥", "release_date": "2025-02-15" }, { "product": "gas-fee-saver", "version": "[1.0.0, 1.0.1, 1.0.2]", "language": "javascript", "id": "XMIRROR-MAL45-A80F5C57", "description": "恶意NPM组件窃取Solana智能合约私钥", "release_date": "2025-02-13" }, { "product": "cors_error_preventor", "version": "[1.0.0]", "language": "javascript", "id": "XMIRROR-MAL45-CC46FBC5", "description": "恶意NPM组件窃取Solana智能合约私钥",     "release_date": "2025-02-12"    }]


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

推荐阅读


关于“悬镜安全”


悬镜安全,起源于子芽创立的北京大学网络安全技术研究团队“XMIRROR”,作为数字供应链安全和DevSecOps敏捷安全开拓者,始终专注于以“AI智能代码疫苗”技术为内核,凭借原创专利级“全流程数字供应链安全赋能平台+敏捷安全工具链+SBOM情报预警服务”的第三代DevSecOps数字供应链安全管理体系,创新赋能金融、车联网、通信、能源、政企、智能制造和泛互联网等行业用户,构筑起适应自身业务弹性发展、面向敏捷业务交付并引领未来架构演进的共生积极防御体系,持续守护中国数字供应链安全。

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

NPM投毒 Solana 供应链安全 私钥盗取
相关文章