从新概念 Gamefi 到 NFTfi,从 Uniswap 的袜子代币「Socks」到「NFTweet」,新兴加密艺术家们总是能通过各种方式让 NFT 更有趣,更具可玩性。

在将囚徒困境等博弈论等经济模型引入 NFT 后,更是让一些游戏项目充满了想象空间,不过,对于加密玩家来说,可能要将智能合约或「科学家」等没遇到的因素考虑在内了。

今年 11 月底,知名加密媒体 The DeFiant 创始人 Robin Schmidt、艺术家 Simon Wan 和 MEME 团队一起打造了一个名未「The Rug Pull」的活动。具体玩法是主办方拍卖 12 件 NFT,其中 1 件里藏有 1 枚比特币——当时还只价值约 12 万元人民币,如今已经涨至 22 万元人民币。

理论上,玩家拿到比特币的概率是 1/12,但如果有人打开了自己的 NFT,也就意味着这个 NF 是否存有比特币的信息将会被公开,如果刚好存有比特币,那意味着其他的 NFT 一文不值。这一次拍卖引起了不少人关注,最终,这 12 件 NFT 以 6.5 万美元的价格 (以 MEME 代币支付) 拍卖成功,12 位玩家拿走了属于他们的 NFT。

购买成功者们可以选择不打开或合谋打开均分这一枚比特币,但谁也不知道结果。

但仅仅一个月后,拍卖后续的进展出乎所有人预料:一位名叫「RStudios」的玩家在不需要确定哪个 NFT 中有比特币的情况下,成功拿走了这 1 枚比特币。

最终的结果让人大跌眼镜,那这位玩家又是如何拿走这一枚看似「封存」得很好的比特币呢?为一探究竟,Rekt 调查了整个事件的来龙去脉,并拿到了主办方的回应。主办方认为,即便没有达到预期,但这不意味着此次拍卖活动的失败。

成功拿走 1 枚比特币

据官方披露,12 位玩家在这次 NFT 拍卖中支付了 4 千-8.4 千美元不等的资金,各自拿到了其中 1 个作品。只要没有人打开,那么一个 NFT 作品的价值至少与 1/12 的 BTC 价格相当。

NFT

但一个大部分人没考虑到的问题是:如果不需要 NFT,就能直接拿走其中的比特币呢?这个漏洞被人发现了。

让我们跟着线索回到拍卖当天,2020 年 11 月 11 日,一个名叫「RStudios」的玩家出现在了 Discord。RStudios 跟 MEME 官方并没有关联,因为他的钱包地址链上数据给出了证据:他曾参与过其他 NFT 项目,这些能够在 OpenSea 上看到。

NFT

在拍卖结束后,有人看见他说了一句话:好吧,好像昨天没人想回复我,这个活动的随机数字发生器有被攻击的漏洞 (its an insecure RNG dice roll)。

NFT

大约一个月后的 12 月 26 日,代码真的就被利用了。下面是当天相关过程的概述:

1、RStudios 以 1.3 万 DAI 的价格(还砍价了)从「y_kymin」的玩家那里收购了一个 NFT。

NFT

2、紧接着,他通过一系列操作取走了 WBTC。

NFT

3、最后,RStudios 又以 1.7 ETH 的价格卖掉了这个 NFT,一共获利 1WBTC 和 1.7 ETH,当然还要减去他为 NFT 支付的 13000 DAI。

NFT

NFT

实际上,Rstudios 并不需要知道哪个 NFT 里面有比特币,就能拿走比特币。虽然这次「袭击」花了他几天时间,用他的话来说:「这并不容易。」后来,他还出售了「空」的 NFT,也引发了争议,Rstudios 表示会买回它。

NFT

如何看待这一事件?

从上面的梳理我们看到了,对于买入 NFT 的玩家来说,真真切切遭受了损失,不过,主办方坚持认为一切正常。活动发起人 The DeFiant 创始人 Robin Schmidt 表示,出现这样的「意外」确实打破了他们最初的计划,让活动过早的结束。

但他认为,12 位买家中的一位卖掉了自己的 NFT,「打破了业已建立起来的公认的脆弱信任圈」,「这证明了众所周知的一点:链条的强度取决于它最薄弱的一环。」

另一个有意思的问题是,当 Rstudios 将比特币从 NFT 中移除后,是自己公开了这一情况,但如果他隐瞒了,结果又会怎样呢?可能最后 12 个玩家忍不住一起打开后发现空无一币,又或者这个秘密会一直被保守。

但真实情况是:一个看似没有漏洞的完美实验被有心者利用了,损失最大的是另外 11 位 NFT 玩家。而似乎可以将造成这一结局的部分原因归咎于项目发起者,资产损失的是参与游戏的玩家。

而在瞬息变化的加密世界,这样的漏洞,往往被定义为「实验」。