Fairyproof:2023年第三季度区块链生态安全报告
作者:Fairyproof
综述
2023 年第三季度,加密市场整体上表现得依旧波澜不惊。但生态中安全事故的发生频率却超过前两个季度。在这个季度约有 5.72 亿美元的加密资产在各类安全事故中蒙受损失。
Fairyproof 研究了第三季度公开报道的 198 起典型案例,对案例进行了统计、分析,并探讨了这些事件所反映的安全生态中的特性以及用户可以采取的相关防范措施。
背景介绍在详细呈现 Fairyproof 的研报结果之前,有必要对本报告中的相关术语进行解释、说明。
CCBS
CCBS 指代“中心化加密资产或区块链服务机构”。它通常指人为运作管理的非链上服务平台,其核心技术主要依赖传统的中心化技术,其日常运维活动主要为链下活动。传统的加密资产交易所(如 Binance)、加密资产发行承兑平台(如 Tether)即为此类典型。
闪电贷(FLASHLOAN)
闪电贷是黑客在攻击以太坊虚拟机平台上智能合约的一种常见和流行的方式。闪电贷是知名 DeFi 应用 AAVE[1]团队发明的一种合约调用方式。这种合约调用让用户无需任何抵押物便可以直接从支持这种功能的 DeFi 应用中借出加密资产,只要用户在一个区块交易内归还该资产即可使该交易有效[2]。起初这个功能的发明是为了给 DeFi 用户更灵活、便利的手段进行各项链上的金融活动。但后来,闪电贷因其灵活性高使得其使用得最多的场景变成了黑客借出 ERC-20[3]代币然后用其进行攻击。在发起一笔闪电贷之前,用户需要将借出(资产)和归还(资产、利息及相关手续费)的逻辑清晰地在一个合约中描述,然后调用该合约发起闪电贷。
跨链桥(CROSS-CHAIN BRIDGE)
跨链桥是连结多个独立区块链的一种基础设施,它让部署于不同区块链的代币在各个区块链之间相互流通。
随着越来越多区块链有了自己的生态、应用和加密资产,这些应用和资产对跨区块链通信和交易的需求显著增长。这也使得跨链桥成为黑客眼中热门的攻击对象。
报告重点
Fairyproof 详细研究了 2023 年第三季度发生的 198 起典型安全事件,在本报告中对这些事件造成的损失金额、成因等各种要素进行了统计分析,并给出了相应的防范建议和措施。
2023年第三季安全事件的统计及分析
Fairyproof 研究团队详细研究了 2023 年第三季度较为突出的 198 起安全事件,从遭受攻击的目标和造成攻击的根源两方面列举了统计结果并对其进行了分析研究。
这 198 起安全事件造成的加密资产损失总额达 5.72 亿美元,Tradingview 显示的主流加密资产总值达 10560 亿美元。损失资产占总市值的比例为 0.05%。
基于受害对象划分的安全事故
Fairyproof 研究的安全事件按其受害对象分可以分为以下四类:
1. 中心化加密资产或区块链服务机构(CCBS,下文所指 CCBS 即为此概念)
2. 区块链(Blockchains)
3. 去中心化应用(dApps)
4. 跨链桥(Cross-chain Bridges)
本报告所指的 CCBS 安全事件是指受到攻击或损害的对象是 CCBS 系统。在这些事件中,CCBS 所保管的资产被盗或运作的服务被迫中断。区块链安全事件是指区块链主网、侧链或依附区块链主网的第二层扩展系统受到攻击或损害。通常在这些事件中,黑客从系统内、系统外或者两方面都发起攻击,导致系统软件或硬件失常,资产损失。
dApp 安全事件是指 dApp 受到攻击而无法正常工作,从而使黑客有机会盗取 dApp 中管理的加密资产。
跨链桥安全事件是指跨链桥受到攻击,导致其无法正常工作,甚至导致其经手交易的加密资产被盗。
Fairyproof 对总共 198 起事件按上述四类进行了划分,其比例分布图如下所示:
由图中可知,dApp 安全事件的数量占总数的 86.87%,超过其它任何类别。其中 198 起为 dApp 安全事件,4 起为 CCBS 安全事件,14 起为区块链安全事件,4 起为跨链桥安全事件,172 起为 dApp 安全事件。
区块链安全事件
涉及区块链的安全事件可以进一步细分为以下三类:
i. 区块链主网(Blockchain mainnets) ii. 侧链(Side chains)
iii. 第二层扩展系统(Layer 2 solutions)
区块链主网也被称为 Layer 1,它是独立的区块链,有自己的网络、协议、共识和验证者。区块链主网可以验证交易、数据和区块,所有这些验证工作都由自己的验证者完成并最终取得一致性。比特币和以太坊就是典型的区块链主网。
侧链是与区块链主网并行运作的一条单独的区块链。它也有自己的共识和验证者,但是它会以某种方式(如双向锚定[4])和区块链主网连结,第二层扩展系统是依赖于区块链主网的系统,它需要区块链主网提供安全和最终一致性[5]。它主要为了解决区块链主网的可扩展性,能以更低的费用、更低的价格处理交易。自从 2021 年以来,依附于以太坊的第二层扩展系统有了飞速地发展。
侧链和第二层扩展系统都是为了解决区块链主网的可扩展性。两者主要的区别在于,侧链不依赖区块链主网提供安全性和一致性,但第二层扩展系统却需要。
2023 年第三季度总共有 14 起与区块链有关的安全事件。下图展示了区块链主网、侧链和第二层扩展系统各所占的比例。
由上图可知,区块链主网相关的安全事件和第二层扩展系统相关的安全事件的数量占总数的比例分别为 92.86% (13 起)和 7.14%
(1 起)。没有典型的侧链安全事件。第二层扩展系统安全事件涉及的系统有 Metis[6],区块链主网安全事件涉及的主网有 Mixin[7]、
Quai Network[8]、Swisstronik[9]、SwapDex Blockchain[10]、Aptos[11]等。
DAPP安全事件
在 172 起涉及 dApps 的安全事件中,有 16 起是跑路,1 起被连累,155 起直接被攻击。直接对 dApp 的攻击通常会涉及三个方面:
Dapp 的前端、后台和智能合约。因此,我们将 155 起直接被攻击的事件分为下列三类: i. dApp 前端 ii. dApp 后台 iii. dApp 合约
在 dApp 前端受攻击的事件中,黑客主要通过前端漏洞发起攻击,盗取资产或瘫痪其服务。
在 dApp 后台受攻击的事件中,黑客主要通过后台漏洞发起攻击,比如劫持后台和合约的通信,劫持资产或瘫痪服务。
在 dApp 合约受攻击的事件中,黑客主要通过合约漏洞发起攻击,盗取资产或瘫痪其服务。下图展示了这三个类别受攻击事件的比例:
由上图所示,合约、后台和前端受攻击的事件比例分别为 19.35%、0%和 80.65%。在总共 155 起事件中,125 起为前端受攻击,
30 起为合约受攻击。
我们进一步研究了各类事件所造成的加密资产损失金额。其中合约受攻击导致的损失和前端受攻击所导致的损失分别为 2.1 亿美元和 3980 万美元,两者所占总损失金额的比分别为 84.03%和 15.97%,如下图所示:
在众多合约漏洞中,逻辑缺陷、私钥泄露、闪电贷攻击、重入攻击为典型的漏洞。
我们研究了 30 起涉及合约直接受到攻击的安全事件,得到下列比例图:
上图所示,逻辑缺陷导致合约安全事件占比最高。逻辑缺陷中通常包括缺少参数验证、缺少权限验证等。逻辑缺陷导致的安全事件数为 13 起。
下图展示了各个漏洞造成的损失金额比:
私钥泄露造成的损失金额占比最高。4 起私钥泄露事件总共造成了 1.73 亿美元的损失,占损失总金额的 82.56%。
基于成因划分的安全事故
基于造成区块链安全事故的成因,我们将事故分为三类: i. 由黑客攻击所致
ii. 跑路 iii. 其它
我们的研究结果如下图所示:
由上图所示,黑客攻击和跑路导致的安全事故分别占比为 91.92%(182 起)和 8.08%(16 起)。
我们研究了这些成因所造成的损失,如下图所示:
由上图所示,黑客攻击和跑路导致的损失金额分别占比 94.69%和 5.31%,前者导致了 5.41 亿美元的损失,后者导致了 3035 万美元的损失。这表明 2023 年第三季度,黑客攻击仍然是行业安全面临的主要威胁。
黑客攻击事件我们研究了黑客攻击事件,如下图所示:
由上图所示,黑客攻击 dApp、区块链、CCBS 和跨链桥的事件占比分别为 87.64%(156 起)、7.87%(14)、2.25%(4 起)和
2.25%(4)。
我们研究了各类事件所导致的损失金额,如下图所示:
黑客对区块链、dApp、跨链桥和 CCBS 攻击所导致的资产损失占比分别为 36.97%、46.25%、0.79%和 15.99%,具体的损失金额分别为 2 亿美元、2.5 亿美元、8650 万美元和 430 万美元。其它安全事件没有导致明显的损失金额。
跑路事件
2023 年第三季度发生的典型跑路事件都是 dApp 项目。总共 16 起跑路事件造成的损失金额达 3035 万美元。这个损失金额相比黑客攻击造成的损失金额规模要小得多。
研究发现
从我们的统计数据来看,2023 年第三季度,黑客最偏爱攻击的目标仍然是 dApp 项目,对 dApp 的攻击事件远超其它任何对象,攻击数占总数的 87.64%,损失金额占总损失金额的 46.25%。在所有的攻击事件中,最严重的是对 Multichain[12]的攻击。
对整个区块链生态来说,黑客仍然是最大的安全威胁,无论从其造成的安全事件数量还是从其造成的资产损失来看都是如此,由黑客攻击造成的安全事件数量占整个安全事件数量的比例超过 91.92%,远超跑路事件对生态造成的威胁。
一个典型的 dApp 包括三部分:前端、后台和智能合约。当黑客攻击一个 dApp 时,会攻击其中一部分或同时攻击多个部分。根据我们的统计数据,对 dApp 前端的攻击在数量上远超对合约的攻击,但对智能合约的攻击所造成的损失金额则远超对前端的攻击。
这表明智能合约隐患仍然是 dApp 安全最大的隐患。
2023 年第三季度典型的跑路事件都发生在 dApp 项目上。
在智能合约受到黑客攻击的事件中,下列三个类别的原因所引发的攻击事件数量排名前三:第一位:逻辑缺陷第二位:闪电贷
但是按照损失金额来看,私钥泄露所引发的攻击造成的资产损失金额高居榜首,远超其它类别。
防范安全事故的实践方案和措施
本节,我们将根据 2023 年第三季度所发生的安全事故的特点总结一些帮助区块链开发者和用户管理及防范区块链风险的方案和措施。我们建议无论是区块链开发者还是用户都积极地在平时的操作和工作中尽可能落实和实践这些方案及措施,最大限度保护项目安全和加密资产安全。
注:“区块链开发者”既指区块链项目本身的开发工程师,也指和区块链系统相关或其延申系统(如加密资产等)的开发者。“区块链用户”是指所有参与到区块链系统活动(比如管理、运作、维护等)或加密资产交易等的用户。
对区块链开发者
尽管在第三季度中,没有典型涉及第二层扩展系统的安全事件,但第二层扩展系统的安全依旧值得重视。因为接下来第二层扩展方案的发展和落地将会持续是整个生态的热点和重点,对其方案安全性的研究将是业界面临的重大挑战。
在区块链应用中,当项目部署并稳定运行一段时间后,将项目中掌控关键操作的权限转移到多签钱包或者 DAO 组织来进行管理是非常有必要的步骤。
当黑客发现智能合约的漏洞时,往往会借助闪电贷对合约进行攻击。这些可能被利用的漏洞通常包括重入漏洞、逻辑缺陷(比如缺乏权限验证、错误的价格算法)等。严谨防范和处理这些漏洞对智能合约开发者而言时刻需要引起高度重视,甚至需要排在重要性的首位。
我们的统计数据还显示越来越多的黑客会通过社交媒体软件(如 Discord、Twitter 等)发起钓鱼攻击。这个现象贯穿了整个 2022 年并持续到 2023 年第三季度。不少用户在其中遭受了损失。项目方需要对其运作的社交媒体实施严格、周全的管理,部署相应的安全方案保证其社交媒体运作的安全和稳定,防范被黑客利用。
区块链用户
越来越多用户开始参与各类区块链生态的活动,并持有各类区块链生态的资产。在这个过程中,跨链交易活动也再迅猛增长。当用户参与跨链交易时,用户需要和跨链桥进行交互,而跨链桥却是黑客经常关注的攻击目标。因此当用户在发起跨链交易前,需要详细调查和了解其所使用的跨链桥的安全状况和运营状况,确保跨链桥的安全、稳定、可靠。
当用户和 dApp 进行交互时,必须高度关注其智能合约的质量和安全,同时也需要关注 dApp 前端的安全。对前端显现的一些不明来历、高度存疑的信息、提示、对话等要小心处理,不要随意点击或跟随其指引进行操作。
我们强烈建议用户在和任何区块链项目交互前或投资区块链项目前,要仔细检查并阅读该项目的审计报告。对没有审计报告或报告可疑的项目,要谨慎参与。
我们建议用户尽量使用冷钱包或多签钱包管理大额资产或不用于频繁交易的资产。时刻小心热钱包的运作安全,并确保安装热钱包的硬件平台本身是安全、可靠和稳定的。
用户需要对区块链项目的团队背景进行一定程度的调查和了解。对团队背景模糊、信用缺失的团队要小心。对这类项目要小心其可能发生的跑路风险。对使用较为频繁的中心化交易所,用户更要关注其背景和信用,尽可能从多个第三方数据源查证这些交易所的背景、信息、数据,确保交易所能够长久持续的安全运作。
参考资料
[1] Aave. https://aave.com/
[2] Flash-loans.. https://aave.com/flash-loans/
[3] ERC-20 TOKEN STANDARD. https://ethereum.org/en/developers/docs/standards/tokens/erc-20/
[4] Sidechains. https://ethereum.org/en/developers/docs/scaling/sidechains/
[5] Layer-2. https://academy.binance.com/en/glossary/layer-2
[6] Metis. https://www.metis.io/
[7] Mixin. https://mixin.one/
[8] Quai Network. https://qu.ai/
[9] Swisstronik. https://www.swisstronik.com/
[10] SwapDex Blockchain. https://swapdex.network/
[11] Aptos. https://aptoslabs.com/
[12] Multichain. https://multichain.xyz/