Home Blog

Scam Sniffer 2025:加密钓鱼损失下降 83% 至 $8400 万

0

本报告分析 EVM 生态中 Wallet Drainer 钓鱼攻击的最新趋势,帮助从业者和用户更好地保护资产。


摘要

  • 总损失: $8385 万,受害者 106,106 人 — 较 2024 年分别下降 83% 和 68%
  • 最大单笔被盗: $650 万,通过 Permit 签名(9月)
  • 主要签名类型: Permit 仍是主导;EIP-7702 恶意签名在 Pectra 升级后出现,8 月有 2 起大额案例

宏观背景

2025 年,签名钓鱼损失从 $4.94 亿骤降至 $8385 万 — 但威胁并未消失,损失随市场周期起伏波动。

市场关联性: 钓鱼损失与市场活跃度密切相关。Q3 市场涨幅最强,钓鱼损失也最高($3100 万)。市场活跃时整体用户活跃度增加,部分用户难免中招。

  • 观察: 月度损失在 $204 万(12月)至 $1217 万(8月)间波动,与市场周期相关
  • Q3 高峰: 8-9 月占全年损失的 29%,正值市场最活跃时期
  • Q4 回落: 市场降温后,损失降至 $1300 万

概述

定义

  • Wallet Drainer: 部署在钓鱼网站上的恶意脚本,诱导用户签署恶意交易或授权,从而快速盗取资产
  • 签名钓鱼: 通过钓鱼网站诱骗受害者签署恶意授权(approve、permit、setApprovalForAll 等)

方法论

  • 范围: EVM 兼容链
  • 统计范围:仅包含通过钓鱼网站部署的 Wallet Drainer 攻击;不含直接黑客攻击、交易所入侵、合约漏洞利用等其他盗窃类型
  • 估值: 被盗时的美元价值
  • 局限性: 数据为下限估计,仅基于可追踪的 Drainer 活动,未覆盖未上报案例

关键数据对比

指标202520242023同比变化
总损失$8385 万$4.94 亿$2.95 亿-83.0%
受害者106,106332,000324,000-68.0%
最大单笔被盗$650 万$5548 万$2405 万-88.3%
大额案例(≥$100 万)113013-63.3%

损失分析

月度明细

月份损失受害者环比
1月$1025 万9,220-56%
2月$532 万7,442-48%
3月$637 万5,992+20%
4月$529 万7,565-17%
5月$969 万7,547+83%
6月$280 万5,862-71%
7月$709 万9,143+153%
8月$1217 万15,230+72%
9月$1178 万15,513-3%
10月$328 万10,935-72%
11月$777 万6,344+137%
12月$204 万5,313-74%

季度汇总

季度损失受害者人均损失市场
Q1$2194 万22,654$969下跌
Q2$1778 万20,974$848复苏
Q3$3104 万39,886$778强势上涨
Q4$1309 万22,592$580回调

关键观察

  1. 市场-损失关联: Q3 损失最高($3100 万),与市场强势上涨同步;市场活跃度越高,潜在受害者越多
  2. 11 月异常: 损失增加 137% 但受害者减少 42%,人均损失升至 $1,225 — 属于月度波动,暂未形成趋势
  3. 12 月降温: 全年最低($204 万),年末市场活跃度下降

大额被盗分析

超过 $100 万的案例

金额资产日期签名类型
$650 万stETH, aEthWBTC9月Permit
$313 万WBTC5月increaseApproval
$305 万aEthUSDT8月Transfer
$182 万cUSDCv33月Transfer
$154 万多种资产8月EIP-7702 batch
$143 万多种资产4月Approve
$123 万Uniswap V3 NFTs7月setApprovalForAll
$122 万aPlaUSDT011月Permit
$106 万sUSDf, USDe7月Approve
$100 万多种资产8月EIP-7702 batch
$100 万RLB1月Uniswap Permit2

大额案例总损失: $2298 万(占全年 27%)

签名类型分布(>$100 万案例)

类型案例数总损失
Permit / Permit23$872 万
Transfer2$487 万
Approve / increaseApproval3$562 万
EIP-7702 batch2$254 万
setApprovalForAll1$123 万

攻击趋势

  1. EIP-7702 利用: Pectra 升级后不久即出现,攻击者利用账户抽象特性,将多个恶意操作打包进单次签名。8 月出现最大额案例(2 起共 $254 万)
  2. 大额案例集中在 Q3: 11 起大额案例(≥$100 万)中有 6 起发生在 7-9 月,与市场高峰期同步
  3. Permit 主导: Permit/Permit2 签名占大额案例损失的 38%

对比:2023 → 2024 → 2025

维度202320242025
总损失$2.95 亿$4.94 亿 (+67%)$8385 万 (-83%)
受害者32.4 万33.2 万 (+3%)10.6 万 (-68%)
人均损失$910$1,488$790
主要签名类型Permit/ApprovePermit/setOwnerPermit
主要 DrainerInferno, MS, PinkInferno, Angel新 Drainer 出现

签名钓鱼之外

本报告聚焦于 Wallet Drainer 攻击,更大的威胁图景还包括:

  • Bybit 事件(2月,$14.6 亿): Lazarus 入侵 Safe{Wallet} 开发者设备,注入恶意代码伪造多签界面 — 单起事件相当于全年签名钓鱼损失的 17 倍
  • 供应链攻击: npm 发布凭证遭钓鱼窃取,攻击者借此向开源包植入恶意代码;自传播蠕虫感染数百个包,窃取环境变量和凭证
  • 前端入侵: 恶意交易请求被注入合法平台界面
  • 社交媒体劫持: 项目 X 账号被盗发布钓鱼链接
  • 恶意软件与信息窃取: 虚假验证页面、恶意 Telegram 机器人、DPRK IT 人员渗透 — 针对私钥和凭证

展望

损失下降 ≠ 威胁消失。

  • 若市场活跃,钓鱼活动可能随之上升 — 钱包安全集成和用户教育仍是关键防线
  • 可追踪损失的下降,部分原因可能是攻击转向更难追踪的形式 — 私钥泄露和定向社工攻击不在 Drainer 统计范围内
  • 威胁格局正在分化:针对散户的大规模钓鱼 vs 针对高价值目标的复杂供应链/APT 攻击
  • Drainer 生态系统仍然活跃 — 旧 Drainer 退场,新 Drainer 补位

数据会变,威胁不会消失。保持警惕。


Scam Sniffer Research | 2025 年 12 月

Scam Sniffer 2024: 钓鱼攻击致 4.94 亿美元损失

0

2024年,Web3生态系统遭遇了大量钓鱼攻击,造成约4.94亿美元损失。

本报告分析Wallet Drainer攻击的最新趋势和防护方法,帮助行业从业者和用户更好地保护资产安全。

概述

Wallet Drainer是一种恶意软件部署在钓鱼网站上,通过诱导用户签署恶意交易来盗取加密资产。2024年,此类攻击造成约4.94亿美元损失,同比增长67%。

虽然受害者数量仅增长3.7%(达到33.2万地址),但单次攻击损失显著增加,最大单笔被盗金额达5548万美金。

本报告专注EVM兼容链。

关键数据对比

2024年Wallet Drainer攻击的关键数据指标

2024年关键指标

  • 总损失: $494M USD,增长67%
  • 受害者数量: 33.2万地址,增长3.7%
  • 最大单笔被盗: $55.48M USD
  • 大额被盗数量: 30

年度重大事件

  • Q1: 比特币价格创历史新高,链上活动增加,钓鱼同步上升
  • Q2: Pink Drainer宣布退出
  • Q3: 行情调整,钓鱼活动降温,但偶有超大额受害事件
  • Q4: Inferno Drainer声称退出,由Angel接管

接下来,我们将详细分析这些事件背后的损失数据,以揭示趋势和潜在的风险。

损失分析

按月总体损失趋势

全年攻击活动分为三个阶段:第一季度损失最重,达到1.87亿美元,受害者17.5万。3月损失最高,7500美元。第二、三季度损失合计2.57亿美元,受害者降至9万人。第四季度损失降至5100美元,受害者降至3万人,表明安全性提升。

大额案件分析

全年发生30起超100万美元案件,总损失1.71亿美元,平均每个受害者损失570万美金,最大单笔被盗$55.48M。

大额被盗月度趋势分析

每月大型盗窃案分布

大额被盗案件在2024年呈现明显的阶段性变化。上半年(1-6月)频发但规模较小,单笔金额多在100-800万美元区间。7-9月进入高发期,8月和9月分别出现5548万和3251万美元的重大损失,这两个月占全年大额案件总损失的52%。最后一个季度攻击频率和规模明显收缩,单笔金额多降至200-600万美元区间,显示出市场安全意识的整体提升。

损失分布特征:

  • 链分布:
    • 以太坊(25起,占85.3%),损失1.52亿美元
    • Arbitrum(2起,3.55M)
    • Blast(1起,5.87M)
    • Base(1起,1.2M)
    • BNB Chain(1起,7.88M)
  • 资产类型:
    • Staking & Restaking (40.9%)
    • Stablecoin (33.5%)
    • Aave Collateral (10.7%)
    • Pendle Yield (9.3%)
    • 其他 (5.6%)
  • 钓鱼签名类型:
    • Permit (56.7%)
    • setOwner (31.9%)
    • Transfer (4.5%)
    • increaseAllowance (3.5%)
    • Others (3.4%)

Wallet Drainer趋势

  • Pink退出(5月底): 市占28%,份额被Inferno吸收。
  • Angel接管Inferno(10月底): Angel份额下降,Inferno维持40-45%市占。

市场格局演变

  • Q1-Q2: 三大主导(Angel:42%,Pink:28%,Inferno:22%)
  • Q3: 双头竞争(Inferno:43%,Angel:25%)
  • Q4: 新格局(Inferno及Angel:45%,Acedrainer:20%,其他新Drainer:25%)

传播渠道分析

钓鱼网站获取流量的主要方式

钓鱼网站主要通过以下方式获取流量:

  1. 黑客攻击: 官方项目Discord和Twitter账号被黑客入侵,前端或供应链攻击。
  2. 自然流量: NFT或代币空投,过期Discord链接被接管。
  3. 付费流量: Google搜索/Twitter/Telegram广告。
  4. 其他: Email/社交/IM私信/其他

钓鱼网站活跃度分析

Q1的钓鱼网站活跃度全年最高,解释了该季度的高被盗损失。下半年因行情调整,加上因Pink、Inferno等Drainer相继退出,整体活跃规模均较低于上半年。

钓鱼网站托管服务&域名注册商分布

大部分钓鱼网站部署都使用了Cloudfalre和Vercel,然后IPFS。主要使用的域名注册商有OwnRegistrar, Hostinger, NameSilo, Tucows等。

X平台假冒账户趋势

和钓鱼网站活跃度基本一致,上半年整体较活跃,7月份因X平台加大了假冒账户的打击力度,以及加上加密货币整体市场在调整,假冒账户整体下降。但随着9和10月份之后随着行情的回暖而逐步增加。

常见钓鱼签名方式

在钓鱼签名方面Permit依旧是代币被钓鱼的主要原因。

其中还值得一提的是针对Proxy修改其所有权地址的setOwner,这一钓鱼签名在8月份直接导致一名受害者因此损失5500万美金的DAI。

检测绕过

随着更多的钱包加大在钓鱼安全这块的投入。对钓鱼Wallet Drainer而言他们也在持续的投入研究一些绕过方式比如:

  • 利用钱包规范化过程发起钱包能处理,但安全检测层未必能处理数据的签名请求
  • 利用合法合约,网站增加Cloudfalre或虚假验证码页面来防止被检测
  • 利用XSS漏洞来试图绕过钱包黑名单
  • 对钱包的模拟结果进行结果欺骗

总之这是一场持续的猫捉老鼠的游戏。

安全建议

用户安全建议

Web3的安全不仅需要工具的保护,更需要用户建立正确的安全意识和行为习惯。在享受Web3创新带来便利的同时,请始终将安全放在首位,保持警惕,做好防护。毕竟在去中心化的世界里,每个人都是自己资产的最终守护者。

钱包开发安全建议

钱包作为用户进入Web3世界的重要入口,在用户资产安全保护中扮演着关键角色。通过建立完善的安全策略、持续升级防护能力,并积极采用行业领先的安全解决方案,钱包可以为用户提供更安全可靠的服务环境。这不仅是责任,更是在竞争激烈的市场中保持优势的必要条件。

未来展望

截至2024年,基于钓鱼签名的已知损失达7.9亿美元。尽管下半年此类攻击有所减少,但这可能预示着攻击者正在转向其他攻击方式,如恶意软件等更具隐蔽性的手段。

随着Web3生态的发展,保护用户资产安全的挑战依然存在。无论攻击方式如何变化,持续的安全意识和防护能力建设始终是保护资产安全的关键。

平台影响力

2024年,Scam Sniffer在保护Web3生态系统方面取得了显著的运营成果:

威胁检测

  • 扫描超过4000万个URL
  • 拦截超过29万个恶意域名
  • 监控2.5万多个钓鱼地址
  • 追踪30起超过100万美元的重大盗窃案件

安全运营

  • 执行超过10亿次安全检查
  • 分析超过5000万次签名请求
  • 阻止250万多笔可疑交易
  • 标记140万多条钓鱼推文
  • 检测58万多起冒充账号

生态系统集成

  • 为10多个主要Web3项目提供安全API服务
  • 通过钱包合作伙伴关系保护数百万用户

这些指标展示了Scam Sniffer对Web3安全的重要贡献,以及在建设更安全的去中心化生态系统中发挥的关键作用。

关于ScamSniffer

ScamSniffer 是一个专注于Web3反诈骗的安全平台,通过结合链下和链上监控数据,为用户提供实时反诈骗保护。

我们的浏览器安全插件可以帮助用户识别钓鱼网站、可疑交易,为Web3用户提供全方位的安全保障。

我们的安全解决方案已被Binance、Bybit、OneKey、Phantom、TokenPocket等钱包采用,每月保护数百万Web3用户免受钓鱼和欺诈威胁。

致力于为下一个十亿用户打造更安全的Web3生态。

了解更多:[[email protected]]

Scam Sniffer 年度报告:32万用户的3亿美元资产因恶意钓鱼被盗

0

过去这年的钓鱼活动每月都在逐步增长,恶意钓鱼者操作手法更加老练,更隐蔽地逃避安全验证,Scam Sniffer 有这些关于「Wallet Drainer」的发现,值得全行业重视。

介绍

Wallet Drainer作为一种加密货币相关的恶意软件,在过去的一年里取得了显著的”成功”。这些软件被部署在钓鱼网站上,骗取用户签署恶意交易,进而盗取其加密货币钱包中的资产。这些钓鱼活动以多种形式不断地攻击普通用户,导致许多人在无意识地签署恶意交易后遭受了重大财产损失。

被盗统计

在过去一年,Scam Sniffer监控到这些Wallet Drainers已经从大约324K受害者中盗取了将近2.95亿美金的资产。

被盗趋势

值得一提的是,3月11号这一天有接近700万美金被盗。大部分是因为USDC汇率波动,遭遇了假冒Circle的钓鱼网站。也有大量的被盗临近3月24号Arbitrum的Discord被黑以及后续的空投。

每次波峰都伴随着关联群体性事件。可能是空投,也可能是黑客事件。

值得注意的Wallet Drainers

DrainerTotal StolenVictimsStart Date
Inferno Drainer$81 million134kMarch, 2023
MS Drainer$59 million63kMarch, 2023
Angel Drainer$20 million30kMarch, 2023
Monkey Drainer$16 million18kAugust, 2022
Venom Drainer$27 million15kJanuary, 2023
Pink Drainer$18 million9kMarch, 2023
Pussy Drainer$15 million4kJanuary, 2023

随着ZachXBT揭露Monkey Drainer后,他们在活跃了6个月后宣布退出,。然后Venom接替了他们的大部分客户。随后MS, Inferno, Angel, Pink也都在3月份左右出现。随着Venom在4月份左右停止服务,大部分的钓鱼团伙转向了使用其他的服务。

规模和速度都在惊人地升级。 例如,「Monkey」在 6 个月内了 1600 万美元,而「Inferno Drainer」则明显超过这一数字,在短短 9 个月内盗取了 8100 万美元。

按照20%的Drainer费用, 他们通过出售服务获利至少4700万美金。

Wallet Drainers趋势

通过分析趋势可以发现,钓鱼活动相对来讲一直在持续增长。而且在每一个Drainer退出后都会有新的Drainer替代他们,比如近期在Inferno宣布退出后,Angel似乎成为了新的替代品。

他们都是如何发起钓鱼活动的?

这些钓鱼网站其主要获取流量的方式可以大致主要分为几类:

  • 黑客攻击
    • 官方项目Discord和Twitter被黑
    • 官方项目前端或使用的库被攻击
  • 自然流量
    • 空投NFT或Token
    • Discord链接失效被占用
    • Twitter垃圾提醒和评论
  • 付费流量
    • Google搜索广告
    • Twitter广告

黑客攻击虽然影响面大,但往往反应足够及时,一般10-50分钟整个社区都有所行动。而空投、自然流量、付费广告、以及Discord链接失效被占用,这些则更加的不容易察觉。

除此之外,还有更加针对性的对个人的私信钓鱼等。

常见的钓鱼签名

针对不同的资产类型也有着不同的方式来发起恶意钓鱼签名,以上是一些不同类资产所常见的钓鱼签名方式。受害者钱包所拥有的资产类型会决定发起什么样的恶意钓鱼签名。

从利用GMX的signalTransfer盗取Reward LP token的案例中,可以发现他们对特定资产的钓鱼利用方式已经到了很精细化的研究。

最严重的13个被盗受害者

VictimTotal StolenPhishing Signature
0x13e382dfe53207e9ce2eeeab330f69da2794179e$24.05mIncrease Allowance
0xea69653e6dd19789ac15ce5752547a94da8dd4cf$4.47mIncrease Approval
0x82287cdda3d1b5d26d49ce03280d07b86d54fe54$4.08mERC20 Permit
0xf6b6f07862a02c85628b3a9688beae07fea9c863$3.83mApprove
0x1963ad313f41044a9a48397f31d21bc6a3b4c643$3.22mApprove
0x36b793f774aa4657109e11a2b47f758dabee7b42$2.29mERC20 Permit
0xfab576ff46bd27b095a4eee4a293ecb0c41d5a85$2.25mApprove
0xdbecdbd53ff10183a0f9ddfb4eab1e52e806a4b3$1.49mERC20 Permit, Approve
0xc0819e1e01204bcb9cb5a0a3be826afedad6edef$1.28mUniswap Permit2
0xc53f38ae0b009bea9c96fd32767f4e4cbf10ffb6$1.24mERC20 Permit
0x5197da90fb01040a1896a92616ecdfb5765b1134$1.19mApprove
0x5242dc2114bb40ed7482adcfab07384d069408cc$1.04mERC20 Permit
0x0e7a6b3b5ee4a1228a0334fa8170347a31538c49$1.03mClaimRewards

以上是被盗最多的受害者,这些受害者累计损失5000万美金。 可以看到主要是一些是因为签署Permit, Approve, Increase Allowance等钓鱼签名。

更多的使用智能合约

Multicall

从Inferno开始,他们也开始更多的利用智能合约。比如在拆分手续费需要分两笔交易进行。而这有可能速度不够快导致在第二笔转账的时候被受害者提前撤销授权,为了提高效率他们便使用 multilcall 来进行更高效的资产转移。

CREATE2 & CREATE

同样为了绕过一些钱包的安全验证,他们也开始尝试使用create2或create动态生成临时地址。这将导致钱包端的黑名单失去作用,同样对钓鱼研究也产生更大的麻烦。因为你不签名就不知道资产会被转移到什么地址,而临时地址不具备分析意义。

这比起去年来说有着很大的变化。

钓鱼网站

通过分析钓鱼网站的数量趋势,可以明显看到钓鱼活动每个月都在逐步增长,这跟有利可图和稳定的Wallet Drainer服务有很大关系。

以上是这些钓鱼网站的主要使用的域名注册商。通过分析服务器地址也可以发现,他们大都使用了Cloudflare等来隐藏真实的服务器地址。

Scam Sniffer做了些什么?

在过去的一年中,Scam Sniffer扫描了近1200万条URL,发现了将近145,000个恶意URL, 每天服务了400百万的查询。Scam Sniffer的开源黑名单目前包含了近100,000个恶意域名,并持续向Chainabuse等平台推送这些恶意网站域名。

Scam Sniffer连续报道了多个知名的Wallet Drainers,并在社交平台持续分享有关大额盗窃案例,以提醒和增强大众对钓鱼的认知。

目前Scam Sniffer已经协助了一些知名平台保护其用户,并致力于为下一个十亿用户提供安全的Web3环境。

加入打击网络钓鱼的行列

如您所见,加密货币网络钓鱼涉及多方、加密货币和非加密货币平台。安全需要大家共同努力,如果您希望增强您产品在这方面的能力,请通过邮箱 [email protected] 与我们联系。

最后,感谢各位Scam Sniffer的支持者!你们的支持是我们坚持下去的动力。

新Scam as a Service供应商: Venom Drainer

0

概览

迄今已经损失了2700万美元,约有15,000名受害者。前5名受害者损失了1400万美元。

创建了约530个钓鱼网站,针对约170个品牌。

Dune: https://dune.com/scamsniffer/venom-drainer-stats

关于Venom Drainer

Venom Drainer首次出现在Monkey Drainer声称下线的公告中。Scam Sniffer在02-18发现了他们的踪迹

Blur Module

在Scam Sniffer发布有关使用Blur批量Listing签名存在钓鱼攻击风险的警告2天后,他们声称已经实现了基于Blur批量签名的钓鱼模块

招募人员

从 3 月 20 日开始,他们提供15%的分成试图招募可以向知名加密项目 Discord 的管理员发送私信或 Ticket 的人参与发起钓鱼活动。

更新

3月31日,他们声称已经获得1000万美元的利润。

钓鱼网站

Scam Sniffer监测到自02-17以来,Venom创建了超过540个钓鱼网站。

这些钓鱼网站针对超过170个品牌,例如Arbitrum,Blur,zkSync,Optimism和MetaMask,这些品牌最近都有相关的空投。另外,Circle的USDC在3月11日经历了短暂的下跌。这些都是他们的潜在欺诈机会。

目标品牌钓鱼网站
Arbitrum148
Circle54
Blur36
zkSync31
Optimism22
Shibarium21
GPT18
Trust Wallet16
Collab.Land11
MetaMask10
Memes 652910
Doodles9
Aptos8
adidas Originals8
Rocket Pool6
Uniswap6
Layer Zero6
NFT Paris5
RTFKT5
Sui5
Floki5
Lens Protocol5
Mask Network5
Mocaverse4
art blocks4

查看更多: https://lookerstudio.google.com/reporting/9f17f931-ff15-4af1-baf7-0c89c4953310

被盗统计

迄今为止已经损失了2700万美元,约有15,000名受害者。大多数被盗资产是ERC20

前5名受害者损失了1400万美元:

VictimStolen
0x82287cdda3d1b5d26d49ce03280d07b86d54fe54$4,096,559
0xf6b6f07862a02c85628b3a9688beae07fea9c863$3,779,468
0x1963ad313f41044a9a48397f31d21bc6a3b4c643$2,970,769
0xfab576ff46bd27b095a4eee4a293ecb0c41d5a85$2,156,659
0xc53f38ae0b009bea9c96fd32767f4e4cbf10ffb6$1,244,878

查看更多: https://dune.com/scamsniffer/venom-drainer-stats

钓鱼方法

ERC20 – Permit / Approve

通过Permit或Approve获得受害者的批准,并在链上转移用户ERC20 Token

这是一个钓鱼网站骗取用户批准他们的代币Approval的案例

NFT Listing – Seaport / Blur

欺骗用户签署恶意的NFT挂单,这些恶意挂单包含较低的上市价格,通常为零。一旦用户签署了这个协议,他们的NFT就可以通过挂单签名进行转移。他们现在支持Seaport和Blur等协议。

最后,感谢@tay询问有关Venom Drainer的问题,这使我们开始分析他们的统计数据,感谢@IM_23pds,@zachxbt和@bax1337对数据的Review!

空投钓鱼分析: 黑客目标精准指向这些人

0

最近精准定向的钓鱼活动频发!这不周末,又是14个BAYC被盗!

图片

回到上周,我照常扫了一眼我们的被盗NFT Alert Bot,结果看到这一条推文。有21个CloneX被盗,发到群里跟余弦经过一段时间分析后,定位到了原始的异常交易:

https://etherscan.io/tx/0xbf2542540ce22abe7a1822e15d67a50b73a7ba18e036bb305103e51606122b69

这笔交易发生在12-08号,NFT资产流向到了一个我们曾经收录过的钓鱼地址0xa0b2ebf28b621fd925a2f809378a3dbc066c28f6。随后这些NFT在交易市场陆续被售出,最终触发了Alert

异常交易

这是一笔Seaport的交易,在这笔交易中134个NFT以0 ETH的价格被卖出。让我们看一看这里面的相关地址:

  • 0xabeaa3375534d2931b2149067af3e7b8458d2f0c 受害者
  • 0x4574043b6423953723356237042bf6df2304f297 交易发起人
  • 0xc0fdf4fa92f88b82ccbebfc80fbe4eb7e5a8e0ca 接收受害者资产的地址

受害者在钱包中对这笔恶意订单进行了签名,攻击者拿到签名后,使用交易发起人地址发起了交易,在这笔恶意订单中指定了taker是0xc0fdf4fa92f88b82ccbebfc80fbe4eb7e5a8e0ca

恶意Seaport订单

作为NFT交易者,大家对这样Opensea的Seaport挂单签名可能习以为常了。首先这是一笔正常的挂单订单签名,尽管Metamask特地加了箭头按钮必须点击才能签名, 但我可以确定的是,几乎很少有人会对Message里面的内容进行仔细的阅读和理解。

比如在这个截图里:

  • consideration的startAmount是92500000000000000,
  • token是 0x0000000000000000000000000000000000000000也就是ETH
  • 也就是说这个挂单,期望要收到0.0925 ETH(扣除版税),才能拿到我要挂单的这个NFT

但估计很多不敏感的人可能都没仔细去理解过里面的内容,而这里面的内容,可以成为攻击者利用的点。

在MetaMask7月份对NFT资产的Approve也加上了巨大醒目的安全提醒之后,很多钓鱼网站转向了新的利用方式,而Seaport作为一个交易协议,在5月份上线后,几乎所有的NFT交易用户的NFT资产都对其授权过。

于是攻击者开始尝试构造Seaport的恶意订单,我们在7月底陆续发现了这一新的利用形式,效果很明显!

因为这一类的签名在MetaMask里是没有任何安全提醒的,而且大部分用户对这样的签名请求并没有任何概念。

但这样的签名也是有特征的,用户只需要关注下签名内容中的consideration

  • 如果token不是ETH
  • startAmount是1或异常小

对于这些签名,MetaMask针对在这些交易协议类的EIP-712签名时,也应该加上足够的数据可读,确保用户知道相关风险。

如何发生的?

尽管知道了受害者是签名了恶意Seaport订单,但这一切是如何发生的呢?抱着这个疑问,突然想到了前两天余弦说过Polygon 上多了不少恶意空投NFT。

于是我立马打开了0xabeaa3375534d2931b2149067af3e7b8458d2f0c受害者在polygon上最近收到的交易

很明显这里面有几笔RTFKT相关的NFT空投!https://polygonscan.com/tx/0xcf2f993113a4d558801e60f8790390c1c45085bcee717e7ed8b4a67e2e8c705d

点开一看,好家伙!通过对Seaport合约发起了冒充交易空投的,这种方式应该可以逃过NFT平台的反垃圾空投的检测。再仔细看这笔交易,除了受害者外,还有其他几个地址也收到了。

看来一共定向了883个地址

恶意网站

试着在我们库里找了下rtfkt相关的恶意网站,

还有活着的钓鱼网站!

抱着好奇我又试着检索了下RTFKT – MNLTH LRI X

原来12-07号有过官方的空投消息,那么很明显了。用户被截胡了!

时间线

让我们来重新梳理一下时间线

  • 12-07 06:50 RTFKT官方发布消息空投会在一周内
  • 钓鱼攻击者,看到这个消息,整理了目标NFT的持仓大户地址,开始在Polygon发起恶意NFT空投
  • 受害者也看到了官方空投的消息
  • 12-07 20:00 受害者钱包,收到了空投到的钓鱼NFT
  • 12-08 18:58 受害者点进了NFT中的钓鱼网站,以为是领取空投,结果签名了恶意的Seaport挂单!
  • 12-08 18:59 攻击者拿到挂单签名后,快速在链上发起交易,用户137个NFT资产被盗
  • 12-09到12-11 被盗的NFT陆续在各大NFT交易市场被卖出

总结

Web3是片黑暗森林,由于用户资产的透明。钓鱼者可以通过链上数据以及各种空投事件,基于这些信息可以针对被定向者,发起大量上下文关联度极高的钓鱼活动。

有广撒网的空投,也有那种精细化针对大户的定向钓鱼,让人防不胜防。作为普通用户,希望大家提高警惕,多学习安全知识,Don’t trust, Verify! 祝大家安全!

Premint恶意代码注入攻击细节分析

0

攻击细节

打开任意Premint项目页面,可以看到有个cdn.min.js注入到了页面中,看调用栈该js是由boomerang.min.js注入, 目前该s3-redwood-labs-premint-xyz.com域名已经停止解析,无法正常访问了

查询Whois, 该域名在2022-07-16注册于Tucows Domains Inc.

打开virustotal.com 可以看到该域名之前曾解析到CloudFlare

打开源代码可以看到boomerang.min.js 是Premint用到的一个UI库

该js是在s3-redwood-labs.premint.xyz域名下,猜测:

  • 上传文件接口有漏洞可以上传任意文件到任意Path(比较常见的Web漏洞)
  • 黑客拿到了他们这个Amazon S3的权限,从而可以注入恶意代码,
  • 这个第三方库被供应链攻击污染了

boomerang.min.js代码下载下来,前面都是正常的代码,但是末尾有一段经过加密的代码

这段代码负责把代码 s3-redwood-labs-premint-xyz.com/cdn.min.js注入到页面

恶意代码cdn.min.js

根据代码内容,可以看到大致有通过调用dappradar.com的接口来查询用户的NFT资产列表(此前我们也有看恶意网站到通过debank,opensea的API来查询用户资产等)

如果用户持有相关NFT资产:

恶意代码会以Two-step wallet验证的借口,发起setApprovalForAll让用户授权给他们后端接口返回的地址(攻击者一般为了提高封禁成本,基本上会分流并且每个地址控制在200个交易内)

如果用户点了approve,攻击者还会调用监测代码通知自己有人点击了

当如果用户地址没有NFT资产,还会尝试直接发起转移钱包里的ETH的资产请求:

另外这种代码变量名加密成_0xd289 _0x开头的方式,我们曾经在play-otherside.orgthesaudisnfts.xyz这些钓鱼网站也见到过

根据用户资产发起setApprovalForAll或者直接转移ETH,并且阻止用户使用开发者工具debug

如何预防

那么作为普通用户如何预防?现阶段MetaMask对ERC 721的setApprovalForAll的风险提示,远没有ERC20的approve做的好

很多新用户并无法感知到这个行为的风险,但我们作为普通用户看到带approve之类的交易一定要仔细打开授权给相关地址,看看这些地址最近的交易是否异常(比如清一色的safeTransferFrom),避免误授权!

这种攻击和上次Etherscan上Coinzilla利用广告注入恶意的攻击方式挺相似的,那么在技术上有没有可能预防?

理论上如果已知一些恶意js代码的行为和特征:

  • 比如说代码的加密方式
  • 恶意代码关键特征
  • 代码会反debug
  • 会调用opensea, debank, dappradar等API查询用户资产

根据这些恶意代码的行为特征库,那么我们可以尝试在客户端网页发起交易前,检测页面有没有包含已知恶意特征的代码来探测风险?

或者直接更简单一点,对常见的网站设立白名单机制,不是交易类网站发起授权,给到足够的风险提醒等?

接下来我们(Scam Sniffer)也会尝试探索一下如何在客户端来预防此类的攻击发生!