游吧乐下载

加密货币闪电贷攻击是怎么掏空保险池的 预言机价格操纵怎么防

2026/11/4 10:51:57 作者:游吧乐编辑

11月4日凌晨,BSC 上一个名为 InsurancePool 的合约在单笔交易里付出去 260.21 枚 BNB,约合 18 万美元。钱没有留在攻击者手里全部:他最后带走 160.26 枚,剩下近 100 枚在价格被自己搅乱的那一小段时间里被滑点和手续费吃掉了。这起事件被 TenArmorAlert 在链上监测到,CertiK 随后给出的数字是赎回量被放大到正常值的 33 倍。损失金额在两百万元人民币以下,放在今年动辄九位数的被盗案里排不上号。值得单独拿出来看的,是它踩中的那个位置出事的不是某个用户的仓位,而是协议拿来给用户兜底的那只箱子。

一笔交易里借进、用掉、还掉:闪电贷到底解决了什么

要理解这次攻击,先得把闪电贷这件事从"黑客工具"的标签里拿出来。闪电贷本身是链上借贷协议提供的一项普通服务,条件只有一个:借出的资产必须在同一笔交易结束时归还。区块链执行交易是原子的,中间任何一步失败,整笔交易连同之前的每一步一起作废,账本上不会留下半成品。协议敢在没有抵押、没有信用记录的情况下放出上亿美元,靠的就是这条规则,不是靠信任借款人。

对攻击者而言,这意味着一种别处拿不到的能力:在几秒钟内拥有远超自身资金的购买力,而成本只是借款费和 gas。借一个亿,搅动市场,收回本金,整个过程写在一笔交易里,旁观者要等交易上链之后才看得到全貌。资金不够从来不是这类攻击的门槛,门槛在于找到一个"报价能被大额交易推着走"的合约。

Onchain Lens 的追踪显示,这次借入发生在 MoolahLista DAO 旗下的借贷平台,规模约 1.436 亿美元的 WBNB。这个体量足以把 BSC 上多数中等深度交易对的价格推离真实值。

被推歪的那口价:预言机为什么读不出异常

链上借贷与交易的成本结构,

相关下载: Binance全球顶级交易所 v3.22.4大小:306.2M

智能合约不知道一个币值多少钱,它只能去问预言机。预言机的取价方式决定了协议的抗操纵能力:如果价格来自一个撮合深度足够大的外部市场并做时间加权,单笔大额swap很难撼动它;如果价格直接读取某个池子的即时储备比例,那么谁能在这个池子里砸进足够多的钱,谁就能在那一瞬间改写协议眼中的"公允价"。

CoreVault 在赎回时按预言机报出的价折算应付款。攻击者先借入巨额 WBNB,在流动性池里做一笔大额 swap 把价格推偏,然后调用 CoreVault 发起赎回。合约读到的是被扭曲的价格,算出的应付量自然跟着膨胀,赎回被放大到正常水平的约 33 倍。多出来的那部分不是从攻击者自己的抵押里出的,而是从 InsurancePool 出的。

闪电贷资金在同一笔交易中经由浅池推高报价后再归还的示意

这里有个容易被忽略的细节:协议并非"没有校验"。它校验了价格,也校验了赎回数量,只是校验所依赖的那个数字本身已经被污染。合约逻辑再严密,输入端是假的,输出就是假的。这也是为什么同一个漏洞模板在 DeFi 里反复出现每次的受害者换一个名字,出问题的永远是"信任了谁给的价"。

260 枚付出去,160 枚带走:差额去哪了

三份链上数据放在一起看,很容易以为其中有一份写错了。CertiK 说损失约 11.22 万美元,TenArmorAlert 转述的数字是 11.23 万,OnchainLens 却说 InsurancePool 净损失约 17.95 万美元。同一起事件,为什么差出六万多?

把动作拆开就清楚了。InsurancePool 实际付出的是 260.21 枚 BNB,按当时价格约 18.03 万美元。攻击者拿走的只有 160.26 枚,约 11.1 万美元。中间那 99.95 枚既没有退给池子,也没有进攻击者的钱包,它留在了被攻击者自己搅乱的那笔 swap 里滑点损耗和池子手续费。攻击者为了把价格推上去必须先承受一次不利成交,回撤时又承受一次,这部分成本由他自己承担。

按两个口径反推的 BNB 单价都在 692 美元左右,说明三家的美元数字来自同一个价格锚点,分歧只是记的是哪只口袋:11 万美元记的是攻击者到手,18 万美元记的是池子付出,17.95 万美元记的是池子净损失。三个数都对,混用就会误判事件规模尤其在做风险敞口评估时,池子付出去多少才决定用户能拿回多少,攻击者赚多少只是量刑参考。

兜底池被掏空,意味着谁的损失

想先把链上协议的基础概念补一遍,可参考

相关下载: 欧易okx交易所 v6.195.1大小:549.4M

InsurancePool 的用途是在协议出现坏账时先行垫付。它没有外部出资方,通常由协议留存收益、部分清算罚金或早期募资注入,本质上是一笔公共的损失准备金。它被掏空,后果不是"攻击者拿走了用户的币"这么直接,而是:

保险准备金池被赎金掏空的示意

还有一层要说明白:截止发稿时,CoreVault 一方尚未发布详细复盘,也没有公布追回或注资计划。这意味着外界无法判断这次被抽走的是池子的全部还是部分,也无法判断协议会不会动用治理权限暂停赎回。在官方说明出现之前,任何"资金安全"的表述都只是推测。

同一天的另一条线索:损失占比其实在下降

把视角拉远一点会看到一件反直觉的事。Grayscale 研究主管 Zach Pandl 在 11 月 4 日提到,今年加密行业安全事件造成的损失已超过 80 亿美元,其中相当部分来自 10 月底币安那起被盗案;但这类损失占全市场市值的比例,长期看是在往下走的。这句话如果只读前半句,像是在说行业越来越不安全;把后半句接上,意思变成了"规模变大了,稀释也在变大"。

这个判断对普通读者有用,但它有个前提必须点出来:占比下降是统计意义,不等于个体风险下降。一个人把所有资产放在一个协议里,市场的分母有多大跟他没关系。CoreVault 这起事件里,如果保险池真的被抽空,受损的是这个协议里的存款人,与整个市场 2.5 万亿的市值毫无关系。宏观数字好看,微观损失照旧是一百对一百。

怎么判断一个协议的"兜底"是不是真的

这起事件能给出的最有用的东西,是一组可执行的检查动作,而不是"小心 DeFi"这种结论。下面几条都可以在链上和文档里查到,不需要额外工具:

一、看预言机的取价路径

去协议文档或合约里找价格来源。如果取的是单一 DEX 池子的即时储备比,那么当池子深度与协议 TVL 处于同一量级时,它就是可操纵的。链路越长、时间加权窗口越宽、来源越多,攻击者需要的资金就越大。可以问自己一个问题:要让报价偏离 5%,需要砸进去多少钱,这笔钱在闪电贷里借不借得到?借得到,就等于没有防线。

二、看保险池的规模与流向

保险池余额是公开的。把它与协议的总存款、未偿借款放在一起比,能看出兜底覆盖率。同时要看这个池子允许谁动、通过什么函数动、有没有单笔上限和延迟。CoreVault 的问题恰恰在于赎回路径能够直接触达这个池子,一次性取走而非按比例分批。

三、看赎回与提现有没有速率限制

链上协议防不住"价格错了",但可以防住"一次错就掏空"。单笔赎回上限、按时间窗口的累计上限、大额赎回的排队期,这些机制在正常行情下会让用户稍微慢一点,在攻击发生时就是把损失从"全部"压到"一部分"。没有这类限制的协议,等于把整只箱子摆在门口。

四、看历史复盘是否公开

出过事并公开复盘的项目,通常会补上具体的参数与改动;只说"已修复"而不说改在哪的,下一轮大概率还会重演。CoreVault 这一次连复盘都还没发,值得观察它多久给出说明。

顺带说一句常被误读的事:闪电贷不是漏洞,它是把漏洞的利用成本降到了接近零的杠杆。同样一个可操纵的报价源,十年前攻击者要自己凑钱砸盘,动用的是自有资金和真实亏损;现在他可以在同一笔交易里借、砸、取、还,只在中间承担滑点。防线的位置因此从"攻击者有没有钱"移到了"报价源够不够硬",这是很多老旧协议的审计报告里没有覆盖到的一层。

这起事件最该记住的一句话

33 倍这个数字看着夸张,但它不是攻击者的技术有多高明,而是合约在被喂了一个错误数字之后,忠实地执行了它该执行的逻辑。真正需要盯住的,是那个数字从哪里来、能被动多少、动了之后有没有第二道拦截。对持有仓位的读者来说,眼下能做的是三件事:查清自己所处协议的保险池余额与赎回规则,确认官方是否已发布说明,以及在参数明确之前不要因为"金额不大"就认为与自己无关。18 万美元的损失摊到一个小池子的存款人头上,未必是小数目。

资料来源:
Crypto Briefing(Estefano Gomez,2026年11月3日):https://cryptobriefing.com/corevault-flash-loan-oracle-attack-bnb/
Lookonchain / Onchain Lens 链上监测(2026年11月4日):https://www.lookonchain.com/feeds/80266
TechFlow 快讯,CertiK 数据(2026年11月4日):https://techflowpost.com/en-US/newsletter/142845
TechFlow 快讯,OnchainLens 净损失数据(2026年11月4日):https://techflowpost.com/en-US/newsletter/142847
PANews(TenArmorAlert,2026年11月4日):https://www.panewslab.com/zh/articles/01a1a439-8c05-734f-afee-87c1b57adb7c

相关文章

精彩推荐

用户评论

评分
★
★
★
★
★
力荐
选择头像:
10
999+人评分
★★★★★
★★★★
★★★
★★
★
查看更多 >