Lumi Finance被攻击原因分析:Arbitrum链上ERC-4337合约签名验证漏洞致27万美元损失
GoPlus分析显示,Lumi Finance在Arbitrum上因ERC-4337智能合约validateUserOp签名验证逻辑漏洞被攻击,损失约27万美元。攻击者利用ECDSA.tryRecover异常未回滚缺陷,通过攻击合约isValidSignature绕过验证非法获取Token授权。
- Lumi Finance
- Arbitrum
- ERC-4337
- 智能合约漏洞
- 区块链安全
据GoPlus分析,Arbitrum上的Lumi Finance于7月13日遭遇攻击,造成约27万美元损失。该事件涉及的Sodium智能账户合约基于ERC-4337标准,其签名验证流程中的底层逻辑缺陷被攻击者利用。
漏洞核心:validateUserOp签名验证绕过
漏洞出自Sodium智能账户合约的validateUserOp函数。在调用_validateSignature进行签名验证、执行isValidSignatureNow的过程中,signer参数被传递为攻击者地址。当ECDSA.tryRecover调用出现错误后,交易未正常回滚(revert),而是继续调用攻击合约中的isValidSignature函数,并错误地通过了验证检查。
攻击路径:UserOperation验证阶段窃取授权
攻击者利用该验证绕过漏洞,在UserOperation验证期间直接执行Token approve操作。由于签名验证流程被突破,攻击者未经付款方同意,即获得了多个智能账户内ERC20代币的授权权限,进而转移资金。
风险关注点:ERC-4337合约的异常处理边界
此次事件反映出ERC-4337账户抽象合约在签名恢复与权限校验的衔接处存在安全风险。开发者在设计验证逻辑时,需确保ECDSA.tryRecover等关键操作在返回异常时能够可靠中断执行,防止通过外部合约回调绕过后续校验。