预言机及其在智能合约漏洞中的作用 – ImmuneBytes

本文深入探讨了区块链预言机在DeFi应用中的作用及其面临的安全挑战。文章分析了预言机如何成为攻击目标,详细解释了闪电贷攻击、链下故障、中心化预言机的风险以及TWAP预言机的漏洞,并提出了如数据源多样化、使用TWAP和VWAP机制以及采用去中心化预言机网络等安全建议,旨在帮助开发者构建更安全的DeFi应用。

2025年6月10日

区块链技术已经彻底改变了我们对金融的思考方式,创造了一个无需信任的生态系统,在这个生态系统中,去中心化应用(dApps)和智能合约可以自动执行复杂的金融系统。但即使是最复杂的智能合约也需要与现实世界互动,无论是获取最新的加密货币价格还是检查体育比赛的结果。这就是预言机发挥作用的地方。

预言机充当区块链和外部数据源之间的桥梁。虽然预言机实现了令人难以置信的功能,但它们也引入了严重的漏洞,这些漏洞一次又一次地被利用。

预言机如何成为目标

预言机将关键信息输入智能合约。例如,在去中心化金融(DeFi)中,借贷协议使用预言机来确定资产价格、计算用户抵押品和触发清算。如果预言机提供不准确的数据,即使是很短的时间,也可能导致巨大的经济损失。对这些数据馈送的信任使它们成为攻击者的主要目标。

想象一下,一个 DeFi 协议使用一个价格预言机,该预言机从一个去中心化交易所(DEX),如 Uniswap,提取实时资产价格。如果攻击者可以操纵该价格馈送,他们就可以利用该系统来获得优势。这不仅仅是一个理论风险——它是一个反复出现的现实,会带来毁灭性的后果。

闪电贷攻击

操纵预言机最常见的方法之一是通过现货价格操纵。这个概念很简单,但却具有灾难性。许多协议从 DEX 获取资产的“当前”价格,以评估存款或触发交易。但是,可以使用闪电贷暂时操纵此价格。

闪电贷允许用户借入大量加密货币而无需抵押品,只要他们在单个交易中偿还贷款即可。攻击者通过提取闪电贷来推高或抛售流动性池中资产的价格来利用这一点,从而在短时间内大幅改变其价格。

真实案例:Visor Finance 攻击

这方面的一个完美例子是 Visor Finance 攻击。该协议依赖 Uniswap 进行定价。通过使用闪电贷耗尽 Uniswap 池的一侧,攻击者抬高了资产的价格,欺骗智能合约以虚高的价格评估他们的存款。然后,攻击者提取了比他们存入的更多的价值,耗尽了池子,并偿还了闪电贷,将差额收入囊中。

在这里,核心问题在于依赖单一数据源做出关键决策。未经平均或多样化的价格馈送使操纵变得廉价且容易。

链下故障

并非所有预言机漏洞都源于链上操纵。有时,问题在于链下,即最初收集数据的地方。预言机通常依赖于外部服务器、API 和其他传统系统来收集数据,然后再将其推送到链上。如果此过程的任何部分受到破坏,区块链就会变得脆弱。

Synthetix sKRW 事件 为例。Synthetix 的衍生品协议汇总了来自各种来源的价格。但是,由于其链下系统出现故障,韩元 (sKRW) 的价格被报告为实际价值的 1,000 倍。一个套利机器人检测并利用了这种错误定价,获得了超过 10 亿美元 的利润。即使链上机制按预期工作,错误的链下数据也导致了灾难性的损失。

该事件突显了不仅需要在链上,而且需要在支持预言机的链下基础设施中采取严格的安全措施。

单点故障

一些项目选择中心化预言机,由单个实体负责将数据输入智能合约。虽然这可能看起来更简单、更有效,但它引入了一个巨大的信任问题。如果管理预言机的实体变得恶意或受到破坏,整个协议可能会崩溃。

如果预言机运营商意识到他们可以通过操纵数据来获利,他们可能会这样做。其次,如果他们的私钥被盗,黑客可能会劫持预言机并对协议造成严重破坏。中心化预言机本质上是脆弱的,因为它们在原本去中心化的系统中创建了一个单点故障。

去中心化预言机中的隐藏威胁

即使是旨在减少对单一数据源依赖的去中心化预言机,也不能免受操纵。去中心化预言机网络中的参与者因提交数据而获得奖励。但是,一些参与者可能会进行“搭便车”行为,即从其他来源复制数据而不对其进行验证,从而破坏系统的完整性。

另一种微妙但危险的攻击是 镜像,即恶意参与者将数据输入系统,同时创建多个虚假节点来回显该数据。由于表面上的共识,这会欺骗预言机网络,使其相信数据是准确的。

TWAP 预言机的真实攻击

引入了 时间加权平均价格 (TWAP) 预言机来对抗现货价格操纵。TWAP 预言机不是依赖于单个价格点,而是在一段时间内平均资产价格。但是,如果未正确实施,即使是 TWAP 也可能被利用。

一个著名的案例涉及币安智能链上的 Venus 协议。TWAP 预言机很容易受到攻击,因为它可以在未定期更新的情况下计算单个区块的平均价格。攻击者通过操纵一个区块内的价格来利用这一点,欺骗协议接受扭曲的价格数据,并使他们能够获得不公平的贷款。此漏洞突显了即使是像 TWAP 这样复杂的预言机,如果更新机制较弱,也可能受到破坏。

那么,如何构建更安全的预言机?

我们如何预防这些攻击?多元化是关键。 依赖多个数据源可以大大增加操纵的成本和难度。使用来自各种预言机的中位数价格而不是单一馈送可以减少错误或被操纵来源的影响。

时间加权平均价格 (TWAP) 和成交量加权平均价格 (VWAP) 可以有效地最大限度地减少短期操纵。但是,它们需要正确的配置,例如强制定期更新和确保足够的观察窗口。

ChainlinkTellorWitnet 这样的去中心化预言机通过在许多节点上分配数据收集来提高安全性,从而使任何单个实体都难以破坏数据。这些系统还对恶意行为引入了经济处罚,从而使激励机制与准确的数据报告保持一致。

结论:

预言机是强大的,但也很脆弱

预言机是许多去中心化应用程序的支柱,使智能合约能够与现实世界互动。但是,它们也代表了 DeFi 中最大的安全风险之一。从闪电贷驱动的价格操纵到链下系统故障,攻击面很广并且不断发展。

解决方案并不简单,但首先要承认预言机在设计时必须考虑到安全性。使数据源多样化、使用强大的平均机制(如 TWAP)以及采用去中心化解决方案可以在很大程度上降低风险。

区块链领域发展迅速,攻击者也是如此。今天加强预言机系统对于保护去中心化金融的未来至关重要。

  • 原文链接: blog.immunebytes.com/202...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
ImmuneBytes
ImmuneBytes
Stay Ahead of the Security Curve.