预言机攻击是指一种网络攻击,它利用计算机系统对外部数据源(称为“预言机”)的信任漏洞。预言机是第三方数据提供商,向智能合约和去中心化应用程序 (DApps) 提供信息。区块链网络。这些数据源通过提供真实世界的数据(如价格信息、天气状况和其他外部事件),在使智能合约自主执行方面发挥着关键作用。[1][4]
预言机攻击通常涉及操纵预言机提供的信息,以欺骗智能合约或DApp。这些攻击的目标可能各不相同,但通常包括经济利益或扰乱去中心化系统的正常运行。攻击者可能会试图更改数据馈送,以触发智能合约中意外的操作,从而导致不良结果。[2]
价格操纵:在去中心化金融 (DeFi) 应用程序中,攻击者可能会操纵价格预言机以提供虚假的价格数据。这可以被利用来执行有利可图的交易或导致贷款平台内的清算。[5]
篡改外部数据:攻击者可能会破坏数据源本身或其通信渠道,以将虚假信息注入预言机馈送。例如,攻击者可能会伪造保险智能合约中使用的天气数据,以欺诈性地索赔赔偿。[4]
时间戳攻击:攻击者可能会通过预言机提供被操纵的时间戳,从而利用时间敏感的智能合约。这可能会扰乱基于时间的功能的正常执行。
预言机操纵对贷款协议构成挑战,可能会导致更大规模的偿付能力问题。例如,预言机漏洞有可能在协议内引发不利的债务头寸,其中抵押品的价值低于用户的债务。鉴于借款人可能缺乏偿还债务的动机,这种情况可能会迫使流动性提供者承担损失。[2]
除了协议偿付能力的风险外,预言机攻击还有可能在各种情况下引发全面的经济失败。例如,如果预言机不准确地报告价格波动,算法稳定币和重新定价代币可能会失去其预期的价格挂钩。[2]
为了避免偿付能力问题,DeFi货币市场密切监控抵押品资产的市场价值,并在债务头寸达到抵押不足的水平之前执行清算。但是,如果协议基于不准确的预言机数据进行计算,则这些清算可能是不合理的。[2]
缓解预言机攻击的措施包括:
多个预言机:使用多个独立的预言机并聚合其数据可以降低单个恶意源操纵的风险。[3]