北京时间6月23日,PeckShield「派盾」预警显示,BSC链上收益聚合器Eleven Finance中与Nerve相关的机枪池遭到闪电贷攻击。 PeckShield「派盾」通过追踪和分析发现,此次攻击源于Eleven Finance的Emergencyburn()计算余额错误,且未执行销毁机制,攻击者获利近460万美元。 有趣的是,几个小时后,昨天刚从Impossible Finance薅得近50万美元的攻击者,利用Eleven Finance的漏洞,通过闪电贷攻击获利近52万美元。 第一个攻击者创建了4个合约,进行了5次攻击。 PeckShield以合约0x8b29为例简述攻击过程: 首先,攻击者从PancakeSwap中借出953,869.6 BUSD,并将其中340,631.2 BUSD兑换474,387.75 NRV; 随后,攻击者将474,378.75 Nerve和366,962 BUSD在PancakeSwap中添加流动性,获得411,515.3 LP token; 攻击者将411,515.3 LP token放入Eleven Finance中与Nerve相关的机枪池获得411,515.3 11 nrvbusd LP token; 当攻击者提取Pancake LP token时,ElevenNeverSellVault中的Emergencyburn()函数本应销毁11 nrvbusd LP token换回Pancake LP token,但Emergencyburn()并未执行burn(销毁)这个动作,使得攻击者利用此逻辑错误获利。 该攻击者又创建了0x01ea合约,借出30.9 BTCB;0xc0ef合约借出285.66 ETH以及0x87E9借出两笔闪电贷2,411,889.87 BUSD和7,693 BUSD进行攻击。 攻击者通过利用集成的第三方合约功能进行攻击,这类问题较难检测到,例如,此前PeckShield「派盾」帮助Rari Capital避免更大损失案例一样,在定位漏洞根源时,由于合约交互容易干扰安全人员的判断,PeckShield「派盾」建议,开发人员应谨慎与任意第三方协议进行交互。 DeFi协议开发人员在集成第三方协议并将其部署到生产运行之前,应充分了解合约及其分支项目的运行情况。DeFi协议开发人员应在项目上线前,先将其部署在测试网上进行测试并及时检查交易记录中的异常情况。 “太快了,攻击者从合约部署,到完成攻击,甚至到再次发起攻击,这一系列操作有时候快得让人有些反应不过来。”PeckShield「派盾」安全人员表示,“因此,事前审计,事中响应,事后提出及时有效的安全方案都是缺一不可的,谁都不知道攻击者会不会在下一秒发起攻击。” (责任编辑:admin) |