
威胁情报:Solana 开源机器人盗币分析
来源:慢雾科技
原文链接:https://mp.weixin.qq.com/s/Tu5queqqz874swt6znwbtA
背景
在 2025 年 7 月初,慢雾安全团队接到一名受害用户的求助,请求协助分析其加密资产被盗的原因。调查发现,事件源于该用户使用了一个托管在 GitHub 上的开源项目 zldp2002/solana-pumpfun-bot,进而触发了隐蔽的盗币行为,详情见GitHub 热门 Solana 工具暗藏盗币陷阱。
近期,又有用户因使用类似的开源项目 —— audiofilter/pumpfun-pumpswap-sniper-copy-trading-bot,导致加密资产被盗,并联系到慢雾安全团队。对此,团队进一步深入分析了该攻击手法。
分析过程
静态分析
我们首先通过静态分析的方式,寻找攻击者设置的陷阱。经分析,发现可疑代码位于 /src/common/config.rs 配置文件中,主要集中在 create_coingecko_proxy() 方法内:
在 import_env_var() 方法中,主要用于获取 .env 文件中的环境变量配置信息。
调用过程中,如果环境变量存在,则直接返回;若不存在,则进入 Err(e) 分支,打印错误信息。由于存在无退出条件的 loop {} 循环,会导致资源持续消耗。
回到 import_wallet() 方法,当其中调用 import_env_var() 获取到 PRIVATE_KEY(私钥)后,恶意代码会对私钥长度进行判断:
-
若私钥长度小于 85,恶意程序将打印错误信息,并由于存在无退出条件的 loop {} 循环,会导致资源持续消耗,恶意程序无法正常退出;
-
若私钥长度大于 85,则使用 Solana SDK 将该 Base58 字符串转换为 Keypair 对象,其中包含私钥信息。
随后,恶意代码使用 Arc 对私钥信息进行封装,以支持多线程共享。
回到 create_coingecko_proxy() 方法,在成功获取私钥信息后,恶意代码接着对恶意 URL 地址进行解码。
该方法首先获取编码后的 HELIUS_PROXY(攻击者服务器地址)这一硬编码常量。
随后,恶意代码使用 bs58 对 HELIUS_PROXY(攻击者服务器地址)进行解码,将解码结果转换为字节数组,并通过 from_utf8() 将该字节数组进一步转为 UTF-8 字符串。
通过编写脚本可还原出 HELIUS_PROXY 解码后的真实地址如下:
http://103.35.189.28:5000/api/wallets
恶意代码在成功解码出 URL (http://103.35.189.28:5000/api/wallets) 后,首先创建一个 HTTP 客户端,将获取到的私钥信息 payer 使用 to_base58_string() 转换为 Base58 字符串。
随后,恶意代码构造 JSON 请求体,并将转换后的私钥信息封装其中,通过构建 POST 请求,将私钥等数据发送至上述 URL 所指向的服务器,同时忽略响应结果。
无论服务器返回何种结果,恶意代码仍会继续运行,以避免引起用户察觉。
此外,create_coingecko_proxy() 方法中还包含获取价格等正常功能,用以掩盖其恶意行为;该方法名称本身也经过伪装,具有一定的迷惑性。
通过分析可知,create_coingecko_proxy() 方法在应用启动时被调用,具体位于 main.rs 中 main() 方法的配置文件初始化阶段。
在配置文件 src/common/config.rs 的 new() 方法中,恶意代码首先加载 .env 文件,随后调用 create_coingecko_proxy() 方法。
据分析,该服务器的 IP 地址位于美国。
(https://www.virustotal.com/gui/ip-address/103.35.189.28)
观察到该项目在 GitHub 上于近期(2025 年 7 月 17 日)进行了更新,主要更改集中在 src 目录下的配置文件 config.rs 中。
在 src/common/config.rs 文件中,可以看到 HELIUS_PROXY(攻击者服务器地址)的原地址编码已被替换为新的编码。
使用脚本对原地址编码进行解码后,可获得原服务器地址。
// 原地址编码 HELIUS_PROXY: 2HeX3Zi2vTf1saVKAcNmf3zsXDkjohjk3h7AsnBxbzCkgTY99X5jomSUkBCW7wodoq29Y// 解码得到的原服务器地址https://storebackend-qpq3.onrender.com/api/wallets
动态分析
为了更直观地观察恶意代码的盗窃过程,我们采用动态分析方法,编写了一个 Python 脚本,用于生成测试用的 Solana 公私钥对。
同时,我们在服务器上搭建了一个能够接收 POST 请求的 HTTP 服务器。
编写 Python 脚本生成测试服务器对应的编码,并将其替换原攻击者设置的恶意服务器地址编码,即 HELIUS_PROXY(攻击者服务器地址)处。
随后,将 .env 文件中的 PRIVATE_KEY(私钥)替换为刚生成的测试私钥。
接下来,启动恶意代码并观察服务器端接口的响应。
我们可以看到,测试服务器成功接收到了恶意项目发送的 JSON 数据,其中包含 PRIVATE_KEY(私钥)信息。
入侵指标(IoCs)
IPs:
103.35.189.28
Domains:
storebackend-qpq3.onrender.com
SHA256:
-
07f0364171627729788797bb37e0170a06a787a479666abf8c80736722bb79e8 – pumpfun-pumpswap-sniper-copy-trading-bot-master.zip
-
ace4b1fc4290d6ffd7da0fa943625b3a852190f0aa8d44b93623423299809e48 – pumpfun-pumpswap-sniper-copy-trading-bot-master/src/common/config.rs
恶意仓库:
https://github.com/audiofilter/pumpfun-pumpswap-sniper-copy-trading-bot
类似实现手法:
-
https://github.com/BitFancy/Solana-MEV-Bot-Optimized
-
https://github.com/0xTan1319/solana-copytrading-bot-rust
-
https://github.com/blacklabelecom/SAB-4
-
https://github.com/FaceOFWood/SniperBot-Solana-PumpSwap
-
https://github.com/Alemoore/Solana-MEV-Bot-Optimized
-
https://github.com/TopTrenDev/Raypump-Executioner-Bot
-
https://github.com/deniyuda348/Solana-Arbitrage-Bot-Flash-Loan
总结
本次分享的攻击手法中,攻击者通过伪装成合法开源项目,诱导用户下载并执行该恶意代码。该项目会从本地读取 .env 文件中的敏感信息,并将盗取的私钥传输至攻击者控制的服务器。这类攻击通常结合社会工程学技术,用户稍有不慎便可能中招。
我们建议开发者与用户对来路不明的 GitHub 项目保持高度警惕,尤其是在涉及钱包或私钥操作时。如确需运行或调试,建议在独立且无敏感数据的环境中进行,避免执行来源不明的恶意程序和命令。
更多安全知识可参考慢雾(SlowMist)出品的《区块链黑暗森林自救手册》:
https://github.com/slowmist/Blockchain-dark-forest-selfguard-handbook/blob/main/README_CN.md
比推快讯
更多 >>- Variant 首席法务官:目前不存在符合“GENIUS”规则的稳定币,因为规则本身都未确定
- 五新建钱包 12 小时前从 Kraken 累计提取 60,499 枚 ETH
- Nemo:259 万美元资产损失攻击源于在未充分审计的情况下上线新功能
- 排队退出以太坊 PoS 网络的 ETH 再度猛增,现超 265 万枚
- 4 个新钱包从 Kraken 提出总计 78,229 枚 ETH,约 3.42 亿美元
- 数据:昨日比特币现货 ETF 净流入 7.4179 亿美元
- Project Hunt:DeFi 大宗经纪服务 Oxygen 为过去 7 天被 Top 人物取关最多的项目
- SharpLink Gaming 相关地址收到 3.79 亿美元的稳定币,或将继续购买 ETH
- 某鲸鱼从 FalconX 收到 99,675 枚 SOL,约 2230 万美元
- 财新:香港拟优化加密资产资本金监管,助银行接纳合规稳定币
- 创业板指盘初涨超 1%,沪指基本抹去跌幅
- Paxos 宣布 USDH 及 HYPE 拟于 Kraken 上线
- 彭博分析师:美 SEC 接近批准共同基金 ETF 份额类别
- 某新创建钱包从 Gemini 提取 320 枚 BTC,价值 3645 万美元
- Hyperliquid 稳定币 USDH 竞拍预测中Native Markets获胜概率仍大幅领先
- Plasma 选择 Crypto.com Custody 提供机构级托管与流动性服务
- 摩根大通:标普 500 拒绝将 Strategy 纳入指数是对加密货币财库的一次打击
- 某鲸鱼向 CEX 存入 527,590 枚 SOL,约 1.175 亿美元
- Strategy 股东撤销针对加密货币会计准则影响的董事会诉讼
- PENGU 项目方向 CEX 转入 1.716 亿枚 PENGU,价值 600 万美元
- Arthur Hayes 再次从币安购入 57.8 万枚 ENA,总持仓达 502 万枚,价值 391 万美元
- 美股上市公司 LIXTE 斥资 260 万美元购入加密货币,资金配置比例将提至 50%
- Gemini IPO 30%股份将分配给散户投资者
- 数据:ETH 当前全网 8 小时平均资金费率为 0.0037%
- 美国右翼活动人士 Charlie Kirk 在犹他州演讲时遇袭身亡
- BitMine 从 BitGo 收到 46,255 枚 ETH,约 2.01 亿美元
- 韩国解除对加密公司 VC 融资禁令,9 月 16 日生效
- SEC 加密工作组与 Mysten Labs 会面讨论监管问题
- Gemini 创始人与 CFTC 主席候选人爆发矛盾,白宫叫停确认投票
- Anchorage 疑为 a16z 大量买入 HYPE,后者总持仓或达 9100 万美元
- 新建钱包向 Hyperliquid 存入 1000 万美元 USDC,买入现货并开设 10 倍杠杆做空 HYPE 对冲仓位
- WLFI 携手 Solana 生态伙伴推出 Project Wings,USD1 登陆 Solana DEX
- 美 SEC 延长对 Franklin XRP ETF 上市申请的审查期限至 11 月 14 日
- VanEck 拟申报 Hyperliquid 现货质押 ETF
- 马斯克重夺世界首富宝座,甲骨文创始人埃里森仅当数小时
- 所罗门:秋季美联储政策利率将出现轻微变化
- 高盛 CEO 所罗门:预计美联储 9 月降息 25 个基点
- 道琼斯指数收盘下跌 220.42 点,标普 500 指数上涨 19.43 点
- 美SEC明确加密与AI发展方向,加速美国金融市场创新
- 特朗普盟友、美国保守派政治活动家查理·柯克在犹他州大学活动中遭枪击
- WSJ:甲骨文与 OpenAI 签署 3000 亿美元的计算协议
- Raydium 已在其代币发行平台 LaunchLab 启用 USD1 交易对
- USD1 驱动的 ICM 协议 Freya Protocol 即将上线 BonkFUN 2.0 USD1 发射台
- 数据:LINEA 空投榜一地址获约 1.37 亿枚代币,208 个地址空投量超百万枚
- Swarms:拟实施 SWARMS 代币回购和销毁机制
- SEC 主席:区块链与 AI 结合将开启新的繁荣,SEC 决心抓住眼前机遇
- Linea 宣布为本周流动性激励追加 1200 万枚 LINEA 奖励
- Hyperliquid 完成 LINEA 盘前永续合约转换
- Ledger 推出企业移动应用并增加 TRON 链上稳定币交易支持
- Evoq Finance 合约遭到攻击,损失约 42 万美元
比推专栏
更多 >>观点
比推热门文章
- 4 个新钱包从 Kraken 提出总计 78,229 枚 ETH,约 3.42 亿美元
- 数据:昨日比特币现货 ETF 净流入 7.4179 亿美元
- Project Hunt:DeFi 大宗经纪服务 Oxygen 为过去 7 天被 Top 人物取关最多的项目
- SharpLink Gaming 相关地址收到 3.79 亿美元的稳定币,或将继续购买 ETH
- 某鲸鱼从 FalconX 收到 99,675 枚 SOL,约 2230 万美元
- 财新:香港拟优化加密资产资本金监管,助银行接纳合规稳定币
- 创业板指盘初涨超 1%,沪指基本抹去跌幅
- Paxos 宣布 USDH 及 HYPE 拟于 Kraken 上线
- 彭博分析师:美 SEC 接近批准共同基金 ETF 份额类别
- 某新创建钱包从 Gemini 提取 320 枚 BTC,价值 3645 万美元