DeFi漏洞:趋势、模式和经验教训
尽管DeFi出现了爆炸式增长,但由于缺乏安全措施,过去两年已有超过42亿美元被盗。本文探讨了这些漏洞背后的趋势和模式,包括最常见的根本原因。
原文标题:DeFi Exploits: Trends, Patterns, and Lessons Learnt
原文作者:Token Terminal
原文来源:Substack
编译:若华, Marsbit Intern
尽管DeFi出现了爆炸式增长,但由于缺乏安全措施,过去两年已有超过42亿美元被盗。本文探讨了这些漏洞背后的趋势和模式,包括最常见的根本原因。我们探讨了DeFi生态系统为减轻这些风险所采取的措施,特别是大规模的风险。最后,我们来看看被盗的钱在被攻击之后的去向,以及最近美国财政部海外资产控制办公室OFAC对货币混合器协议Tornado Cash的制裁,对此有何影响。
摘要
●尽管DeFi出现了爆炸性的增长,但在105个链上漏洞中,有超过42亿美元从各种协议中被盗。这些漏洞需要被分析和减轻,以使DeFi成熟为一个可信的和值得信赖的行业。
●按照平均值,跨链桥和中心化交易所(CEX)钱包这两个地方会产生最大的黑客攻击,而收益聚合器和借贷协议被利用的频率最高。最大的漏洞往往是在多个链上或主要的生态系统桥上。
●链上漏洞背后最常见的根本原因可以大致归类为:
○智能合约的漏洞,通常伴随着闪电贷和/或 oracle数据的操纵。
○私钥被破坏,通常是通过社会工程,如黑客使用的"鱼叉式钓鱼攻击"(spear-phishing attack)的手法。
○协议前端欺骗,其目标是个人用户而不是协议资金本身。
●消除智能合约的漏洞,是迄今为止已确定的三个根本原因中最困难的一个,因为攻击载体是极其多样的。大规模地解决这些风险,很可能需要结合形式验证软件来自动检测漏洞,以及DeFi安全审计来全面审查智能合约。
●虽然未来减轻风险是至关重要的,但追回被盗资金也很重要。虽然混合协议Tornado Cash以前是黑客最常见的逃跑途径,但在朝鲜网络犯罪集体Lazarus Group被追踪为用户后,它已经被美国政府制裁了。随着兑现黑钱的常用方法被关闭,漏洞正在寻找新的替代方案。
迄今为止,发生量最大的十大漏洞的协议和链的目录如下:
目录:
1、漏洞限制了DeFi的发展
2、趋势和模式
2.1 跨链桥受影响最严重
2.2 最大的攻击,往往是多链式的
3、根本原因
3.1 智能合约的漏洞
3.2 被破坏的私钥
3.3 协议前端欺骗
4、汲取的经验教训和未来的缓解
4.1 自动化的形式验证
4.2 DeFi安全审计
5、钱去哪里了?
5.1 Tornado Cash和OFAC制裁
5.2 潜在的替代方案:Aztec网络(一个开源的第 2 层网络,为以太坊带来了可扩展性和隐私性)
6、结论和关键见解
漏洞限制了DeFi的增长
自2020年DeFi之夏以来,无论是在用户采用度还是在协议部署数量方面,DeFi都经历了大幅增长。在某一时刻,如果将整个DeFi的所有价值汇总起来,它将代表美国第31大银行。
虽然对于一个已经两年的行业来说,第31位这个数字听起来令人印象深刻。但有些人认为,安全措施并没有跟上这种爆炸性增长的步伐。在过去的两年里,所有DeFi都有超过一百个记录在案的黑客和漏洞,加起来有43亿美元的资产损失。如果这种情况发生在一家TradFi银行身上,很难想象监管机构会有什么样的令人不快的抱怨。
随着资金规模的扩大,如果不解决这些安全问题, 的DeFi将越来越难成为一个值得信赖的行业。对DeFi的未来发展来说,分析和缓解这些漏洞至关重要。
本文探讨了这些漏洞背后的趋势和关键根源,然后探讨了行业如何向前发展,以解决这些风险。在此分析的基础上,我们将使用DeFi漏洞时事通讯rekt所列出的事件,该通讯追踪了大多数主要的链上协议的黑客攻击。(附:rekt 是一个供匿名作者发布信息的公共平台,上面汇集了 DeFi 项目被黑客攻击、闪电贷攻击和漏洞利用的事件。)
趋势和模式
跨链桥受影响最严重
跨链桥在最大的漏洞排名中占主导地位,包括迄今为止最大的三个DeFi漏洞:6.24亿美元的Ronin Network,6.11亿美元的Poly Network,3.26亿美元的Wormhole。平均而言,网桥所保障的价值比其他类型的协议要高得多,每次黑客攻击所窃取的价值超过1.88亿美元。这是因为桥接器的性质要求它们持有大量的资产。
为了将资产从一个生态系统连接到另一个生态系统,用户首先将资产存储到原始链中的一个保险库中。这些资产被锁定,然后在目标链上铸造等价的资产。新铸造的资产作为一个借据,可以被烧毁以解锁原始链上的资产。由于桥拥有大量的这些锁定资产,控制这些金库的桥协议是非常受欢迎的漏洞目标。
CEX热钱包,也往往持有大量的用户资金,产生类似的模式,以前的漏洞包括Bitmart的1.96亿美元,Ascendex的7700万美元和Kucoin的4500万美元。
虽然有强大安全措施的CEX将大部分资产存储在冷钱包上,但一些政策不那么严格的交易所将大部分资产留在热钱包上,而热钱包更容易被利用。
按协议类型划分的资金损失资金金额
另一方面,收益聚合器和借贷协议是最常见的漏洞目标,但每次黑客攻击的损失金额往往较低。
按协议类型划分的漏洞数量
最大的攻击往往是多链式的
许多最大的攻击发生在多个链上,跨链桥和CEX热钱包占了22亿美元的被盗资金,超过总被盗金额的52%。
在这些大规模的多链攻击之后,以太坊、Ronin、Solana和Binance智能链上也出现了大量的资产损失。
以太坊和Binance智能链有一个长期存在的DeFi生态系统,其TVL(加密货币中的总价值锁定)一直高于其他链。这两条链也往往是新项目将启动的第一个生态系统,有更多的潜在漏洞可以被利用。另一方面,Ronin和Solana是主要的跨链桥漏洞的受害者,通过这些漏洞,他们生态系统的大部分TVL被盗。
各链的资金损失量
总的来说,桥接器和CEXs往往产生最大的损失,而收益聚合器和借贷协议更被频繁利用。最大的漏洞往往发生在跨越多个链的项目上,或者是占据了该链总TVL的很大一部分的生态系统桥上。
根本原因
一般来说,根本原因可以分为三大类:
- 智能合约的漏洞
- 被破坏的私钥
- 协议前端欺骗
智能合约漏洞往往是最难缓解的风险,因为攻击载体非常多样,因此在漏洞金额的指标和漏洞数量方面都占主导地位。
被破坏的私钥通常在每次黑客攻击中产生更高的损失,因为这通常是更大资产池(如桥、CEX钱包或协议库)的攻击载体。
按根本原因划分的漏洞金额
按根本原因划分的漏洞数量
智能合约漏洞
自2020年9月以来,智能合约代码中的漏洞占总黑客攻击的73%。漏洞的类别差别很大,往往取决于有关协议的类型。对于借贷协议或DEX来说,漏洞通常涉及到闪电贷和/或价格馈赠数据库操纵的组合,而对于桥来说,这可能涉及到专门针对底层代码的更复杂的方法。
最近的一个例子是Inverse Finance,这是一个基于以太坊的借贷协议,在2022年6月损失超过580万美元。这个特殊的漏洞涉及从AAVE获得大量的闪电贷,人为地推高预存的抵押品的价格,这使得黑客得以耗尽借贷池。
除了由恶意的外部方实施的漏洞,还有由团队自己造成的智能合约的自我错误,导致协议的大量损失。这方面值得注意的例子是Compound的8000万美元和Alchemix的650万美元。
在这两起事件中,有缺陷的智能合约最终向用户分发了超过预期数额的资金。在Compound的案例中,有问题的代码是由一个社区成员编写的,只是由其他社区成员进行了同行评审,没有核心团队的直接参与。
关于【DeFi漏洞:趋势、模式和经验教训】的延伸阅读
Rollup去中心化:Aztec的去中心化Sequencer方案解析
解析ZKR如何实现定序器节点的去中心化。
一文了解暂停Aztec Connect后Aztec推出的混合式 zkRollup是什么?
Aztec的目标是,在比Connect更强的隐私保障的同时,使其更容易理解。
被破坏的密钥
虽然被破坏的私钥产生了最大的黑客攻击,平均每次黑客攻击为9100万美元,但具有讽刺意味的是,它也是最容易避免的攻击媒介。通常用于保护跨链桥或协议库,一些最引人注目的漏洞都是由于密钥被盗。
这可以归结为两个次要原因:(1)秘钥存储时缺乏操作安全性;(2)秘钥持有人的集中化。尽管窃取秘钥的确切方法仍不为人知,但许多人推测,这些漏洞是通过社会工程的鱼叉式攻击进行的。
以Ronin网络为例,一个团队成员下载了一个包含待遇优厚的假工作机会的PDF。通过这个有缺陷的PDF,团队的内部网络被破坏了,允许开发者从总共9个秘钥中窃取4个。由于Axie Infinity DAO也将他们的秘钥委托给Ronin团队,开发者能够通过9个多重签名的5个访问获得基础资金。
虽然网络钓鱼攻击无处不在,但该团队可以通过避免单点故障来阻止这一漏洞。这可能包括:
- 以更安全的方式存储密钥
- 在不同的平台上使用不同的设备进行存储
- 要求更多的密钥来激活资金
协议前端欺骗
前端欺骗是一种针对个人用户的攻击载体,而不是协议管理的资金。通常情况下,这涉及到通过DNS缓存中毒等方法,用类似的假外观替换真实协议网站的IP地址。
前端欺骗漏洞的最大例子是2021年12月的BadgerDAO漏洞,通过该漏洞,能够抽走1.2亿美元的用户资金。BadgerDAO是一个DeFi协议,它为已经连接到以太坊的比特币的包装版本提供了收益。
黑客们设法获得了该团队的Cloudflare API密钥,之后他们用自己的网站取代了真正的Badger网站。然后,用户在不知情的情况下批准了对这个假地址的无限代币消费上限。在这之后,黑客等待更多的用户批准支出限制,直到累计金额大到足以让黑客扣动扳机,窃取所有批准的资金。
加密协议可能很难单独抵御前端攻击,因为该漏洞往往在于第三方互联网服务提供商。除了选择一个更可靠的服务提供商外,教育用户在给予无限代币批准时要谨慎,这也很重要的。
一些加密货币钱包现在包括一个内置的功能,允许用户撤销代币批准。随着技术变得越来越复杂,安全功能很可能会被抽象到钱包本身。例如,这可能涉及控制代币批准,在代币批准前检查智能合约是否正确,等等。
吸取的教训和未来的缓解
由于智能合约漏洞通常是最难缓解的漏洞,同时也构成了大部分损失的TVL,本节将重点介绍行业目前如何应对这些风险。
我们涵盖了管理智能合约风险的两种主要方法:自动化形式验证和DeFi安全审计。它们共同构成了一条通往智能合约可扩展风险检测和缓解的路径。
形式化验证
形式化验证软件是一种自动化的方法,通过证明智能合约符合一组预先确定的规则来检测智能合约的错误。验证软件生成针对智能合约的可能的攻击场景,并标记出违反规则的攻击载体。
随着更多的协议部署在链上,将会有更多的智能合约供被攻击。由于只有那么多双手可以手动审查新合同,这种检测智能合同漏洞的自动化方法已经越来越受欢迎,特别是随着底层软件的日益复杂。
提供这种形式验证软件的一个著名公司是Certora,该公司目前通过其验证工具Certora Prover确保了超过320亿美元的DeFi TVL。他们的用户包括行业领先的协议,如AAVE、Compound、MakerDAO、SushiSwap等。
Certora使用情况统计
Certora Prover验证器的工作方式是首先收集一组用户希望为其代码进行测试的需求或规则。例如,该规范可能是测试使用该智能合约可以铸造的代币数量是否在某个限制范围内。
验证完成后,Certora团队将根据发现的bug生成一份验证报告,列出问题和缓解措施,按重要性从关键到低到建议的顺序排列。
AAVE v3的验证报告(2022年1月)
尽管形式化验证可能是识别有缺陷的代码的有效方法,但开发人员仍然需要手动审查和修复。最近已经有人努力通过生成迭代的代码补丁来完全自动修复漏洞,这种技术仍然需要进一步发展。
DeFi安全审计
DeFi安全审计提供了对协议存在的所有风险和漏洞的整体看法。审计是由DeFi审计公司手动执行,然后他们生成包含问题清单和漏洞修复建议的审计报告。
Harvest金融的PeckShield审计报告
根据审计公司的情况,审计的质量和严格程度往往有很大的不同。值得注意的是,rekt排行榜中32%的漏洞发生在项目被审计后。
审计的可扩展性也不如形式验证等自动化方法。当大规模保护DeFi时,很可能是这两种方法的组合,特别是当更多的协议被部署在链上时。
钱去哪里了?
虽然减轻未来的风险至关重要,但被盗资金的位置和潜在的回收也很重要。
Tornado Cash
Tornado Cash是一个资金混合协议,通过混淆资金的踪迹,为用户提供支付隐私。用户使用地址A向协议中放入一定数量的ETH,并收到一个确认其输入的密钥。由于每天有成百上千的用户存入和取出,因此不可能知道谁存入了肮脏的资金。
过去180天内,Tornado Cash的每日活跃用户情况
尽管Tornado Cash有一个合法的用例,即它为用户提供了交易隐私,但它也成为黑客兑现其赃物的最常见方式之一。一些最大的DeFi黑客看到黑客通过Tornado Cash洗他们的脏钱。
朝鲜网络犯罪集团Lazarus Group(他们是Ronin Network和Harmony Protocol bridge的漏洞的幕后黑手)最终被追踪到是Tornado Cash的用户。美国政府随后将Tornado Cash列入OFAC制裁名单,将所有与该协议互动的钱包列入黑名单。
由于Tornado Cash是一个开源项目,其代码理论上可以被分叉,以创建一个类似的资金混合协议,但制裁的严重程度很快就升级了。不仅Tornado Cash金库从GitHub上被移除,其核心贡献者的账户也被删除,其中一个主要开发者在荷兰被捕。与Tornado Cash有互动关系的钱包也被禁止在几个主要的DeFi协议中。
制裁的严重性让人怀疑,未来的开发者是否会冒实施Tornado Cash的风险。
Tornado Cash的替代品:Aztec Network
一个潜在的替代方案是Aztec Network,这是一个基于以太坊的汇总系统,使用零知识技术提供私人交易。Aztec不通过账户余额存储用户资金,而是通过发行代表用户所拥有的资产的票据来跟踪资金。这些票据可以作为欠条,按1:1的比例赎回标的资产。
由于Aztec票据是加密的,外人无法知道票据的所有者或价值。所有者可以通过为他们的票据生成一个零知识证明来赎回基础资产,证明他们的所有权和包含的价值。
然而,通往Aztec的桥本身是完全透明的,并依赖于所有用户存放固定金额来保持匿名。在FTX警告其用户不要与Aztec互动后,该网络宣布他们将根据用户的IP地址实施5个ETH的存款上限,导致一些人质疑Aztec是否将合规性置于隐私之上。
结论和关键见解
虽然DeFi正在以令人难以置信的速度增长,但在过去两年中,在105个链上漏洞中,有42亿美元被盗。
虽然在这个早期的超增长阶段,许多安全问题被忽略了,但DeFi作为一个成熟的行业,需要更严格的做法。如果在早期就采用分散存储密匙这一相对快速的补救措施,仅此一项就能防止超过13亿美元的损失。
虽然专注于针对智能合约漏洞的攻击载体可能更难抵御,但该行业目前正在通过自动漏洞检测和整体安全审计相结合的方式来保护大规模的生态系统。
责任编辑:Kate
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:Token Terminal,如有侵权请联系删除。转载或引用请注明文章出处!