你看到钱包弹出授权弹窗,点了确认以为只是"升级账户"或"批量交易",但你可能不知道——一个EIP-7702恶意授权,能一次性转走你钱包里的ETH、所有ERC-20代币,以及NFT。
这不是危言耸听。根据USENIX Security '26发表的同行评审研究,63%的EIP-7702授权交易与攻击者控制的合约有关,已确认损失约236万美元。
先搞清楚EIP-7702授权后,恶意合约能做什么
EIP-7702是以太坊Pectra升级引入的新交易类型(0x04),允许普通EOA钱包通过一次签名,永久地将代码执行权委托给一个智能合约。委托一旦设置,会一直生效,直到你主动撤销。
一旦你把钱包委托给了恶意合约,以下资产都可以被一次性转走:
ETH(以太坊原生币):恶意合约可以在你的钱包上下文中执行转账,直接转走所有ETH。
所有ERC-20代币:包括USDT、USDC、DAI、LINK、UNI等。恶意合约可以通过你的钱包执行transfer或transferFrom操作,转走这些代币。
NFT:恶意合约可以转移你钱包里的所有NFT。
链上资产组合:2025年8月,有用户因此类攻击损失了约154万美元,涉及ETH、BTC等多链资产。
攻击路径还原:骗子是怎么做到的
我拆解一个典型的EIP-7702攻击流程,你对照看看是否遇到过类似的套路。
第一步:撒诱饵 骗子在X、Telegram或Discord上发布"免费空投"、"钱包升级"、"领取奖励"的链接,指向钓鱼网站。
第二步:伪装签名请求 你点击链接后,钱包会弹出一个签名请求。这个请求的UI可能看起来像普通的登录验证或Swap确认,但实际上它是一条EIP-7702授权签名。签署后,你的账户代码被设置为恶意合约的地址。钓鱼攻击的关键在于:用户看到的是一串看似无害的数字字段,而协议解释为账户级别的行为变更。
第三步:持久控制与资产清空 授权生效后,你的EOA变成了一个"持久代理",任何后续调用,无论是来自用户交易、外部合约调用,还是协议回调,都会无条件执行攻击者控制的逻辑。2025年8月,慢雾创始人余弦转发Scam Sniffer安全预警,指出该钓鱼手段已被主流钓鱼团伙"工程化实践",若用户不慎被诱导签名,将损失整个账户资产。
正确做法对比
| 做法 | 说明 |
|---|---|
| 错误做法 | 在陌生网站看到"升级钱包"、"批量授权"弹窗,直接点"确认"。 |
| 正确做法 | 任何要求签署7702授权的陌生网站,直接关掉。如果必须操作,先核实网站真实性,确认委托合约地址是官方白名单地址。 |
风险提醒:EIP-7702委托是持久的,不会在单次交易后过期,直到你明确清除或替换它。另外,由于EOA在授权后会被视为"有代码",如果委托合约没有实现receive()或fallback()函数,你接收ETH的转账可能会失败。
举一反三的排查清单
如果你怀疑自己可能中了EIP-7702钓鱼,按以下步骤检查:
[做什么]:确认你的钱包地址是否被委托给了恶意合约,并执行撤销。
[怎么做]:
检查委托状态:在Etherscan上输入你的钱包地址,查看"More Info"或"其他信息"区域,找到"Delegate Information"或"Authorizations (EIP-7702)"字段。如果里面有一个非零地址,说明你的钱包已被委托。
对比官方委托地址:如果委托地址不是钱包官方公布的合约地址,立即撤销。
撤销委托:发送一笔新的EIP-7702类型交易(0x04),将委托地址指向0x0000000000000000000000000000000000000000(零地址),即可清除委托状态,恢复普通EOA。
[完成标准]:在Etherscan的"Delegate Information"字段中确认委托地址已变为零地址或该字段消失,账户恢复普通EOA状态。
操作完成的校验方式:在Etherscan上输入你的钱包地址,确认"Authorizations (EIP-7702)"栏目中没有异常委托地址。如果显示的地址不是你信任的官方委托合约,立刻按上述步骤撤销。
下一步动作:如果你以前在陌生网站上点过任何"升级钱包"或"领取空投"按钮,现在就去Etherscan查一下你的委托地址。如果显示的不是你钱包官方的地址,不要等,立刻清除。这个习惯比你等出事了再问别人管用得多。



