最近,密码货币世界再次见证了另一场关于去中心化金融脆弱性的毁灭性教训。
BunniDEX,一个基于Uniswap v4创新钩子结构构建的去中心化交易所,眼睁睁看着攻击者从其以太坊和Unichain的流动性池中抽走了840万美元。短短数小时内,一个吸引了6000万美元总锁定价值的协议因单一逻辑层次漏洞而变得基本无力偿债,其增长轨迹被摧毁。
攻击本身的精确度堪称外科手术。据区块链安全公司Halborn称,攻击者利用了一种复杂的闪电贷攻击,并通过精确操纵Bunni的流动性分配函数进行。攻击者借入USDT,将其兑换为USDC以改变现货价格档位,然后利用池中的舍入误差不成比例地减少流动性,同时提取了远超应得的资产。在一个池中,可用流动性从28 wei减少到仅4 wei,减少了85.7%,从而实现了大规模的未经授权的提取。
这个事件特别令人警醒的是Bunni似乎做了所有正确的事情。该协议经过两家受尊敬的安全公司的审计:Trail of Bits和Cyfrin。但双方都遗漏了关键漏洞。正如Bunni团队后来的承认,该漏洞是“逻辑层次上的缺陷而非实现错误”——这种会逃过传统代码审计,但在生产环境中却造成灾难性影响的错误。提取功能中的舍入错误操作与开发者的预期相反:它不是增加闲置余额,而是减少它,创造了被利用的条件。
到2025年10月23日,Bunni宣布永久关闭。团队无法负担安全重启所需的六位到七位数的费用,其中包括全面的审计和监控系统。在其关闭声明中,他们写道:“最近的漏洞迫使Bunni的增长停滞,为了安全重启我们需要支付六到七位数的审计和监控费用,这需我们无资金。”
这提出了一个在2025年困扰整个DeFi生态系统的基本问题:如果一个经过充分审计、技术成熟的协议可以由一个简单的逻辑错误拖垮,那么去中心化金融真正安全的希望在哪里?为什么在经历了多年的毁灭性攻击和数十亿美元损失之后,这些攻击仍在发生?
危机的规模
Bunni的崩溃并不是孤立事件,而是2025年被定义为加密货币最危险年份之一的令人不安的模式的一部分。根据Hacken的2025年Web3安全报告,由于黑客攻击和欺诈,2025年仅上半年加密行业就损失超过31亿美元。这一惊人的数字已经超过了2024年的全部损失28.5亿美元。
特别值得注意的是对去中心化交易所的攻击集中。根据CertiK的2025年第三季度分析,尽管总体加密货币损失在第三季度下降了37%至5.09亿美元,但DeFi项目和交易所仍是主要目标。中央化交易所遭受了1.82亿美元被盗,但DeFi协议紧随其后仅在第三季度损失了8600万美元。
数据描绘了一幅被攻击的生态系统的令人不安的画面。Hacken的研究员发现,访问控制漏洞占2025年上半年全部损失的约59%——约18.3亿美元。智能合约漏洞则贡献了另一个8%,即2.63亿美元。这使得2025年上半年成为自2023年初以来智能合约攻击最为昂贵的时期。
或许最值得关注的是事件频率的加速。2025年9月创下了每起超过百万美元攻击的纪录——共16起超过百万美元的攻击,为有记录以来的最高月度数量。尽管一些协议实施了更好的安全措施,但攻击者仍在以惊人的快速速度发现新漏洞。
与往年相比,2025年代表着进展与持续危险。DeFi 攻击的峰值年份仍为2022年,当时被盗超过37亿美元。该行业在2023年和2024年实现了改进,损失降至每年2-3亿美元。然而,2025年短短六个月的31亿美元损失表明这一趋势可能正在逆转。
人力成本超出这些抽象数字。每起攻击代表现实中的人——流动性提供者、交易员和投资者——失去他们的资金。2,367名受害者的KyberSwap攻击仅显示集中攻击如何波及全社区,摧毁信任和生计。
漏洞剖析:代码失败的案例研究
要理解为什么DeFi安全仍然如此难以捉摸,我们必须检查协议失败的具体机制。以下案例研究揭示了反复出现的模式——闪电贷,预言机操作,重入攻击,访问控制失败和逻辑错误,这些构成了漏洞领域。
Bunni DEX (840万美元,2025年9月)
如上所述,Bunni的漏洞源于其提款逻辑中的舍入方向错误。攻击者使用闪电贷,微提款以及夹击攻击相结合。协议创新的流动性分配功能旨在优化流动性提供者的回报,但成为其致命点。此漏洞显示,即使是前沿的DeFi创新也能在数学假设错误时引入意料之外的攻击向量。
Curve Finance (6900万美元,2023年7月)
Curve Finance漏洞是DeFi历史上技术上最有趣的攻击之一。漏洞不在Curve代码中,而在Vyper编译器本身。Vyper 0.2.15、0.2.16 和 0.3.0 版本含有一个关键错误,使得重入锁失效,允许攻击者同时调用多个函数。
讽刺的是,Vyper最初是为了比Solidity更安全。但正如Hacken的分析解释,这个编译器级的漏洞在其2021年7月引入后差不多两年间未被发现。漏洞直到2021年12月Vyper 0.3.1发布时才被修复,但直到2023年7月攻击时才有人意识到旧版本带来了灾难性风险。
Curve攻击影响了多个DeFi 协议,包括 JPEG'd, Metronome 和 Alchemix。安全公司CertiK指出 共有6900万美元被从各种池中抽走,漏洞占2023年重入攻击损失的78.6%。事件触发了挤兑,Curve总锁定价值在一天之内下降近50%至15亿美元。
这个漏洞的特别指导性在于其被分类为“语言特定”漏洞——编程语言本身的缺陷而非开发者错误。这带来了一个可怕的可能性:即使完美的代码实现也可能被底层工具的缺陷所破坏。
KyberSwap (4800万美元,2023年11月)
Ambient交易所创始人Doug Colkitt称KyberSwap漏洞为“我见过的最复杂且精心设计的智能合约漏洞”。攻击利用了KyberSwap Elastic的集中流动性特性,通过Colkitt称之为的“无限资金缺陷”。
漏洞在于KyberSwap的兑换机制中的跨档估计与最终价格计算之间的差异。根据Halborn的分析,当兑换金额等于amountSwapToCrossTick减一时,舍入错误导致池定价错误。这违反了下一价格小于或等于目标价的假设,导致流动性意外翻倍。
攻击者先操纵ETH/wstETH池价到一个几乎没有流动性的区域。然后在窄价格区间内铸造少量流动性并执行了两个关键兑换。首次售出1,056 wstETH换取少量ETH,使价格崩溃。第二次逆转,买回3,911 wstETH——远超过最初售出的数量。池从原始流动性头寸双重计数流动性,使该盗窃成为可能。
因此,尽管KyberSwap在其computeSwapStep功能中实施了防护机制以专门防止此类漏洞。然而正如区块链安全研究人员发现,攻击者精心加工交易略微超过触发范围。 content: 这种保护。这种精密工程彰显出攻击者的复杂程度。
Euler Finance ($1.97亿,2023年3月)
Euler Finance 的闪电贷攻击成为2023年最大 DeFi 漏洞事件。Euler 是一个在以太坊上的非许可借贷协议,因其 donateToReserves 函数中的漏洞而受害,该函数缺乏适当的流动性检查。
攻击过程十分复杂。攻击者首先通过从 Aave 获得 3000 万 DAI 闪电贷款。它们将 2000 万 DAI 存入 Euler,获得约 1960 万 eDAI 代币。使用 Euler 的 mint 函数,它们反复借入其存款的 10 倍 - 这一功能设计用于高效杠杆,但在捐赠机制结合时变得可利用。
关键步骤涉及向 Euler 的储备捐赠 1 亿 eDAI,而协议未正确验证这是否导致债务过度抵押。当攻击者清算自己的头寸时,他们获得了 3.1 亿 dDAI 和 2.59 亿 eDAI。在提取 3890 万 DAI 并偿还闪电贷款和利息后,仅从 DAI 池中就获利约 890 万美元。这种模式在多个池中重复,总共获得了 1.97 亿美元的收益。
CertiK 的事件分析指出了两个核心失败:donateToReserves 缺乏流动性检查,使得股权和债务代币易于操控;以及一个无意中允许无偿债账户获得抵押品的健康评分机制。审计公司 Sherlock 审查代码时,承认对此漏洞负责,并同意赔偿 Euler 450 万美元。
令人惊讶的是,攻击者最终归还了所有资金,并通过链上加密消息道歉。然而,这种不寻常的解决方式并未减轻导致漏洞发生的根本安全失败。
GMX v1 ($4000万,2025年7月)
2025年7月的GMX v1 漏洞事件显示了即使是第一代协议在多年后仍可能脆弱。此次攻击针对 GMX 在 Arbitrum 上的流动性池,利用了 GLP 代币价值计算中的设计缺陷。
SlowMist 的分析揭示了根本原因:GMX v1 的设计在开设空头头寸时立即更新全球空头平均价格。这直接影响资产管理计算,创造了操控机会。通过重入攻击,攻击者建立了大规模空头头寸,操控全球平均价格,单次交易内人为抬高 GLP 价格,然后通过赎回获利。
这种重入漏洞 - 被区块链专家 Suhail Kakar 描述为“旧书中的最古老伎俩” - 被证明是基础而非表面弱点。攻击者可以欺骗合约相信没有提款发生,反复铸造代币而没有适当抵押。
GMX 的应对措施被证明具有创新性。相比仅采用法律救济,他们提出攻击者退还 90% 被盗资金即可获得 10% 白帽赏金 - $500万 - 在48小时内返还。赌博奏效了。攻击者通过链上消息接受:“好的,资金稍后会返还。”几个小时内资金开始返还。最终,GMX 恢复了全额,因事件期间比特币和以太坊价格上涨略有增加。
此案例说明了一个新兴趋势:协议越来越多地将复杂攻击者视作潜在的白帽而非纯粹罪犯,利用经济激励而非法律威胁。
Balancer (2023年8月,风险中$280万)
2023年8月 Balancer 的事件提供了一种不同视角 - 是次成功避过灾难性损失而非灾难性损失。当 Balancer 发现关键漏洞时,开发者立即警告用户并努力降低风险。他们成功保护了95%的受影响流动性池,但价值280万美元(总锁定价值的0.42%)仍处于风险中。
尽管发布了积极的警告和详细的提款指引,攻击者最终利用了该漏洞约90万美元。漏洞利用借用了闪电贷攻击未被缓解的池。PeckShield 警告称,所有受影响地址的损失共计超过210万美元。
Balancer 的处理赢得了加密社区的赞誉。加密研究员 Laurence Day 称之为“关键漏洞披露的完美例子。”但事件仍然揭示了一个不舒服的真相:即使有良好的沟通和快速反应,一旦漏洞存在,完全保护仍然是不可能的。
其他显著的漏洞
这种模式在众多其他事件中继续:
Cetus ($22.3亿,2025年): 正如Hacken 报告所述,Cetus 遭遇2025年最大单一 DeFi 漏洞 - 在15分钟内因流动性计算中的溢出检查漏洞损失 22.3亿美元。这单次攻击占了第二季度 DeFi 损失的很大一部分,总计 30 亿美元。
Cork Protocol ($1200万,2025年): 根据同一 Hacken 分析,Cork 的漏洞是由于开发人员在 beforeSwap 钩子上修改 Uniswap V4 的默认权限。攻击者利用不充分的权限检查注入恶意数据,耗资1200万美元。
Orbit Chain ($8000万,2023年12月): 该跨链桥与 DEX 集成失败突显了涉及多个区块链的协议时的复合风险。被攻破的多重签名钱包使大量资金被盗。
SushiSwap Router ($330万,2023年4月): 公开函数滥用导致未经授权访问路由逻辑,展示了即使在访问控制方面的小疏忽也可能造成高昂的代价。
Uranium Finance, Radiate Capital, KokonutSwap: 这些较小的协议经历了类似的命运 - 流动性管理中的逻辑缺陷、不充分的输入验证和不当的访问控制,使攻击者得以利用,造成数百万的损失。
为什么审计不断错过真正的威胁
Bunni 漏洞清晰地体现了 DeFi 中最令人沮丧的悖论之一:即使经过多次专业审计的协议仍会出现灾难性失败。要理解这一点,我们必须审视审计究竟做了什么 - 更重要的是,它无法做到什么。
传统智能合约审计主要关注句法漏洞:重入风险、整数溢出/下溢、未受保护的函数、gas 优化,以及对最佳实践的遵循。审计员逐行检查代码,寻找记录在像智能合约弱点分类注册表这样的数据库中的常见漏洞模式。这一过程虽然有价值,但在实施级别运作。
语义漏洞 - 如 Bunni 的舍入误差 - 存在于更高概念层面。这些错误在代码执行严格按照编写时,但在特定情况下产生预料之外的后果。Bunni 提现函数中的舍入从代码执行的角度完全正常。只是在开发者的经济模型假设中倒向了错误的一面。
Trail of Bits 和 Cyfrin,审计 Bunni 的公司,是区块链安全领域受人尊敬的领导者。Trail of Bits 已审计过像 Uniswap、Compound 和 Maker 这样的主要协议。他们未能捕捉到 Bunni 的漏洞并非无能 - 而是反映了审计方法的基本局限性。
若干因素限制了审计的有效性:
时间和资源限制: 综合审计通常花费 4 万美元到 10 万美元,需 2-4 周时间。对于像 Bunni 这样具有创新特征的复杂协议,真正详尽地测试所有边缘情况需要数月时间和超出大多数项目预算的成本。审计员必须在深度和经济上做出实际权衡。
新架构挑战: Bunni 基于 Uniswap v4 的新钩子系统构建,于 2024 年末推出。钩子系统的有限现实世界测试使得审计员缺乏已建立的漏洞模式可供参考。创新本质上通过进入未知领域增加了风险。
规格模糊: 审计员只能检查代码与规格是否匹配。如果规格本身包含逻辑错误或不完整的边缘案例定义,审计员可能通过根本上有缺陷的设计。Bunni 的流动性分布函数指定优化回报,但规格显然未能完全考虑极端条件下的舍入行为。
组合性问题: DeFi 协议与众多外部系统集成 - 价格预言机、其他协议、治理机制。审计员通常对合约进行孤立评估,而非所有可能的交互场景。漏洞往往从合法函数的意想不到组合中出现。
这种限制表现为业内人士所称的“审计戏剧”:项目显要展示审计徽章用于营销目的,而内部隐匿着可被利用的漏洞。根据 Immunefi 数据](https://immunefi.com/),大约60%的主要漏洞出现于至少经过一次审计的协议。审计的存在提供了虚假的安全感而非真正的保障。
经济激励加剧了这些问题。DeFi 运营于高度竞争Content: 赛跑到市场的环境。项目面临着在竞争对手之前快速推出的巨大压力。每延迟一周的开发都意味着潜在市场份额和总锁定价值的损失。漫长而全面的安全审查与这种紧迫感相冲突。
考虑一下激励的不对称性:审计费用可能是$100,000,而平均利用漏洞的损失超过$10-30百万。从理性的角度来看,项目应该大量投资于安全。然而,行为经济学告诉我们另一个故事。创始人表现出乐观偏见,令自己相信他们的代码是特别的,攻击不会针对他们,或者快速迭代胜过深入准备。
摧毁Curve的Vyper漏洞展示了另一个维度:供应链安全。即使协议开发者编写了完美的代码,审计员进行了彻底的审查,但编译器、库或开发工具中的漏洞可能使这些努力全都无效。这导致了一种虚假的安全感,开发者和审计员认为代码是安全的,因为他们所涉领域都检查过。
不安全的经济学
理解DeFi持续的安全失败需要检查导致风险开发实践的经济力量。
“快速行动并种植TVL”的心态主导了DeFi文化。总锁定价值作为协议成功的主要指标,直接影响代币价格、用户信心和竞争地位。协议争先通过高收益、创新功能和激进营销吸引流动性。而安全在没有出现灾难性故障时是无形的。那些花费六个月进行严格测试,而竞争对手迅速上线且占得市场份额的项目,则面临妥协安全的生存压力。
这种动态创造了畸形的选择效应。优先考虑安全的保守协议可能永远无法获得足以长期生存的TVL,而“快速行动并打破常规”的风险更高的项目则能吸引早期采用者的热情。市场有效地惩罚谨慎而奖励鲁莽——至少在出现漏洞之前。
可组合性是DeFi最大的优势,但在这种环境下却成了其阿喀琉斯之踵。现代协议整合了外部价格预言机,比如Chainlink,借用了Aave或Compound的流动性,通过Uniswap进行路由,并与几十个其他系统交互。每一个集成点都增加了潜在的攻击面。任何连接协议中的漏洞都可能在整个生态系统中产生级联效应。
Euler漏洞影响到Balancer、Angle和Idle Finance展示了这种传染风险。尽管Balancer自身的代码是安全的,Balancer的Euler Boosted USD池仍损失了$11.9百万 - 占其总锁定价值的65%。Angle有$17.6百万USDC被困在Euler中,Idle Finance损失了$4.6百万。一个协议的漏洞感染了整个DeFi图谱。
开发者面临着不可能的权衡。孤立地构建意味着放弃可组合性收益并限制功能。广泛集成意味着承受每个连接协议的风险。没有安全的路径,只有危险的程度。
防御者和攻击者之间的经济不对称非常明显。协议必须防范数百万行代码和复杂交互中的所有可能攻击向量。攻击者只需发现一个可利用的弱点。防御者不断承担巨大的成本(开发时间、审计费用、监控系统)。而攻击者只需一次性投资就可获得巨额回报。
在Aave和dYdX等平台上可用的闪电贷显著降低了攻击的资金门槛。历史上的利用漏洞需要攻击者事先持有或借用大量加密货币。闪电贷在单笔交易中提供数百万资金,成本极低。只要在交易完成前还清贷款,攻击几乎是免费的。
根据Halborn的前100个DeFi攻击报告,2024年闪电贷攻击激增,占合格漏洞利用的83.3%。2025年这一趋势持续。这项技术将利用从资本密集型专业操作转变为任何有技术能力和聪明漏洞开发者均可尝试的东西。
期望值计算有利于攻击者压倒性地有利。考虑一下:审计费用平均为$40,000-$100,000。平均利用漏洞造成的损失为$10-30百万。然而,许多协议甚至难以负担基本的审计。同时,成功的攻击者可以在几分钟内以很少的前期投资窃取数千万。
这种不平衡反映了更广泛的市场失灵。安全是一个公共产品——每个人都从稳健的协议中受益,但个体行为者面临有限的激励来为集体安全付费。那些在安全上投入大量资源的协议实际上在为不承担类似成本却复制他们代码的搭便车者提供补贴。这创造了一种公共资源悲剧,尽管整体损失惨重,安全性仍然系统性地投入不足。
闪电贷悖论
闪电贷可能是DeFi安全中最悖论的因素:一种对生态系统功能至关重要的技术,同时促成了许多最严重的利用漏洞。
从根本上说,闪电贷是无抵押贷款,必须在单笔区块链交易内借入和偿还。如果还款失败,整个交易将被回滚,仿佛贷款从未发生。这消除了贷款人的违约风险,同时为借款人提供了巨额临时资本。
合法用途是引人注目的。套利者使用闪电贷来纠正交易所之间的价格不一致,提高市场效率。交易者可以重新融资,利用更好的条件从一个借贷平台转移抵押物到另一个。开发者可以测试清算机制或在不冒个人资金风险的情况下对协议进行压力测试。这些应用增强了DeFi的可组合性和资本效率。
然而,使闪电贷有用的同样特性也使其成为利用的完美工具。考虑一个典型的闪电贷攻击序列:
步骤1 - 借入:攻击者借用来自Aave或dYdX的数百万代币的闪电贷,仅支付少量费用(通常为0.09%或更少)。
步骤2 - 操控: 利用借来的资本,攻击者操控目标协议——可能是倾斜价格预言机,抽干流动池,或利用重入漏洞。
步骤3 - 提取: 这种操控使未经授权的取款或有利的交换成为可能,为攻击者牟利。
步骤4 - 偿还: 攻击者返回原始贷款金额加上费用,收回利用差额。
总时间: 所有这些在单笔交易中完成,通常在几秒钟内。如果任意步骤失败,整个序列将回滚,意味着攻击者没有风险。
Bunni漏洞就是这种模式的一个例证。攻击者利用闪电贷借用代币,进行掉期以操控池价,进行多次微调款以利用舍入错误,然后偿还贷款并携带$8.4百万离开。传统金融没有类似的东西——想象一下拿到$30百万的免费资金来尝试银行抢劫,保证如果被抓住,整个尝试根本没有发生。
Chainalysis研究针对Euler攻击显示了闪电贷如何使否则不可能的利用漏洞成为可能。攻击者需要$30百万的临时资本来操控Euler的借贷比例。没有闪电贷,获取此类资本需要攻击者拥有大量个人财富或对之前攻击收益进行复杂的洗钱。闪电贷将进入门槛降至近零。
悖论在于:禁用或严格限制闪电贷将破坏DeFi原则的核心并消除合法用途。闪电贷使原子套利成为可能,保持DeFi市场的效率。它们允许资本即时流动到其最具生产力的用途。取消它们会导致流动性分裂并降低可组合性——这些特性正是DeFi创新的原因。
然而,允许闪电贷就意味着接受任何漏洞,无论利用成本多高,都会对任何具备足够技术技能的攻击者开放。这项技术在相同程度上民主化了创新和攻击能力。
一些协议已尝试折衷解决方案。闪电贷的时间延迟,要求借款人在多个区块期间持有资金,可以防止原子攻击,但也会消除套利机会。经治理批准的借款者白名单为已知行为者保留功能,但违背了DeFi的无许可原则。在极端波动期间,暂停资金池的断路器可以限制损害,但可能触发误报,影响用户体验。
Aave的文档将闪电贷描述为“应谨慎使用的强大工具”。这种谨慎的措辞承认了这一矛盾:工具本身是中性的,但其应用范围从有益到破坏性,取决于用户的意图。DeFi不能消除闪电贷的发明,也不希望这样做,因为其合法的效用。相反,协议必须设计时假定任何可能的无限资本操作最终都会被尝试。
重塑DeFi安全的尝试
认识到持续存在的漏洞,DeFi行业已开始尝试超越传统审计的新安全方法。
实时威胁监控
Forta Network代表了连续监控的前沿。Forta使用一个去中心化的安全机器人网络来实时监控区块链交易,寻找可疑的模式。当出现异常活动时,例如快速放贷后的池迅速耗尽,Forta的机器人会向协议团队和用户发送警报。
这种方法承认漏洞的存在并专注于快速检测和响应。如果能够在几秒钟或几分钟内而不是几个小时内识别到利用攻击,协议可以暂停操作,从而限制损害。目前,几个协议已经将Forta监控作为标准安全层进行集成。
挑战在于区分恶意活动和合法的极端用例。误报会不必要地暂停协议操作,侵蚀用户信任和功能性。随着攻击者不断发展技术,检测算法的校准需要持续完善。
Circuit Breakers and Pause Guards
现代智能合约越来越多地包含“暂停”功能,当发生异常时可以冻结操作。这些断路器可以由协议团队手动触发,或者基于预先定义的阈值自动触发-如异常的交易量、快速的流动性变化,或是表明攻击的模式识别。
GMX对其攻击的响应包括在检测到攻击后立即暂停受影响的功能。虽然这并没有防止最初的损失,却阻止了进一步的损害,并给团队争取与攻击者谈判的时间。断路器将攻击从彻底的协议失败转变为可控的事件。
其缺点是集中化。暂停功能需要可信的角色来授权停止操作,这与DeFi所理想的无信任理念相悖。如果暂停权限被泄露,恶意行为者可能会冻结协议以操纵市场或敲诈用户。平衡安全和去中心化仍然是不解之谜。
AI-Based Anomaly Detection
人工智能和机器学习在安全领域提供了有前景的应用。通过训练模型使用历史攻击数据和正常的协议行为模式,AI系统可以识别出人类分析师或基于规则的系统可能会遗漏的可疑交易。
然而,AI安全面临着自己的挑战。对抗性机器学习意味着攻击者可以专门设计攻击来避开AI检测。训练数据偏差可以造成盲点。而某些AI决定的“黑箱”性质使得难以理解为何某些交易会触发警报。
Continuous Audit Frameworks
项目如OpenZeppelin 和 Certora提倡不间断的安全审查,而不是仅在上线前进行一次性审核。OpenZeppelin的Defender平台提供了连续的监控和自动安全操作。Certora提供形式验证服务,数学上证明代码的正确性。
形式验证代表了黄金标准。通过将合同行为表达为数学规范并使用定理证明器验证代码是否符合这些规范,形式验证可以识别测试中不可能发现的整个类的错误。例如,Curve Vyper漏洞本可以通过形式验证的重入锁行为检测出来。
局限性在于成本和复杂性。形式验证需要专门的专业知识,并且可能需要花费数十万美元。大多数DeFi项目无法承担如此广泛的过程。此外,形式验证仅证明代码符合规范-如果规范包含错误(如Bunni所示),验证会提供虚假的信心。
Bug Bounty Evolution
Bug奖励计划发展迅速。Immunefi作为领先的Web3 bug奖励平台,到2025年已向安全研究人员支付了一亿多美元。关键漏洞奖金额大多超过一到两百万美元,有些协议为最严重的发现提供高达一千万美元的奖励。
GMX案例展示了一个新兴趋势:协议向攻击者提供追溯奖励。与其通过执法机构追捕攻击者 - 因为加密货币的假名性质,成本高,速度慢且往往无效 - 协议提供“白帽”交易:返还90%的被盗资金,保留10%作为奖励,无需承担法律后果。
The Blockchain Security Alliance
通过像Blockchain Security Alliance这样的团体进行行业协调,旨在跨协议分享威胁情报和最佳实践。当一个协议遭受攻击时,快速传播攻击细节可以让其他协议检查其代码中是否存在类似漏洞。
这种集体方法将DeFi安全视为需要合作而不是竞争的公地。然而,协调仍然有限。协议往往因为担心模仿攻击或声誉损害而不透露攻击细节。建立足够的信任以实现跨竞争协议的真正开放信息共享仍然十分困难。
The Uniswap V4 Effect: Custom Hooks, Custom Risks
Uniswap V4于2024年底的发布代表了DEX架构的范式转变以及安全考虑。通过引入hooks,开发者可以在池生命周期的重要节点注入自定义逻辑:在交换之前,交换之后,添加流动性之前,移除流动性之后等等。
这种能力解锁了巨大的可能性。开发者可以创建根据波动性调整的动态费率结构。可以实现自定义定价曲线、限价单、时间加权平均市偿机制、集中流动性优化,以及在自动化做市商中以前不可能实现的复杂策略。每个池不仅是可配置的,还可以编程。
构建在Uniswap V4 hooks之上的Bunni液态分布功能试图通过动态分配资本在高交易量价格范围内来自动优化流动性提供者的回报。创新是真实的 - Bunni的技术在漏洞发生前吸引了6000万美元的TVL - 但是复杂性最终致命。
Security firm Hacken's analysis of hooks identifies multiple vulnerability categories introduced by this architecture:
配置风险:错误配置hook权限可能导致失败的交换、拒绝服务条件或意外行为。Hooks必须正确指定其涉及的生命周期节点。错误可能会将用户锁定在池外或允许未经授权的访问。
Delta处理:Uniswap V4使用hooks返回“deltas”的自定义会计机制 - 影响交换执行的余额变化。错误的delta计算可能导致误分配资金、通过操控进行盗窃或导致交换崩溃。所需的数学精度超出了典型智能合约开发。
Async Hooks:一些hooks在操作期间完全支配资产而不仅仅是修改参数。这些“异步hooks”引入了托管风险 - 如果hook合约被攻破,资金将直接可用。传统的Uniswap在整个交换过程中保留了用户的托管权。Hooks可能打破这种安全性质。
访问控制:Hooks可能包含特权功能 - 暂停、升级、修改参数。如果访问控制薄弱或密钥被攻破,攻击者可以注入恶意逻辑或窃取资金。CertiK分析指出,掌握用户资金的可升级hooks特别危险,因为如果升级权限被攻破,会产生特别危险。
组合爆炸:Hooks可以与外部合约交互,创建依赖的链条。外部系统中的漏洞可以通过hook传播到基础池。攻击面随着每个集成点的增加而增加。
Bunni的失败源于其自定义流动性分配逻辑中的delta处理复杂性。计算提款时的舍入误差正是那种在规模上变得灾难性的细微数学错误。传统的审核难以捕捉到这一点,因为hooks代表了没有既定漏洞数据库可参考的新代码模式。
Uniswap Foundation's V4 documentation emphasizes security considerations, but acknowledges that hook developers bear responsibility for their implementations. Uniswap V4的核心合约经过了九次独立审核和1550万美元的bug奖励竞赛。基础层是安全的。但构建在其基础上的hooks,如Bunni,必须实现自己的安全。### 安全性——许多团队缺乏资源应对的挑战
基于钩子(hook)的协议的激增导致了大量的小项目,每个项目都有需要单独审计的自定义逻辑。这使得安全注意力分散在数十甚至数百个实现上,而不是集中在几个核心协议上。这种多样性促进了创新,但也增加了风险。
一些安全研究人员预测,到 2025 和 2026 年,钩子将推动新一波的攻击浪潮,因为开发人员在实现过程中会学习代价高昂的教训。也有人相信常见钩子模式的标准化(如 OpenZeppelin 的钩子实现 等库)最终将创造出减少创新风险的安全构建模块。
法律、保险和政策的维度
随着 DeFi 损失的增加,监管和风险转移机制正在出现,但其有效性仍不确定。
监管压力
欧盟的《加密资产市场》(MiCA)法规在 2024 年全面生效,为加密服务提供商制定了许可要求和操作标准。尽管 MiCA 主要针对中心化交易所和托管方,但其关于操作弹性和安全标准的条款对 DeFi 协议产生了间接压力。
金融行动特别工作组(FATF)更新了指南,强调任何具有中心化控制元素(如管理员密钥或费用开关)的 DeFi 协议应与传统金融中介一样受到监管。这为试图在安全性(需要一些行政控制)与规避监管(需要完全去中心化)之间寻找平衡的项目制造了法律上的不确定性。
美国的监管机构则不太一致,SEC 和 CFTC 之间在管辖权上竞争,而对合规要求的清晰度不足。监管模糊性反而阻止了安全投资——如果协议的法律地位不明确,创始人会犹豫是否在合规和安全上投入资源,因为商业模式本身可能会被视为非法。
链上保险
Nexus Mutual、Sherlock Protocol 和 Risk Harbor 开创了针对智能合约风险的去中心化保险。用户可以购买针对特定协议漏洞的保险。如果发生漏洞攻击,索赔将从由保费和资本贡献资助的保险池中支付。
这些保险协议也面临自己的挑战。在有限历史数据且快速变动的环境中准确定价风险是很难的。Nexus Mutual 的赔付损失率一直波动——有些时期索赔很少,而其他时期则有大规模赔付,给资金池储备带来压力。
Sherlock 的模型通过让安全专家作为承保人抵押资金来解决这个问题。专家审计协议并抵押自己的资金,赌他们评估的准确性。如果他们错过了导致漏洞的脆弱性,他们的抵押金将用于支付索赔。这对齐激励,如 Sherlock 向 Euler 支付的 450 万美元即证明了这一点——Sherlock 的抵押者因审计时错过漏洞而承担了损失。
然而,保险仍然是一个小众市场。根据 DeFi Llama 的数据,DeFi 保险协议的总锁定价值仅约为 5 亿美元——不到 DeFi 总 TVL 的 0.1%。大多数用户仍然未投保,要么由于认识不足、费用问题,或认为漏洞不会影响他们。
法律责任问题
出现一个哲学和法律问题:DeFi 协议是否应因过失而承担法律责任?传统金融机构因安全失败面临诉讼和监管处罚。那些部署经过审计但最终仍有漏洞的开发人员是否应承担类似责任?
支持责任制的论点包括保护用户和激励安全投资。如果开发人员因过失设计而不承担后果,他们就会将风险外部化给用户。法律责任将使这些成本内部化,从而鼓励更彻底的安全实践。
反对者认为责任制会扼杀创新并与开源原则相矛盾。DeFi 协议通常通过服务条款明确声明不承担责任,警告用户风险。若让开发人员为无意的漏洞负责,可能会完全将人才赶出 Web3。此外,许多协议是真正去中心化的,没有明确的法律实体可以追究责任。
Bunni 案例说明了这一紧张关系。六人团队花了数年时间开发协议,进行了专业审计,并在漏洞中损失了他们自己的投资资本。对于专家们错过的逻辑错误,他们应承担法律后果吗?还是在最新技术领域用严惩创新者的方式对待他们只是在惩罚创新?
这些问题仍未得到解答,因为法律体系难以适应数百年来的框架以适应去中心化网络。
链上安全的未来
展望未来,几个趋势可能在未来十年重塑 DeFi 安全:
可验证的安全标准
行业正向“可证明正确性”方向发展——使用形式化验证和数学证明来确保合约行为,而不是依赖测试。Runtime Verification 和 Certora 正在构建使形式化验证对更多项目可访问的工具。
想象一个未来,合约携带安全属性的加密证明。用户在交互前可以验证这些声明,类似 SSL 证书用于验证网站身份。没有证明的协议将面临市场怀疑,形成压力来采用严格验证。
这需要安全属性和验证方法的标准化。以太坊基金会 等组织正在为此制定标准,但广泛采用还需要几年时间。
去中心化的安全层
提出的“DeFi 安全层”——一个监督其他协议的元协议——可以提供系统性的监督。与其每个协议实现自己的安全,一个共享的基础设施将检测异常、协调响应并促进信息共享。
可以将其看作传统金融风险管理基础设施的类比:信用评级机构、审计员、监管机构和保险公司都提供重叠的安全功能。DeFi 需要类似的多层防御措施以适应其去中心化的背景。
挑战包括确保安全层本身不会成为单点故障、在保证去中心化的同时提供有效的监督、并为该基础设施创建可持续的经济模型。
通过竞争进行的进化安全
市场力量最终可能比监管更有效地推动安全改进。随着用户变得更加成熟和漏洞损失增加,资金应该会流向有良好安全记录的协议。投资安全力度大的协议在吸引风险意识高的流动性上具有竞争优势。
这种进化过程已经开始显现。Aave 通过严格的安全规范避免了主要漏洞攻击,其 TVL 显著高于安全记录不佳的竞争对手。用户在投入资金前越来越多地检查审计报告和安全评估。
然而,这一过程是缓慢且痛苦的,需要经历无数灾难性失败才能学习教训。行业可能无法承受真正的大灾难——一个事件摧毁几亿美元资产并导致社会对 DeFi 可行性的信心丧失。
AI 驱动的防御
人工智能可能在攻击和防御中扮演越来越重要的角色。AI 可以分析合同代码寻找漏洞,模拟攻击场景,监控交易的可疑模式,甚至自动修补某些漏洞类别。
相反,攻击者也将使用 AI 来发现漏洞和构建攻击。这将形成一种军备竞赛,双方都利用越来越复杂的工具。平衡可能永远无法稳定,而是在新的 AI 功能出现并被防御者和攻击者交替部署时不断波动。
向风险意识设计的转变
也许最根本的变化是文化上的:接受完美安全是不可能的,并设计出能够在不可避免的失败面前保持弹性的系统。
这意味着:
- 限制爆炸半径:如果一个池被攻击,其他池不应受影响
- 优雅降级:协议应安全而非灾难性地失败
- 快速恢复机制:解冻冻结资金或重新分配损失的程序
- 透明的风险沟通:用户需要清楚了解他们承担的风险
DeFi 的精神趋向于认为“无信任”意味着“默认安全”。然而,更成熟的方法认识到“无信任”意味着“信任假设的透明”。用户可以根据接受风险的风险做出知情的决策。
从 Bunni 到未来的教训
Bunni DEX 的关闭不仅是 DeFi 失败长名单中的一项。它象征着定义 2025 年去中心化金融的抱负与执行之间的持续差距。
该协议的故事包含了几个令人警醒的教训。首先,创新和风险是不可分割的。Bunni 的流动性分布函数代表了自动做市商设计的真正进步。使其具有创新性的复杂性也使其易受攻击。在不接受更高风险的情况下没有明确的创新路径——这是行业必须诚实承认而非掩盖在审计背后的真相。第二,审计提供的保护有限。Trail of Bits 和 Cyfrin 是尊重的公司,在众多协议中保护了数十亿美元的价值。他们未能发现 Bunni 的漏洞反映的不是无能,而是审计方法论的基本局限性。逻辑层面的语义错误将继续逃避传统的审计。行业需要超越审计的额外安全层。
第三,DeFi 安全的经济学仍然存在问题。Bunni 无法负担重新安全启动所需的六到七位数的费用。然而,整个行业集体损失数十亿美元的漏洞。这种脱节表明了系统性的市场失败,其中个别项目在安全方面的投资不足,即使总体损失证明大规模投资是合理的。解决方案可能需要某种形式的集体行动——共享安全架构、共同保险或监管要求。
第四,人为因素主导技术因素。Bunni 的团队富有才华,动机良好。他们遵循最佳实践并投资于审计。失败不是恶意或无能,而是在没有错误的情况下构建复杂系统的固有难度。责怪个人错失要点——系统本身生成漏洞的速度比人类识别和修补它们的速度还快。
正如 Doug Colkitt 对 KyberSwap 利用活动所指出的, 一些攻击达到了如此高的复杂程度,以至于如果没有根本性的架构变化,预防它们可能是不可能的。KyberSwap 攻击者展示了与协议自身开发者相媲美的专业技术。当攻击者和防御者拥有相同的技能时,防御者面临着不对称的劣势——他们必须预见所有可能的攻击,而攻击者只需找到一个被忽视的角度。
2025年漏洞的更广泛模式揭示了几个反复出现的主题:
闪电贷作为倍增器:几乎每次重大利用活动都利用了闪电贷来扩大影响。在 DeFi 开发出更好机制来防止闪电贷滥用而不消除合法功能之前,这一攻击向量将继续存在。
可组合性作为复合风险:协议与众多外部系统集成会继承所有它们的漏洞。Euler 遗传性对 Balancer、Angle 和 Idle Finance 的影响表明了互联 DeFi 如何放大损失。需要更好的协议隔离和更强的故障模式。
编译器信任问题:Curve Vyper 漏洞展示出,即使是完美的协议级代码,一旦底层工具含有漏洞,也能失效。行业必须投资于保护整个技术栈——编译器、库、开发框架——而不仅仅是应用级合同。
快速响应很重要:GMX 通过提供白帽赏金和 Balancer 的主动漏洞披露成功恢复,展示了快速、透明的回应可限制损害并保持用户信任。协议需要提前准备危机管理程序和沟通策略。
市场记忆短暂:尽管屡次利用事件发生,DeFi 仍在增长。到 2025 年中期,总锁定价值恢复到了 900 亿美元以上。 这表明用户要么接受风险作为空间固有的部分,要么大多数参与者缺乏对过往失败的历史认知。无论哪种可能性,都对长远生态系统健康构成关注。
从数字来看,前景不一。Hayden Adams,Uniswap 的创始人,强调安全必须成为“优等考虑”而不是事后想法。然而,他自己的V4架构虽然进行了广泛审计,却通过钩子引入了新的攻击面。创新与风险仍然紧密相连。
Samczsun,可能是 Web3 最受尊敬的安全研究员,多次警告 DeFi 的复杂性已经超越了其安全基础设施。他在多个主要协议中发现漏洞证明了这些问题的普遍性以及具备专业技能的安全研究员的重要性。
最终的问题依然未解:DeFi 是否能真正安全,或者它的开放性从根本上与安全性不相容?传统金融通过门禁、监管和集中控制实现安全性。DeFi 追求开放、无需许可和去中心化。这些目标可能在数学上是矛盾的——随着系统变得更开放和可组合,它们必然变得更脆弱。
或许正确的问题不是“DeFi 能否被做到安全?”而是“对 DeFi 所提供的好处可接受的安全缺陷是什么?” 2025 年的用户继续选择 DeFi,尽管他们明知风险,因为他们重视审查抵御能力、全球访问和新型金融基础。他们做出知情(或有时不知情)的决定,把脆弱性视作这些好处的代价。
为了让 DeFi 成熟,用户需要更清晰地了解他们所接受的内容。协议应显著显示安全指标:审计报告、上次安全审查以来的时间、基于已知极限情况的风险中锁定的 TVL,以及可用的保险覆盖范围。市场可以根据风险适当为其定价,而不是将所有协议视为同样安全。
开发者必须接受完美安全是不可能的,设计时要考虑失败。断路器、资金隔离、升级路径和恢复机制应成为标准功能,而不是可选添加。问题从“我们如何防止所有利用?”转变为“当利用不可避免地发生时,我们如何将损害最小化?”
结论:真正需要改变的是什么
2025 年上半年损失的 31 亿美元不仅仅是数字——它意味着生活被打乱、信任被摧毁、创新被抑制。每次利用都将主流采用推得更远,并加强了对重度监管的呼吁,这可能完全抑制创新。
对于用户,虽然处方明确但不令人满意:假设每个协议都存在漏洞,将持有分散在多个平台上,保持对利用历史的关注,使用可用保险,并且永远不要冒险资金超过您能承受的损失。当前状态的DeFi适合那些风险承受能力较高,且了解自己参与的仍是一个正在进行中的试验的用户。
对于开发者,挑战在于接受安全不能是事后的考虑。协议必须将大量预算——或许总开发成本的20-30%——用于安全措施。这包括多个独立审计、必要时的形式验证、持续监控、快速响应能力和定期安全更新。无法负担这些的项目应该质疑它们是否应该存在。
对于整个行业而言,协调是必不可少的。共享的安全基础设施、标准化的审计方法、关于漏洞的公开交流以及联合保险机制将有助于解决安全投资不足的市场失败问题。可能有必要在某些程度上集中安全功能以实现真正有效的去中心化金融。
对于监管者来说,要想对 DeFi 施加传统金融法规的诱惑必须被警惕,因为创新需要承受一定的风险。聪明的监管将着重于透明度要求,确保用户理解风险,并在疏忽明确时提供问责制框架。过于严厉的禁令只会将 DeFi 带到无监管的司法管辖区,使情况恶化。
Bunni 团队的最后一次陈述捕捉了悲剧:“我们是一支由六人组成的小团队,对在 DeFi 中构建并推动行业向前发展充满热情。我们花费了多年的时间和钱来启动 Bunni,因为我们坚定地相信它是 AMMs 的未来。” 他们的信念可能是正确的——自动化做市商可能有一天会处理万亿价值。但从这里到那里需要解决不断逃避的安全挑战,继续成为行业最聪明的大脑的难题。
随着我们进入 2025 年余下的时间并迈向 2026 年,问题是 DeFi 能否足够快地成熟以防止日益复杂的利用活动压倒生态系统。支持信任金融的技术同时创造出中心化系统从未面对的新漏洞。或许这是一个不可避免的权衡。或者,也许随着形式验证、AI 驱动的防御和安全基础设施的突破最终将天平倾向于安全。
可以确定的是,目前的轨迹——年损失数十亿美元且安全性仍然是事后想法——是不可持续的。DeFi 必须进化,否则面临无关紧要。选择属于开发者、用户和投资者,他们共同决定去中心化金融是否代表人类的金融未来,或者只是另一个在构建无信任系统中失败的实验,在一个信任仍然重要的世界中。

