
GoPlus:Solana防钓鱼指南
近期 Solana 的市值水涨船高,一度超越 BNB 排名全球前三,巨大的财富效应吸引了大量的活跃玩家,更吸引到了大量 Wallet Drainer(钱包钓鱼)团伙从 EVM 的链转入 Solana,针对 Solana 的钓鱼网站、空投诈骗开始被大规模的部署,已造成大量用户损失惨重。近日 GoPlus 安全团队分析了多笔 Solana 的钓鱼事件,发现诈骗团伙利用 Solana 目前部分钱包的安全基础设施不完善的情况,快速升级空投诱骗、实施社交账号窃取,对此 GoPlus 总结如下常见的 Solana 的钓鱼攻击手法,帮助用户有效避免相关钓鱼事件,减少资产损失。
攻击类型
在近期的几起钓鱼事件中,GoPlus 发现钓鱼团伙大多是以「诱骗领取空投」、「假项目网站」、「免费抽奖」、「通过 NFT 空投引导进入」等,这些方式和 EVM 常见的几种钓鱼引导方式几乎一致,主要区别是骗子利用 Solana 与 EVM 的机制不同,从而以不同的「代币或授权转移」的方式进行钓鱼活动。以下是几种我们观察到的不同的转移攻击方式。
诱导转移原生代币 Sol
这种类型的攻击方式是最简单的,诈骗团队在用户链接完钱包后会在前端计算出当前所有 $SOL 的余额,并且利用SystemProgram.transfer的功能直接完成代币的转移,以某个钓鱼网站举例,该网站显示了一个 Swap 的界面 UI,用户往往以为是以低价可以购买到某种代币
但实际上执行的只是单纯的 $SOL 的转移
诱导转移多个代币
除了盗取原生代币 $SOL 之外,骗子可以在同一笔交易签名中同时盗取所有当前钱包持有的 Token 资产。在 Solana 上的每一笔交易都可以由多个 Instruction 组成,每一个 instruction 可以完成一个单独的逻辑,比如转账、程序的交互以及 Account 的创建等等。这就意味着,钓鱼团伙完全有能力可以在同一笔交易中塞入多个操作指令,举例来讲,如果用户持有三个不同的 Token,那么钓鱼网站只需要在代码中往同一笔交易中塞入三个 Token 的分别的转账指令即可。这样一来就不需要单独骗取某一个资产,而是可以利用这个特性完成一次性的钱包洗劫。和第一种诱导一样,黑客也是通过各种手段蒙骗用户点击按钮进行交易,我们可以看到,该类型交易将会一次性转走所有资产,不仅包含原生 $SOL 代币,同时包括 NFT 类型资产,也包含代币类型资产。这里诈骗团队主要利用了 Solana SPL Token 的createTransferCheckedInstruction完成对非原生资产的转移 instruction 构造。
Phantom 交易模拟
Backpack 交易模拟
诱导代币账户所有权转移
除了直接代币外,GoPlus 还发现了部分的钓鱼网站采用了createSetAuthorityInstruction的操作将 instruction 打包进交易中,该操作的本质是将账户上代币的所有权进行转移,Solana 的账户模型和 EVM 有所不同,每一个账户地址对于每一个代币,都会有一个专门的Token Account对应,Token Account 会有一个 owner,该 owner 就是当前的账户,Token Account同时记录了对应 Token 的余额和相关信息。而createSetAuthorityInstruction操作可以直接将当前代币的所有权转给另外一个账户,实际最终的效果等同于将当前的代币全部转给了该账户。我们分别在Phantom和Backpack上进行了该操作实验,庆幸的是,这两个钱包都进行了特别的提醒和警告。
即使用户点击了Ignore and proceed anyway的选项,依旧可以通过交易模拟显示出余额的变化
注意
以上三种类型的攻击手段目前大部分的主流 Solana 都已经通过交易模拟能够实现对于结果的预测,用户能够很清晰的看到点击后的余额变化,因此只要用户耐心仔细的查看每一次的交易变化结果,就可以相对来说规避部分钓鱼风险,这是因为 Solana 的官方 JSON RPC 的接口中就能够提供「交易模拟」的能力。但是,随着钓鱼诈骗技术的升级,我们也发现了一些非常不易察觉的钓鱼手法。
骗取代币授权
对于熟悉 EVM 的用户而言,代币授权是一个常见的操作,但在 Solana 上,这一操作有所不同。在 Solana 网络中,骗子会利用用户对 EVM 授权机制的误解来实施诈骗。钓鱼网站通过诱导用户进行看似正常的交互操作,实际上却在背后通过 createApproveCheckedInstruction 执行了授权交易 Delegate。这种手法的关键在于,它不直接转移资产,而是通过赋予攻击者控制用户资产的权限。这类攻击通常隐藏在诱人的交互界面后,如假装进行投票、质押等,实际上却在悄无声息地更改账户的授权设置。
一旦攻击者获得了对用户资产的控制权限,他们便可以随时操纵这些资产,包括转移或交易。这种类型的攻击往往不易被及时发现,因为它并没有立即产生资产转移。这类的攻击也往往影响面最广,因为攻击者会等到上当用户足够多、金额足够大的时候才开始实施代币转移。用户需要特别注意,任何请求更改授权设置的操作都应引起警惕,尤其是在不熟悉的网站或应用上。通过交易模拟能够看到授权变化,因此不仅需要关注直接的代币余额变化,也要小心授权的变化导致的钓鱼风险。
Durable Nonce 骗取交易签名
Durable Nonce 是 Solana 区块链中的一个功能,它允许创建一个特殊的账户来存储一个持久的、不会过期的 nonce 值。在 Solana 中,每个交易都需要一个最近的区块哈希(recent blockhash)作为一部分,这用于确保交易的时效性和唯一性。通常,这个区块哈希会在大约 150 个区块之后过期,使得交易无法被处理。Durable Nonce 机制通过提供一个不会过期的 nonce 值,允许创建可以在更长时间内有效的交易。
在钓鱼诈骗中,骗子可能会滥用 Durable Nonce 机制,诱导用户签署看似正常但实际上包含恶意操作的交易。由于使用了 Durable Nonce,这些交易不会因为区块哈希过期而失效,给骗子更长的时间窗口来执行交易。例如,骗子可能会设计一个伪装成合法操作的交易,如参与空投或活动,但实际上交易中包含了将用户资产转移给骗子的指令。用户在不知情的情况下签署了这样的交易,但用户会发现在区块上根本没有该交易的发生,因为攻击者只是拿到了该交易的签名,交易本身并没有被发送到区块链上,他们可以在之后的时间里随时将交易广播上链。但是,无论交易是否发生,我们发现这种类型的签名并不会影响交易模拟的结果判断,几个主流钱包依旧能够将交易本身进行模拟和解析并且告知结果,因此我们之前对于交易模拟结果的判断还是有效的方法论。
但是,我们依旧发现了一种极其隐蔽并且复杂的攻击方法,能够「瞒天过海」
合约升级逃避交易模拟检测
这个方法就是结合了 Durable Nonce 以及 Solana 合约特有的特性 — — 可升级,这种攻击手段的潜在危险性因为可升级合约的特性被进一步的加大,Durable Nonce 机制通过创建一个持有长期有效 nonce 值的账户,允许交易在更长的时间窗口内保持有效。这意味着即使用户在签署交易的时候不立即发送到区块链上,交易仍然可以在未来任何时候被广播和执行。攻击者可以利用这一点,首先让用户签署一个看似正常的合约交易,这个交易在签名时看起来完全无害,即使是主流的钱包和交易模拟工具也难以在签名时提前警告用户。然而,在用户签署交易后,攻击者成功拿到了 Durable Nonce 的签名。此时,他们并不着急将交易广播上链,而是利用 Solana 的合约升级功能,将原本正常的合约变更为一个恶意的版本。这种恶意合约能够执行例如资产转移等操作。在进行升级后,攻击者再将签好的交易发到区块链上,来执行该恶意操作,达到自己的目的。这种类型的攻击特别隐蔽,对用户来说构成了极大的隐患,因为即使是经验丰富的用户在签署交易时也可能无法识别出潜在的风险。为了防范这种攻击,用户需要对合约的信誉和历史进行仔细审查,对任何不寻常的交易行为保持怀疑态度,避免与不明来源或新成立的合约进行交互。同时也希望所有 Solana 的钱包能够注意该攻击手段,及时的在钱包侧能够形成有效的提醒和对用户资产的保护。
防范措施
在面对 Solana 网络中的钓鱼攻击时,以下是一些综合性的防范措施,可以帮助最大限度地减少风险:
-
提高安全意识: 对于任何加密货币相关的交易,始终保持高度警惕。了解 Solana 钓鱼攻击的常见手段,如诱导转移代币、代币账户所有权转移、骗取交易签名等。
-
仔细检查交易细节: 在进行任何交易之前,认真检查交易的具体内容。对于使用 Durable Nonce 或涉及合约交互的交易,应额外小心。
-
使用交易模拟功能: 利用钱包提供的交易模拟功能,仔细审阅交易模拟结果。但要注意,这不是万无一失的保护措施,因为存在部分交易模拟失效的情况。
-
关注授权变化: 对于非交易后代币余额发生变化的操作,也要保持警惕。在不熟悉的网站或应用上,特别要小心授权变化的操作。
-
定期取消无用授权:通过 Solana Revoke 的工具,定期取消一些无用的授权,保障资产的安全。
-
定期更新知识: 定期更新自己关于区块链和加密货币的知识,特别是关于新出现的钓鱼手段和防范策略。
-
保持软件更新: 使用的钱包和相关软件应保持最新状态,以确保拥有最新的安全特性和修复。
-
备份和保护私钥: 保护好自己的私钥和重要信息,避免在不安全的地方存储或分享。
同时,GoPlus 安全团队呼吁 Solana 公链及其生态深度关切用户安全,加快提升用户安全的基础设施建设,给用户提供更安全的交易环境,从而实现生态的稳定和繁荣。
比推快讯
更多 >>- Coinshares:上周数字资产投资产品净流出 14.3 亿美元,为 3 月以来最高记录
- 美股上市公司 Mega Matrix 宣布建立以 ENA 代币为核心的稳定币治理代币财库储备
- Hyperliquid 24 小时交易额达 34 亿美元创下历史新高,成为全网第二大比特币现货交易平台
- BONK 财库公司 Safety Shot 完成 3000 万美元融资,其中 2500 万美元由 BONK 创始成员以代币形式支付
- Empery Digital 增持 13 枚比特币,总持仓达 4,065 枚
- QCP:对比特币的结构性看法没有改变,预计机构将于回调时买入
- 美股 SOL 财库公司 DFDV 融资 1.25 亿美元以增持 SOL
- ETHZilla 批准 2.5 亿美元股票回购计划
- 美联储考虑降息是合适的
- Ronin 推出开发者收益分享计划
- Webull 宣布重新对美国用户开放加密货币交易服务
- 美股上市公司 LM Funding America 宣布增持 164 枚 BTC
- B Strategy 计划在 YZi Labs 支持下筹集 10 亿美元建立美股 BNB 财库公司
- Strategy 上周以 3.569 亿美元买入 3,081 枚比特币
- 某个于今年 1 月卖 BTC 换仓 ETH 的鲸鱼地址过去 1 小时卖出 3,054 枚 ETH
- Sharps Technology 完成逾 4 亿美元 PIPE 私募融资,拟建立 SOL 金库
- Bitmine 的加密货币和现金持有量近一周增加了 22 亿美元,达到 88 亿美元
- BiyaPay 分析师:消息面刺激消退,BTC 将回归下跌趋势
- 当前主流 CEX、DEX 资金费率显示市场已略微偏向看空
- Deribit:约 150 亿美元的比特币和以太坊期权将于本周五到期
- YGG 完成 100 万美元代币回购,买入均价约为 0.17 美元
- OKX 下架 JSTUSDT 永续合约
- 数据:某巨鲸向 HyperLiquid 存入 426 万美元购买 96976 枚 HYPE
- 贝莱德向 Coinbase Prime 存入 1703 枚 BTC,约 1.9 亿美元
- 观点:所有规模比特币持仓群体现均已明确进入分发阶段
- 路透社:美国银行因担心存款外流游说阻止以稳定币支付利息
- 数据:某巨鲸昨日花费 502 万 USDT 购买 1373 万枚 TRX
- 灰度向美 SEC 提交 Avalanche ETF 的 S-1 申请文件
- R2 最终测试网将于 8 月 28 日收官
- 公链活跃度近 7 日排行榜:Solana 稳居首位
- 数据:Sui 链上交易区块数量已突破 40 亿
- 日本多家上市公司公布比特币持仓动向,Metaplanet 增持 103 枚 BTC
- 分析师:比特币回落至鲍威尔讲话前水平,技术面偏向看空
- Vanadi Coffee 再次增持 5 枚比特币,累计持仓量已达 100 枚
- 特朗普周一将签署行政令
- EdgeX Labs 官方 Telegram 社区已正式开放
- 某比特币远古巨鲸仍持有逾 4 万枚 ETH 多单,现浮盈超 1100 万美元
- 以太坊概念股美股盘前普遍走低,iShares ETF 下跌 4.8%
- CryptoQuant:以太坊或在短期至中期内表现持续优于比特币
- 比特币连续第三天下跌,数字货币概念股盘前走弱
- 美股盘前中概股多数走高,阿里巴巴涨 3.5%
- Pump.fun 上周收入约占 Solana 网络所有 Launchpad 收入的 90%
- 币安:持有 200 Alpha 积分方可申领 750 个 MTP 代币空投
- Galaxy、JUMP 与 Multicoin 寻求筹集 10 亿美元用于购买 SOL
- 某巨鲸增持 254.92 枚 BTC,已累计建仓 2.49 亿美元 BTC
- 某波段 LINK 获利 172 万美元鲸鱼再度建仓 1685 万美元 LINK
- 王峰:ETH 短期领跑市场,资金终将回流 BTC 以兑现利润
- Binance 新 Bonding Curve 参与门槛:至少 241 分
- 美联储前副主席:美联储料谨慎下调政策利率
- 某巨鲸以 1.28 美元均价增持 294 万枚 VIRTUAL,价值超 370 万美元
比推专栏
更多 >>观点
比推热门文章
- DATs 价值解码:BitMine 持有115万枚 ETH,每股增长640%的“炼金术”
- Coinshares:上周数字资产投资产品净流出 14.3 亿美元,为 3 月以来最高记录
- 美股上市公司 Mega Matrix 宣布建立以 ENA 代币为核心的稳定币治理代币财库储备
- Hyperliquid 24 小时交易额达 34 亿美元创下历史新高,成为全网第二大比特币现货交易平台
- BONK 财库公司 Safety Shot 完成 3000 万美元融资,其中 2500 万美元由 BONK 创始成员以代币形式支付
- Empery Digital 增持 13 枚比特币,总持仓达 4,065 枚
- QCP:对比特币的结构性看法没有改变,预计机构将于回调时买入
- 美股 SOL 财库公司 DFDV 融资 1.25 亿美元以增持 SOL
- Web3 足球游戏 Football.Fun 席卷 Base:日交易量破千万,庞氏争议浮现
- ETHZilla 批准 2.5 亿美元股票回购计划