损失超过 1 亿美元的 DeFi 安全事故已达到 8 起。
撰文:Ekin Genç & Stephen Graves
编译:南风
去中心化金融 (DeFi) 是旨在将中间商从借贷、储蓄和兑换等金融产品和服务中剔除的区块链应用程序。虽然 DeFi 有着高回报,但也伴随着很多风险。
由于几乎任何人都可以启动一个DeFi 协议并编写一些智能合约,因此代码中的漏洞是很常见的。在 DeFi 领域,有许多不择手段的人准备并有能力利用这些漏洞。当这种情况发生时,数百万美元的资金就会处于危险中,而用户往往没有追索权。
根据 Elliptic 去年 11 月的一份报告,DeFi 用户在 2021 年因被盗而损失了 105 亿美元。但是,正如我们将在下文中列出的一些最大的 DeFi 漏洞攻击所显示的那样,这个数字已经增长了数百万。(以下所有数字均为攻击事件发生时的资金价值。)
通常,Dapps (去中心化应用) 从它们所构建的区块链中获得主题灵感。因此,Avalanche (雪崩) 区块链的生态系统充满了以「雪」为主题的应用,比如 Snowtrace、Blizz 和 Defrost。与此同时,Fantom 区块链的生态系统就像是一个链上的万圣节派对。当出现问题时,这就增加了一层更加黑暗的色彩,比如 Fantom 链上的收益率优化协议 Grim Finance 发生的情况。
2021 年 12 月,Grim Finance 协议遭受了一次重入攻击 (reentrancy attack),这是一种攻击者在前一笔交易尚未结算时伪造额外的存款存入金库 (vault) 中的漏洞利用。最终,此次攻击导致了价值 3000 万美元的 Fantom 代币被盗。
DeFi 协议通常使用重入防护 (reentrancy guards),也即防止此类攻击的代码片段。区块链安全审计公司Solidity Finance 发布的 Grim Finance 审计报告错误地指出,该协议已经使用了重入防护。这提醒我们审计并不能保证漏洞不会发生。
有时候,一个 DeFi 协议不需要很长时间就会遭受第一次攻击。基于 BSC (币安智能链) 的借贷协议 Meerkat Finance 在 2021 年 3 月上线后仅一天就损失了 3100 万美元的用户资金。
攻击者在该合约中调用了一个函数,使该攻击者的地址成为了其金库合约的所有者,抽走了该项目中价值 1396 万美元的币安稳定币 BUSD,以及另外 73000 BNB (币安的原生代币),这些被盗的 BNB 当时的价值约为 1740 万美元。
许多用户认为这是一场内部作案:该协议开发人员实施了一场 Rug Pull (卷款跑路)。Meerkat 否认了这些指控。
2021 年夏天,Avalanche 链上的活动激增,这也吸引了那些渴望攻击该区块链网络新兴生态系统的人。
2021 年 9 月,借贷平台 Vee Finance 刚刚庆祝了其 TVL (总锁仓量) 达到 3 亿美元的里程碑,而一周后,该协议遭遇了 Avalanche 网络上最大的一场漏洞攻击。
此次攻击的发生,主要是因为 Vee Finance 的杠杆交易功能依赖于 Avalanche 上的主要流动性协议 Pangolin 提供的代币价格。为了利用这一点,攻击者在 Pangolin 上创建了 7 个交易对,提供流动性,最后在 Vee Finance 上进行杠杆交易。这使得该攻击者得以从 Vee Finance 协议中抽走价值 3500 万美元的加密货币。
在一条发给「亲爱的0x**95BA先生/女士」的推文中 (见下图),Vee Finance 协议要求该攻击者返还这笔资金,且作为该协议赏金计划的一部分,让攻击者保留一部分资金。但该攻击者并没有返还这笔资金的意愿。
Crypto 领域通常会经历短暂但强烈的趋势。2021 年春季,币安智能链 (BSC) (现已更名为 BNB 链) 有着最热门的 DeFi 趋势,特别是对散户用户,因为该链的网络费用较低。
但 BSC 链上也发生了许多骗局和黑客攻击,其中最大的一次是 2021 年 5 月的一次攻击,受攻击的是收益耕作协议 PancakeBunny。
一名黑客通过 8 次闪电贷攻击操纵了 PancakeBunny 的定价算法,抬高了协议原生代币 BUNNY 的价格。该黑客先以市场价格低价买入 BUNNY,然后在人为抬高其价格之后高价卖出,盈利 4500 万美元。
2021 年 11 月,多链借贷协议 bZx 在「私钥」被泄露后遭到黑客攻击。该协议在 BSC 和 Polygon 链上总共损失了 5500 万美元。
但 bZx 此前已经经历过两次类似的痛苦。
虽然闪电贷攻击是目前 DeFi 领域常见的攻击策略,但 bZx 在这方面是一个「OG」(元老级项目)。2020 年 2 月,该协议成为闪电贷攻击的目标,攻击目标是其保证金交易平台 Fulcrum。这名黑客盗走了 1300 wETH,当时价值 36.6 万美元。
在 2020 年 9 月的另一次攻击中,bZx 损失了锁定在其金库的 30% 的资金,当时价值 800 万美元。不过,持有未平仓保证金头寸的用户并没有遭受损失,因为正如该协议后来在一份报告中所说,这些资金是从 bZx 的保险基金中取出的。
智能合约漏洞并不总是会导致一个 DeFi 项目仅仅损失数百万美元。
2021 年 12 月,将比特币带至 DeFi 的网桥 Badger DAO 遭受了 1.2 亿美元的损失,攻击者通过在用户界面植入恶意钱包请求,诱导 Badger DAO 用户为恶意地址批准代币使用权限,从而使攻击者控制用户的金库资金并转移资金。此次攻击造成的损失达 1.203 亿美元,包括约 2,100 BTC 和 151 ETH。
区块链安全公司 PeckShield 表示,该协议的合约是安全的,只有用户界面受到了影响。
DeFi 借贷协议 Cream Finance 在 2021 年 10 月的一次闪电贷攻击中损失了 1.3 亿美元,这是该协议遭受的第三次攻击。
闪电贷 (flash loans) 允许你获得即时贷款,前提是你必须在同一笔交易中偿还这笔贷款。虽然闪电贷对于套利很有用,但它被恶意行为者广泛使用,以利用 DeFi 协议中的漏洞。在 Cream Finance 的案例中,闪电贷攻击者得以利用定价漏洞,通过不同的以太坊地址反复获取闪电贷。
Cream Finance 在此之前也经历过闪电贷攻击。2021 年 8 月,一名黑客在另一次闪电贷攻击中从 Cream Finance 窃取了大约 2500 万美元,主要针对 Flexa Network 的原生代币 AMP。在 2021 年 2 月的一次闪电贷攻击中,黑客从 Cream Finance 协议池中窃取了 3750 万美元。
「边玩边赚」(P2E) 是 Crypto 领域的最新趋势之一,但它并没有摆脱老式的骗局和陷阱——尤其是那些利用中心化功能的骗局和陷阱。Vulcan Forged 是 Polygon 上的一个 P2E 平台,在 2021 年 12 月,其用户损失了 1.4 亿美元,这是一个惨痛的教训。
根据一份事后调查报告,一名黑客获得了该平台的中心化用户钱包 Venly的凭证,从而获得了 96 个加密钱包的私钥。之后,该黑客利用它获得了该平台的资产组合功能 MyForge 中的私钥,最终盗走了其用户 450 万 Vulcan Forged 原生代币 PYR。
Vulcan Forged 首席执行官 Jamie Thomson 在向社区发表的讲话中表示:「当然,未来我们将只使用去中心化的钱包,这样我们就永远不会再遇到这个问题。」
与大多数 DeFi 协议一样,借贷协议 Compound 有一个治理代币 COMP,该协议在特定条件下向用户分发该代币。
2021 年 10 月,有消息称 Compound 有一个漏洞,即允许借款者 (borrowers) 索要超出其预期的 COMP 份额,这个漏洞涉及到 Compound 的两个金库 (资金池)。用户可以在 Reservoir 金库上调用一个特定的函数 drip(),触发了价值 8000 万美元的 COMP被发送到另一个金库 Comptroller。该金库会自动将大量 COMP 代币分发到错误的地址中。这个「漏水的水龙头」是由之前的一次协议更新中引入的错误造成的。
在价值 8000 万美元的 COMP 被发送给错误的地址之后,该团队匆忙修补了一个补丁。但是在实施任何修复之前,该协议要求通过一项治理提案。该提案创建于10月2日,最终在10月9日被接受。而在社区争论的同时,这两个金库又损失了 6880 万美元。
Compound 的创始人 Robert Leshner 是如何试图把钱拿回来的?他在推特上呼吁「将 COMP 退还给社区。」之后,几乎一半的资金被退回。
闪电贷,如此有用却又如此危险!就在庆祝获得 1.5 亿美元 TVL 之后两天,基于以太坊的稳定币协议 Beanstalk 发现 1.82 亿美元在一次闪电贷攻击中失踪。该攻击者成功地通过 Tornado Cash 将价值 8000 万美元的 ETH 进行清洗。Beanstalk 以其算法稳定币 BEAN 而闻名,该稳定币的价值应该是锚定 1 美元。虽然该稳定币在此次攻击发生不久之后设法保持了其锚定,但此次攻击事件表明,算法稳定币的稳定性取决于支撑它们的合约。
随着越来越多的 L1 (第一层) 区块链上构建 DeFi,用户在 L1 链之间转移资金的愿望越来越大。「跨链桥」解决了这一需求,但它们也带来了新的漏洞。最具破坏性的跨链事件发生在 2022 年 1 月,当时受欢迎的跨链桥 Wormhole (连接 Solana 和以太坊) 发生黑客攻击事件,损失了 3.2 亿美元的 wETH。wETH 是一种与以太坊价格 1:1 挂钩的加密货币。
用户在使用 Wormhole 跨链桥时,必须首先将 ETH 锁定在一个智能合约中,以获得等量的 wETH。该黑客设法找到了一个绕过这个的方法,在没有在 Wormhole 合约中锁定 ETH 的情况下铸造了 WETH。
Jump Trading Group 是 Wormhole 开发的利益相关者之一,该团队主动补充了 Wormhole 丢失的 ETH。短短一天后,Wormhole 桥重新上线。
基于 NFT 的游戏 Axie Infinity 是去年最成功的加密游戏之一。2022 年 3 月 23 日,它成为了加密货币领域最大黑客攻击之一的受害者,攻击者使用「被盗取的私钥」将大约有价值 5.52 亿美元的加密货币从 Ronin 跨链桥盗走。
一周后,当 Axie Infinity 的开发商 Sky Mavis 披露该漏洞时,被窃取的资金价值已上升至 6.22 亿美元。
根据 Sky Mavis 的一份报告,攻击者「通过我们 gas-free 的 RPC 节点找到了一个后门,然后滥用这个后门来获得 Axie DAO 验证器的签名。」
Ronin 侧链由 9 个验证者节点保护,为了识别 Deposit (存款) 事件或 Withdraw (取款) 事件,需要这 9 个验证器节点中的 5 个进行签名。3 月 23 日,攻击者成功地控制了其中的 5 个节点 (包括 Sky Mavis 自己运行的 4 个节点以及 1 个由 Axie DAO 运行的节点),这 5 个验证者的私钥被盗。这让攻击者得以伪造交易,并取走 173,600 wETH 和 2550 万 USDC,总计约 6.22 亿美元。
「这是历史上规模最大的黑客事件之一,」Axie Infinity 联合创始人 Jeff Zirlin 指出,「(黑客) 有可能被发现,并被绳之以法。」
Poly Network 的黑客攻击仍然是加密领域最大的攻击事件。幸运的是,这个始于 2021 年 8 月 10 日的传奇事件在经历了一系列奇怪的转折后,在三天之后以美满的结局结束了。
这场盗窃始于攻击者利用 Poly Network 「合同调用」的一个漏洞。该黑客迅速盗取了价值 6.11 亿美元的各种加密货币,导致Poly Network 发布了一封绝望的信,并附上了「亲爱的黑客」的称呼。
这种沟通尝试,以及随后的努力,最终发挥了作用。该协议提供了 50 万美元的赏金,并为这名黑客提供了成为其首席安全顾问的机会。但在一次链上问答环节中,该攻击者解释说,此次攻击只是为了给 Poly Network 一个教训。该攻击者说,将资金归还是其「一直以来的计划」。
加密货币安全公司 SlowMist 表示,已识别出该攻击者的 IP 和电子邮件信息,且这场攻击「可能是一次长期计划、有组织和有准备的攻击」。
「现在每个人都闻到了阴谋的味道。」这名黑客说道。他否认自己是内鬼。「但谁知道呢?」
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。