不再安全的TWAP预言机?VesperFi Fianance被黑事件分析_USD:VUSD价格

11月3日,知道创宇区块链安全实验室 监测到 以太坊上的 DeFi 协议 VesperFi Fianance 遭遇预言机操控攻击,损失超 300 万美元。知道创宇区块链安全实验室 第一时间对本次事件深入跟踪并进行分析。

攻击分为两部分:

第一部分:攻击阶段

交易哈希:

0x89d0ae4dc1743598a540c4e33917efdce24338723b0fabf34813b79cb0ecf4c5

1.攻击者向 pool 添加(VUSD 对 USDC 为无穷大)的 0.1USDC 流动性

央行货政委委员马骏:建议中国今年不再设定GDP增长目标:央行货币政策委员会委员、清华大学金融与发展研究中心主任马骏近日在座谈会上表示,受新冠肺炎疫情影响,今年GDP增速很难实现6%的目标。鉴于目前中国经济面临的巨大不确定性,建议今年不再设定GDP增长目标。(经济日报)[2020/3/31]

动态 | Kraken宣布将不再支持BSV:据coindesk报道,总部位于旧金山的加密货币交易所Kraken周二宣布,将不再支持BSV,理由是社区情绪以及该币的倡导者对该交易所提起的持续诉讼。Kraken将于4月22日停止BSV存款,4月29日将停止所有交易对的交易,最终将于5月31日停止取现。[2019/4/17]

2.攻击者通过 Swap 用 232k USDC 兑换走 pool 内正常的 222k VUSD 流动性

直布罗陀国际银行( Gibraltar International Bank,)已收到通知,苏格兰皇家银行RBS将不再处理与加密货币处理公司有关的交易:苏格兰皇家银行已经关闭了由直布罗陀实施的新的“数字帐表技术监管框架”授权的公司的结算系统。[2018/1/7]

第二部分:套利阶段

0x8527fea51233974a431c92c4d3c58dee118b05a3140a04e0f95147df9faf8092

1.通过 Swap 将 222k VUSD 兑换为 2205MM fVUSD

2.将 2205MM 抵押置换成其他 pool 基础代币

1.首要分析为什么黑客要进行两次操作,而不通过同一攻击合约完成操作?

解决这个问题首先我们要知道 Uniswap V3 使用的预言机为 TWAP 类型,该预言机功能为获取一个时间周期上的交易平均价格,也就是说当价格已经发生改变时,该交易可能还并没有处在 TWAP 获取价格的时间周期中。

所以在黑客已经完成攻击后,他并没有急于兑换手中的 VUSD,而是等到价格发生变化时再入手。我们也确实可以看到套利阶段发生在攻击阶段 10 块高后。

攻击交易哈希:

套利交易哈希:

2.至于添加流动性和兑换流动性得到解释

在 Uniswap V3 中,只有一个区块内对价格有影响的第一笔交易会被写入预言机。因此添加过高的流动性可以让 TWAP 发现并获取到攻击者指定的价格。而兑换走流动性则是让 TWAP 发现前一步骤以及套利。

本次安全事件的主角虽然是 VesperFi Fianance,但是更让人关心的是 Uniswap V3 的 TWAP 预言机是否依然安全,可以观察到并非 TWAP 预言机本身错误地获取了价格,而是一个严重超高的价格被设置出来让它获取的,不可否认其存在局限性,但是本次事件最主要的问题还是流动性过于集中在预期价格附近很容易被操纵以及允许 pool 内单个代币不合理的流动性被设置。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

[0:15ms0-0:996ms