3月20日(UTC时间)凌晨2时51分,跨链DEX聚合器Li Finance的协议漏洞被黑客利用,导致29个用户钱包被盗,丢失了价值约60万美元的加密资产,包括USDC、MATIC等10种加密资产。
事故发生后,Li Finance关闭了所有兑换功能。21日凌晨,该应用官方发布的详细说明显示,黑客利用了Li Finance智能合约中的漏洞,导致资产无需兑换就能直接从智能合约中调用代币合约,造成那些无限授权合约的用户资产被盗。
目前,Li Finance已经修复了漏洞,受影响的29个钱包中的25个已经获得了赔付,但赔付总金额仅为8万美元,还有4个钱包中价值517000美元的被盗资产未能解决,提出转为「天使投资」的建议。
Li Finance披露,这次攻击事件恰恰发生在安全审计前夕。事故也再次提醒DeFi用户,在使用DeFi应用时,需要仔细考察应用的审计情况,并谨慎授权应用。
Li Finance失窃总损失60万美元
3月21日,Li Finance官方在Medium上详细披露了受攻击的过程。
由于Li Finance是一个跨链DEX聚合器,因此该应用的智能合约允许调用者使用具有调用数据的地址来传递多个交换数组。「这种设计为我们可以调用哪些DEX 以及可用什么方法调用等方面提供了最大的灵活性。这也允许任何人调用其他合约,而不仅仅是 DEX。」
而也正是这一设计为黑客提供了可钻的漏洞——攻击者首先传递了少量合法兑换,然后直接多次调用各种代币合约,「具体来说,他们调用了『transferForm』,这种方法允许攻击者从用户的钱包中转移资金,而这些钱包之前已经无限地授权了对该特定代币的合约。」
LiFinance公示攻击者调用合约图例
Li Finance表示,这种调用方式「是有效的」,因为这些调用是在合约的上下文中执行的,该合约有权转移用户的资产,攻击者将这些代币转移到了他控制的单独钱包中,「一旦转账完成,一开始交换的小额资金就被桥连接起来,交易就完成了。」
据Li Finance披露,3月20日凌晨,攻击者利用该漏洞完成了一笔交易,通过该交易从29个钱包中窃取了大概价值60万美元的加密资产(当时价值587500美元或205 ETH),包括USDC、MATIC、RPL、GNO、USDT、MVI、AUDIO、AAVE、JRT 和 DAI。这些资产被攻击者兑换为204.7 ETH。
发现漏洞后,Li Finance禁用了所有允许交换的合约方法,并添加了一个白名单,仅允许外部调用Li Finance批准过的DEX,最重要的是,该应用禁用了「无限批准」功能。
计划将大额受损钱包转化为「天使投资」
在修复漏洞后,Li Finance宣称,他们在不到18个小时内补偿了大多数受影响的用户,即29个受损钱包中,有25个钱包得到了偿还,偿还价值在8万美元左右,而剩余未赔付的4个钱包,受损规模在51.7万美元。
对于大额亏损的4个钱包,Li Finance提议,「为了减少我们的财务损失,我们愿意将损失的资金转化为对 LI.FI 的天使投资。(损失用户)作为投资者,将适用当前融资轮投资者的条款。」Li Finance也表态,最终由用户决定接受或拒绝这一提议,他们已经根据主网上的一笔交易并通过推特联系了尚未获赔的4个受影响的钱包。
值得注意的是,这次攻击恰好发生在Li Finance进行安全审计的前夕。该应用在一个月前实施了自己的智能合约,「时机再糟糕不过了,因为我们距离审计开始只有一周的时间了。」
Li Finance称,他们试图在DeFi基础设施和应用层之间构建一个中间层,聚合和抽象出一个桥梁,并将它们连接到每条链上的DEX 及聚合器上,以促进跨链交易,在评估和衡量去中心化程度、信用假设、费用、Gas效率以及速度等因素后,使用了集成合作伙伴和最终用户的阈值、偏好来选择路径的方式,「可悲的是,这次漏洞利用来自的是我们自己的智能合约。」
Li Finance的安全事故再次说明了DeFi安全的重要性。
截至3 月 21 日,去中心化金融DeFi中锁定的加密资产总价值(TVL)再次突破了2000亿美元的大关,相当于1/4个特斯拉的市值。1 月底,DeFi的TVL曾跌至1852亿美元的低点。
DeFi市场回暖,但应用的智能合约安全性仍然是威胁生态发展的重大问题。
据比特安数据监测中心统计显示,仅今年2月,DeFi领域已发生7起安全事故,其中,跨链桥Wormhole被黑客攻击,被盗资金价值超过3.26亿美元;韩国的DeFi项目KLAYswap遭黑客攻击,损失约183万美元。
此外,2 月 6 日,Meter跨链桥遭黑客攻击,损失约430万美元。4天后的 2 月 10日,DeFi应用Dego Finance遭到黑客攻击,UniSwap 和 PancakeSwap 上的 DEGO 流动性被耗尽,三条链上总计损失约1762万美元。
2月14日,抵押协议Titano Finance被漏洞利用,黑客盗取大约4828.7BNB,约合1900万美元。次日,Build Finance项目又遭遇恶意治理接管,攻击者成功控制 Build 代币合约,铸造了 110万 BUILD代币并耗尽了项目的流动资金池,获利共16 ETH、2001 USDC 、481405 DAI、75719 NCR,共计折合约为112万美元。
2月23日,DeFi 收益协议Flurry Finance 出现漏洞,黑客利用了部署在 Finance Rabbit 策略上的资金。
对于用户来说,关注应用的安全审计仍然是不得不做的功课,此外,面对各种各样的应用,用户在使用时还需谨慎授权自己的钱包。
(声明:请读者严格遵守所在地法律法规,本文不代表任何投资建议)