以太坊最新的网络升级Pectra引入了旨在提升可扩展性和智能账户功能的强大新特性——但它同时也开启了一个危险的新型攻击途径,可能使黑客仅凭链下签名就能掏空用户钱包中的资金。
在5月7日于纪元364032正式上线的Pectra升级中,攻击者可利用新型交易方式控制外部拥有账户(EOAs),而无需用户签署任何链上交易。
Solidity智能合约审计专家Arda Usman向Cointelegraph确认:"攻击者现在能够仅通过链下签名消息(无需用户直接签署链上交易)掏空EOA中的资金。"
风险核心在于EIP-7702,这是Pectra升级的关键组成部分。该以太坊改进提案引入了SetCode交易(类型0x04),使用户只需通过签署一条消息,就能将钱包控制权委托给另一个合约。
如果攻击者获取了此类签名——例如通过钓鱼网站——他们可以用一个小型代理覆盖钱包代码,该代理会将调用转发至其恶意合约。
"一旦代码被设置,"Usman解释道,"攻击者就能调用该代码转出账户中的以太坊或代币——这一切都无需用户签署常规转账交易。"
钱包可通过链下签名被修改
Hacken链上研究员Yehor Rudytsia指出,Pectra引入的这种新交易类型允许在用户账户上安装任意代码,本质上将其钱包转变为可编程智能合约。
"这种交易类型允许用户设置任意代码(智能合约)来代表用户执行操作,"Rudytsia表示。
在Pectra之前,没有用户直接签署的交易,钱包无法被修改。而现在,一个简单的链下签名就能安装代码,将完全控制权委托给攻击者的合约。
"Pectra之前,用户需要发送交易(而非签署消息)才能允许资金被转移...Pectra之后,任何操作都可以从用户通过SET_CODE批准的合约中执行,"Rudytsia进一步解释。
这一威胁是真实且迫在眉睫的。"Pectra于2025年5月7日激活。从那一刻起,任何有效的委托签名都可被执行,"Usman警告道。他补充说,依赖过时假设的智能合约,如使用tx.origin或基本的仅EOA检查,尤其容易受到攻击。
未能检测或正确呈现这些新交易类型的钱包和界面面临最大风险。Rudytsia警告称:"如果钱包不分析以太坊的交易类型,特别是0x04类型交易,它们就存在安全漏洞。"
他强调,钱包引擎必须清晰展示委托请求并标记任何可疑地址。
这种新形式的攻击可通过常见链下互动轻松实施,如钓鱼邮件、虚假DApp或Discord诈骗。
"我们认为这将成为Pectra引入的破坏性变更相关的最流行攻击手段,"Rudytsia表示。"从现在开始,用户必须仔细验证他们即将签署的内容。"
硬件钱包不再更安全
据Rudytsia表示,硬件钱包不再具有内在的安全优势。他补充说,从签署恶意消息的角度来看,硬件钱包现在与热钱包面临着相同的风险。"一旦签署——所有资金瞬间消失。"
有办法保持安全,但这需要用户的警觉性。"用户不应该签署他们不理解的消息,"Rudytsia建议道。他还敦促钱包开发商在用户被要求签署委托消息时提供清晰的警告提示。
对于EIP-7702引入的新委托签名格式,应特别谨慎对待,因为它们与现有的EIP-191或EIP-712标准不兼容。这些消息通常表现为简单的32字节哈希值,可能会绕过钱包正常的警告机制。
"如果消息包含您的账户随机数,这很可能直接影响您的账户安全,"Usman警告道。"正常的登录消息或链下承诺通常不涉及您的随机数。"
更增加风险的是,EIP-7702允许使用chain_id = 0的签名,这意味着签署的消息可以在任何兼容以太坊的区块链上重放。"请务必了解,它可以在任何地方被使用,"Usman强调。
虽然在这次升级下,多重签名钱包因为需要多个签署者而保持较高的安全性,但单密钥钱包——无论是硬件的还是其他类型——必须采用新的签名解析和风险标记工具,以防止潜在的安全漏洞被利用。
除了EIP-7702外,Pectra还包括EIP-7251,该提案将以太坊验证者质押限额从32枚提高到2,048枚以太坊(ETH),以及EIP-7691,该提案增加了每个区块的数据块数量,以提高第二层扩展性。
Magazine: Bitcoin eyes ‘crazy numbers,’ JD Vance set for Bitcoin talk: Hodler’s Digest, May 4 – 10