BlockSec 心中的 2023 十大安全事件
BlockSec
2024-02-19 18:15
订阅此专栏
收藏此文章

“那些不记得过去的人注定要重蹈覆辙。”

2023 年,多起安全事件给社区造成了重大损失,对受害者而言无疑是一场悲剧然而,这些事件为社区敲响了警钟,提醒我们应当将安全置于首位。

在这些事件中,BlockSec 精选了十个各具特色的案例:有的戏剧性十足;有的展现了“创新”的攻击策略;有的导致了巨额经济损失;还有一些则利用了先前未知的攻击面。

本文中,们将概述这十起安全事件及其上榜理由对于每个安全事件,我们还将在单独的博客文章中提供更细节的分析,介绍漏洞成因和攻击步骤。

- 1 -

利用Flashbots Relay 中的漏洞攻击多个 MEV Bots

    概况

2023 年 4 月 3 日,攻击者利用 Flashbots Relay 中的漏洞攻击多个 MEV Bots,获利约 2000 万美元。此次攻击的根本原因是:在特定条件下,隐私交易(Private Transactions)可能会泄漏到公共交易池(Public Pool)中,攻击者可以通过 back-run 这笔泄露的交易来获取利润。

    上榜理由

攻击者使用复杂的方法,通过利用Flashbots 零日漏洞,创建蜜罐交易来引诱受害者,以及实施逃避检测的策略来攻击 MEV 机器人。这是迄今为止最复杂的攻击,它将底层区块链基础设施中的漏洞攻击策略有机结合起来,造成了重大的经济损失。

- 2 -

Euler Finance 事件:2023 年金额最大的黑客攻击事件

    概况

2023 年 3 月 13 日,Euler Finance 旗下的借贷池遭遇闪电贷攻击,导致损失近 2 亿美元。这次攻击源于 donateToReserves() 函数下缺少偿债能力健康检查(insolvency check)。这一漏洞使得攻击者能够利用高杠杆率的持仓向池子中添加资产,从而将该持仓的健康状况降至 100% 以下,并产生坏账。

Euler 的设计纳入了动态平仓因子 soft liquidations,这意味着头寸的健康状况越低,就有更多的抵押品符合清算条件——根据这次事件的数据,在坏账发生时,高达 75% 的抵押物可被清算。因此,以大幅折扣清算的抵押品使得攻击者能够偿还闪电贷并获得利润。

    上榜理由

20 岁的阿根廷小伙费德里科·哈梅(Federico Jaime)发起的盗窃行为创下了 1.97 亿美元的纪录。在描述事件经过时,他向媒体讲述了一个“曲折而有时令人困惑甚至自相矛盾”的故事。尽管如此,“所有可追回资金”后来都退回至 Euler Finance 的国库地址。其中一小部分资金(约 20 万美元)却在“无意中”转给了已被列入美国财政部制裁名单的朝鲜 APT 组织“Lazarus Group”。

- 3 -

KyberSwap 事件:通过极其精妙的计算,巧妙利用取整错误

    概况

2023 年 11 月 23 日,KyberSwap 遭受了一系列攻击,总损失超过 4800 万美元。根本问题源于 KyberSwap再投资过程中的错误取整方向,这随后导致了不正确的跳点计算,并最终导致了流动性的重复计算。

    上榜理由

此次攻击因其复杂程度“脱颖而出”,涉及到异常精细的计算,成为社区中许多精度相关安全事件的典型例子。此外,在项目方表示开放谈判后,攻击者向公众发出了一条挑衅性信息,声称要求完全控制 KyberSwap

- 4 -

Curve 事件:编译器错误使得无漏洞的源代码生成错误字节码

    概况

2023 年 7 月 30 日,多个 Curve 交易池遭受了一系列针对性攻击,造成数百万美元的损失。这是一次典型的重入攻击(reentrancy attack),但其根源并非来自源代码,而是由于编译器的缺陷,导致其生成的字节码中缺乏重入锁保护具体来说,是智能合约中不同函数的重入锁被错误地分配到了不同的存储槽中。因此,使用 Vyper 版本 0.2.15、0.2.16 以及 0.3.0 编译的智能合约都存在漏洞。

    上榜理由

此次漏洞源于编译器而非源代码。这是个由于编译器缺陷导致了巨额经济损失的案例。

- 5 -

Platypus Finance 事件:遭受三次攻击后依然坚挺

    概况

Platypus Finance 是一个“传奇”的 DeFi 协议,奇迹般地连续经历了三次攻击,具体如下:

- 2023 年 2 月 17 日,由于偿付能力检查错误,遭受了一次黑客攻击,导致总损失约 905 万美元。在 BlockSec 的帮助下,成功挽救了其中的 240 万美元损失,大约 380,000 个代币被困在 Aave 合约中,随后被退回。

- 2023 年 7 月 12 日,Platypus Finance 再次遭受黑客攻击,由于忽略稳定币之间的价格差而损失了约 5 万美元。

- 2023 年 10 月 12 日,遭受价格操纵攻击,损失约 220 万美元。经与攻击者交涉,90% 的被盗资金被归还。

常言道,“一个人的命运固然取决于自己的努力,但也要考虑历史的进程。”显然,该项目成功地在这些攻击中幸存下来。我们对这三次攻击的分析表明,如果采取更专业的代码审计或更积极的安全措施,这些逻辑漏洞是完全可以避免的。

    上榜理由

- 一次攻击后存活已经很少见,但三次攻击后依然存活则必须称之为“传奇”。

- 该项目遭受了三次不同的攻击,每次攻击都利用了不同的漏洞。

-BlockSec 的白帽行动帮助该项目成功挽救了 240 万美元

- 6 -

Hundred Finance 事件:第一张多米诺骨牌倒下,多个类似协议接连因“精度”漏洞遭受攻击

    概况

2023 年 4 月 16 日,基于 Compound v2 的分叉协议 Hundred Finance 遭受攻击,导致损失约 680 万美元。此次攻击涉及两个核心原因:

- 错误的取整问题;

- 无流动性的交易市场使得攻击者能够操纵汇率。

具体来说,攻击者利用精度问题的漏洞,影响抵押品的赎回和提取。未正确初始化的交易市场或交易池可能面临流动性短缺,这可能导致价格操纵,以及基础资产和相应份额代币(如 Compound 的 cToken)之间的流动性失衡。因此,Share Token 的价格可能会上涨,将其可以用作抵押品(只需少量的原始资产)即可大量借入其他有价值的基础资产(underlying asset)。最终,攻击者利用精度损失而得以赎回并提取有价值的基础资产。

Hundred Finance 的这一事件,以及随后针对 Aave v2 分叉协议 HopeLend 的攻击事件,为业内掀开了一种新的攻击范式通过操纵 LP 代币的汇率,攻击者可实现对这两个著名协议(Compound,Aave)及其分叉协议的攻击。

事实证明,随后一系列类似的攻击事件发生在了这些协议上。

    上榜理由

Hundred Finance 是第一个因精度损失而遭受黑客攻击的 Compound V2 分叉协议,并为一系列类似的 DeFi 攻击埋下了伏笔。此外,这一事件可能催化了后续针对 Aave V2 分叉协议的攻击浪潮。

- 7 -

ParaSpace 事件:与时间赛跑,业界最受瞩目的白帽救援

    概况

2023 年 3 月 17 日,由于价格预言机的漏洞,彼时位列头部的 NFT 借贷项目方 ParaSpace 成为了黑客的攻击目标。BlockSec Phalcon 系统及时介入,在黑客尝试攻击三次失败后,通过白帽救援行动挽救了价值 500 多万美元的 ETH

    上榜理由

业界最受瞩目的白帽救援行动:BlockSec Phalcon 挽救了价值 500 多万美元的数字资产。

- 8 -

SushiSwap 事件:一次失败的白帽救援,不幸导致了一系列模仿攻击

    概况

2023 年 4 月 9 日,SushiSwap 因一个未验证的外部参数的漏洞而成为攻击的受害者。该协议本身并未受损,但那些授予 RouteProcessor2 合约权限的用户成为了主要攻击目标。这次针对已向合约授权用户的攻击,以及其复制的容易性,导致了用户的大量损失。

BlockSec 成功挽救了 100 个 ETH 并将其归还给受害者。一个用户名为@trust__90 的白帽黑客发起了第一次白帽救援,但不幸的是这次救援失败了。由于该白帽黑客采用的方法易于复制,且仅旨在挽救风险资金中的一小部分。这为攻击者执行多个模仿交易敞开了大门,最终席卷了大部分资金。

    上榜理由

SushiSwap,作为以太坊上的领先协议,拥有庞大的用户群体,攻击影响范围极广。

白帽黑客的救援行动引发了多起模仿攻击,也引发了关于如何开展白帽救援和如何正确处理它的广泛讨论。

- 9 -

MEV Bot 0xd61492:从掠食者到闪电贷漏洞的猎物

    概况

2023 年 8 月 3 日,Arbitrum 上的一个 MEV Bot 遭到攻击,导致损失 80 万美元。此次攻击的根本原因是缺乏有效的输入验证机制。攻击者欺骗“Arbitrage MEV Bot”(0x8db0ef)从“Vault MEV Bot”(0xd61492)借钱,从而激活闪贷机制。与此同时,攻击者冒充闪电贷提供商,占有了借给“Arbitrage MEV Bot”的所有资产,并获取了“Vault MEV Bot”的授权。

考虑到 MEV Bot 之间复杂的交互以及缺乏开源验证,攻击者如何精准定位和执行这一系列复杂的漏洞路径令人困惑。

    上榜理由

由于 MEV 套利机器人的非开源性质,它们通常被视为神秘的掠食者。理解这些 MEV Bot 背后的确切逻辑具有一定的挑战性。然而,它们中的大多数利用闪电贷来最大限度地提高资金利用率,这为攻击者创造了机会。针对 MEV Bot 0xd61492 的黑客攻击,展示了如何利用 MEV Bot 与闪电贷提供者之间的交互进行攻击。

这起事件的有趣之处包括:

- 首先,该漏洞隐藏在 MEV Bot 模块复杂的回调函数中。

- 其次,绕过多合约 MEV Bot 系统中的限制。

- 10 -

ThirdWeb 事件:可信模块之间的不兼容性引发的漏洞

    概况

2023 年 12 月 5 日,ThirdWeb 的智能合约被发现存在漏洞,这涉及到 ERC-2771 和 Multicall 标准的不兼容性问题。ERC-2771 定义了一个通过可信转发器接收元交易(meta-transactions)的接口,而 Multicall 允许在单个交易中批量调用多个函数。当一个由可信中继转发的调用从 calldata 中检索实际调用者地址时,可能会出现问题,攻击者可以操纵这一地址。虽然每一个标准的行为都是正确的,但它们结合后,会打破某些既定假设,并导致执行结果与预期不符,带来安全问题。

    上榜理由

ERC-2771 和 Multicall 标准均在 OpenZeppelin 和 ThirdWeb 等流行开发库中实现。开发人员通常信任这些完善的代码库,并排除在代码审计范围外。这种疏忽可能会引入新的安全漏洞,即使是单独的模块本身并没有内在的缺陷。第三方库在软件安全性中扮演着至关重要的角色,这一事实常常被忽视


- 结论 -

在这篇文章中,我们概述了 2023 年的十起重大安全事件。

正如那句著名的格言所警示,“历史的教训是我们从未真正吸取过历史的教训”,这在我们不断面对新的安全威胁时显得尤为贴切和深刻。

我们希望通过这篇博客和后续的文章,能帮助社区更有效地汲取历史经验教训,避免在新的一年重复同样的错误。

作为一家全栈区块链安全服务商,BlockSec 始终致力于保护 Web3 社区的安全。BlockSec 提供全方位的 DeFi 安全解决方案,包括专业的代码审计服务、自动化攻击防御系统和安全事件响应能力。对于任何一家希望在 2024 年加强安全防护、切实保护用户资产的协议方而言,BlockSec 都会是您重要的合作伙伴。

请继续关注本系列的更多文章。


    关于 BlockSec
BlockSec 是全球领先的区块链安全公司,于 2021 年由多位安全行业的知名专家联合创立。公司致力于为 Web3 世界提升安全性和易用性,以推进 Web3 的大规模采用。为此,BlockSec 提供智能合约和 EVM 链的安全审计服务,面向项目方的安全开发、测试及黑客拦截系统 Phalcon,资金追踪调查平台 MetaSleuth,以及 web3 builder 的效率插件MetaSuites等。
目前公司已服务超 300 家客户,包括 MetaMask、Compound、Uniswap Foundation、Forta、PancakeSwap 等知名项目方,并获得来自绿洲资本、经纬创投、分布式资本等多家投资机构共计逾千万美元的两轮融资。
官网:www.blocksec.com
Twitter:https://twitter.com/BlockSecTeam
Phalcon: https://phalcon.xyz/
MetaSleuth: https://metasleuth.io/

MetaSuites: https://blocksec.com/metasuites

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

BlockSec
数据请求中
查看更多

推荐专栏

数据请求中
在 App 打开