Yuga Labs 的 NFT 抢救行动挽救了 68 个 NFT,价值超过 50 万美元。

  |  

6月8日, Yuga Labs完成了一次罕见的NFT抢救行动,在攻击者从Flooring Protocol被入侵的流动性池中窃取资金之前,成功从一次活跃的漏洞攻击中抢救出68个高价值数字资产。被抢救的NFT包括Bored Apes、CryptoPunks、Azuki、Doodles和Moonbirds,总价值超过50万美元。

首席执行官迈克尔·菲格证实救援行动已经完成,并表示追回的资产目前已安全交由 Yuga Labs 保管。与此同时,此次救援行动因其速度和精准性而立即引起了 NFT 和区块链安全社区的广泛关注。

对于不熟悉 Flooring Protocol 项目的读者来说,该协议允许用户锁定 NFT 以换取同质化代币。然而,在实践中,这个简单的想法却成了它的弱点:协议智能合约逻辑中一个隐藏很深的漏洞,使得该机制变成了攻击的途径。

Yuga Labs NFT救援行动成功保住了68个蓝筹NFT

此次成功解救的NFT全部包括29个Bored Apes、4个Mutant Apes、1个BAKC、2个CryptoPunks、1个Azuki、2个Elementals、26个Captains、1个Moonbird和2个Doodles。这些资产堪称蓝筹NFT收藏中的佼佼者,因此它们的出现迅速引起了交易员和安全研究人员的警觉。

Yuga Labs 找回了哪些 NFT,以及这些 NFT 目前在哪里。

目前,全部 68 个 NFT 均由 Yuga Labs 安全保管。该公司表示,在 Flooring Protocol 的开发团队部署正式修复程序后,会将这些 NFT 归还给其合法所有者。在补丁正式上线之前,不会进行任何资产转移,这表明该公司将用户安全置于速度之上。

这一点至关重要,因为这些并非无人问津、尘封在某个协议角落的冷门资产。其中一些被救出的NFT属于价值数万美元的收藏系列。如果攻击者将它们全部洗劫一空,NFT生态系统将遭受公开的重大损失。

Flooring Protocol漏洞是如何运作的

为什么这个漏洞可以无限量地铸造 fpToken?

此次漏洞背后的技术路径至关重要。Yuga Labs 的区块链负责人(链上代号为 0xQuit)追踪到漏洞源于 Flooring Protocol 智能合约内部打包的所有权和索引逻辑。

简单来说,恶意代币 ID 可以通过所有权验证,而底层账务系统却记录了不同的结果。这种不匹配造成了 0xQuit 所描述的“幽灵所有权”,即代币看似已被拥有,但余额计算却不符。之后,未经核实的余额更新会触发余额下溢,使攻击者的fpToken 余额膨胀到远超其应有的水平。

因此,只需少量WETH就能创造出近乎无限量的fpToken。这种可互换代币漏洞随后被用于攻击NFT流动性池。

对 Flooring Protocol V2 和 BitmapPunks 的影响

攻击者一旦获得了虚高的代币余额,接下来的攻击便遵循一套固定的模式。他们将 fpToken 的价格推至接近零,耗尽了流动性池,然后赎回了底层的 NFT。Flooring Protocol V2 和 BitmapPunks 都受到了影响,BitmapPunks 团队自身的流动性池也通过同样的攻击途径遭到了攻击。

Flooring Protocol 的首席开发者 0xFreeLunch 公开承认了这一漏洞,并表示该漏洞通过了多次安全审查。他解释说,节省 gas 的位级代码掩盖了这一缺陷,使其未被审计人员发现,并承担了合约架构的直接责任。这一承认引发了人们的担忧:究竟有多少经过审计的合约可能仍然存在隐藏的风险?

救援行动内幕及对用户的警告

Yuga Labs NFT 抢救行动中,速度至关重要。Yuga Labs 的交易平台 GrailsOTC 提供了所需的资金和 NFT,以便在攻击者得手之前将面临风险的资产从易受攻击的资金池中转移出来。安全研究员 Coffee 也参与了此次行动,并在整个过程中提供了帮助。

在团队完全了解威胁的严重程度之前,部分藏品已被部分盗取。即便如此,救援行动仍然找回了价值超过50万美元的68个NFT,考虑到攻击已经开始,这一结果更显意义重大。

Yuga Labs内部团队和外部研究人员的协调应对,体现了一种快速、社区驱动的安全工作模式,值得整个NFT行业借鉴。当协议缺乏资源或速度来保护自身安全时,外部支持可以发挥至关重要的作用。

然而,该漏洞尚未修复,这一点对用户而言仍然至关重要。0xQuit 发出直接警告:在漏洞仍然存在之前,请勿向 Flooring Protocol 存入任何新的 NFT。任何新存入的资产都将面临同样的攻击风险。

Flooring Protocol 团队正在追踪被盗资产,并与安全团队和交易所合作,以尽量减少进一步损失。即便如此,在正式补丁发布之前,用户仍应禁止向该协议存入资金。

这也不是 Flooring Protocol 首次遭遇安全事件。此前的一次安全漏洞导致该协议损失了价值约 150 万美元的 NFT,这更加凸显了此次事件的紧迫性,也引发了人们对该协议设计选择的质疑。

更广泛地说,此次事件表明,经过审计的智能合约并非绝对安全。高度压缩的数据结构、位级优化和极端情况逻辑可能会掩盖严重的缺陷,这些缺陷只有在受到攻击的情况下才会显现。对于任何代表用户持有真实资产的协议而言,“经过审计”和“安全”之间的差距都可能转化为实际的经济损失。

常问问题

Flooring Protocol漏洞的性质是什么?

Flooring Protocol 智能合约中的一个漏洞允许攻击者使用少量 WETH 生成近乎无限的 fpToken 余额。该漏洞源于打包所有权和索引逻辑,该逻辑创建了“幽灵所有权”,从而导致余额溢出并耗尽 NFT 流动性池。

Yuga Labs 抢救了多少 NFT?它们的价值是多少?

Yuga Labs 成功挽救了 68 个 NFT,包括 Bored Apes、Mutant Apes、CryptoPunks、Azuki、Doodles、Moonbirds 等。这些被挽救的资产价值超过 50 万美元。

谁协助了Yuga Labs进行救援行动?

Yuga Labs旗下的交易平台GrailsOTC提供了将资产从易受攻击的资金池中转移出来所需的资金和NFT。安全研究员Coffee也参与了此次行动。

现在将NFT存入Flooring Protocol安全吗?

不。Yuga Labs 区块链负责人 0xQuit 已警告用户,在漏洞完全修复且正式部署修复程序之前,不要将新的 NFT 存入 Flooring Protocol。

Flooring Protocol智能合约的漏洞是由什么原因造成的?

该漏洞源于合约代码中封装的所有权和索引逻辑。一项旨在节省 gas 的位级优化在多次安全审查中掩盖了该漏洞,使得恶意代币 ID 能够通过所有权检查,而余额核算却返回不同的结果。

推荐阅读

相关文章

NFT前世今生

盘点2021年的网络热词,除“元宇宙”外,另一个被频繁提及的词就是NFT。