跳转到主要内容

最近的黑客花式钓鱼攻击,你了解多少?

更新于今天

道高一尺,魔高一丈。

加密资产钓鱼仍然猖獗,尤其是有了「EIP-7702 授权攻击」之后,黑客更是狂得没边了...

看看这些悲惨的案例:

9 月 2 日,KOL @Tintinx2021 发文表示被骗子以聊合作为由诱导下载虚假会议链接;

同样是 9 月 2 日,某加密大户 @KuanSun1990 和一位线下见过面的 BD 在 TG 聊合作时,因为对方直接发来的虚假 Zoom 链接下载了恶意文件,导致资产被转走 1300 万美元;

9 月 8 日,KOL @dov_wo 因为 TG 联系人账号被盗,通过 Calendly 进入了一个虚假的 Zoom 会议链接。

万幸的是,由于处理及时,以上事件最终没有造成太大的资产损失,但黑客不可能每次都是空手而归:

9 月 12 日,Thorchain 联创 @jpthor 因为同样的一个虚假 Zoom 会议链接被盗了 130 万美金。

「熟人账号被盗 + 钓鱼会议链接」这套组合技虽被使用多年但依旧有效,那么我们自然可以感知到更加高深新颖的手段会有多么猖狂:

8 月 5 日,一位地址因为升级了 EIP-7702 后并使用了虚假的 Uniswap 而被盗 6.6 万美元;

8 月 22 日,一位大户因为同样的原因被盗了 100 万美元;

8 月 24 日(是的,没过两天),另一位大户因为签署了 EIP-7702 类型的钓鱼交易,被盗了 154 万美元。

以上仅仅只是一个月内的不完全统计。

而加密安全公司 Scam Sniffer(@realScamSniffer)的报告称:8 月份累计有 15230 名受害者被盗,总金额高达 1200 万美元,相比 7 月增加了 60% 以上。其中有关 EIP-7702 标准的被盗事件愈发频繁,也就是上述提到的攻击类型。很多人对这个概念并不了解,但展示出的数据警示着我们要着重提防这个新颖的攻击手段。

什么是 EIP-7702

EIP-7702 新增一种交易类型,允许把某个账户地址中的部分代码写成一个代理指针。此后,对这个地址发起的执行会转到目标合约的代码上跑。这个设置会一直有效,直到你用新的授权替换这个代理指针,或把它清空。

它的设计初衷是从三个方面提升用户的交易体验:

  • 简化交易处理:把本来要分两三笔做的链上操作,捆成一笔一起做,要么全部成功、要么全部失败。

  • 代付 Gas: 别人替你出 Gas,你只负责签名,哪怕钱包里没 ETH 也能完成交易。

  • 权限降级:给代理合约一个子钥匙,只开「某币种、某额度、某应用」的权限。比如,只能花某个 ERC-20 代币、但不能花 ETH。

为什么 EIP-7702 很危险

虽然 EIP-7702 初衷是为了带来更好的用户体验,但是仔细想想,当你把你的「交易行使权」交给了一个「恶意合约地址」,它拥有行使各种操作,没有限额的权利,那一刻你的资产就不属于你了。早在今年 5 月份,Wintermute 的研究就表明了超 97% 的 EIP-7702 相关授权都是与恶意合约相关的。

而你可能中招的方式很直接:

用户可能进入了钓鱼网站,签署了不知名交易,实际上是 EIP-7702 类型的交易并把地址权限授权给了黑客设计目标合约地址;

又或者是私钥遭到泄漏。攻击者通过窃取私钥,利用恶意的 EIP-7702 授权元组将受害者的 EOA 委托给「扫地机器人」合约,从而在受害者钱包接收新资产时立即将其转走。

用户如何做好防范?

  • 老生常谈,看清签名内容,不签看不懂的交易。更主要是仔细检查网站的 URL 和 SSL 证书,避免点击来自社交媒体私信或未知电子邮件中的链接 。

  • 定期检查授权问题。比如 Rabby 钱包中的授权管理可以清晰看到账户是否有进行 EIP-7702 的授权。

  • 不进行 EIP-7702 类型的升级。钱包和应用为了提升用户体验会提供升级选项。但如果用户没有刚需,最好不要开启这个功能。

  • 在授权 EIP-7702 交易时,务必审核所委托的合约地址,并确保其来自完全审计过的、久经考验的、且被广泛信任的协议。

End

无论黑客用的是新戏法还是老套路,真正决定你资产是否安全,是私钥有没有暴露在高风险环境里。私钥如果安全(比如使用硬件钱包):

  • 不小心点击了黑客的钓鱼会议链接,你的资产也不会立马被转移,因为黑客在你电脑中找不到你的私钥。

  • 当私钥只有你本人知道(硬件钱包在你手中),黑客也没办法给你的地址进行 EIP-7702 的授权。

最后再插播一句:OneKey 的硬件钱包也已经支持了 EIP-7702 类型的交易解析,这意味着当你点击了任何可疑网站,潜伏着的恶意授权在硬件钱包上一览无余,用户很容易可以识别并阻止。

攻击在变,边界不变——把私钥留在硬件里,把决定权留在你自己手里。

这是否解答了您的问题?