創宇區塊鏈|攻擊有輪回 蒼天繞過誰 Inverse Finance 情何以堪

發表於 2022-06-22 15:10 作者: 區塊鏈情報速遞pro

前言

北京時間 2022 年 6 月 16 日,知道創宇區塊鏈安全實驗室 監測到以太坊鏈上借貸項目 Inverse Finance 因預言機設計問題被攻擊,損失約 77BTC(152W美元)。

知道創宇區塊鏈安全實驗室 第一時間跟蹤本次事件並分析。

基礎信息

被攻擊預言機合約:0xe8b3bc58774857732c6c1147bfc9b9e5fb6f427c

攻擊者地址:0x7b792e49f640676b3706d666075e903b3a4deec6

攻擊合約:0xf508c58ce37ce40a40997c715075172691f92e2d

tx:0x958236266991bc3fe3b77feaacea120f172c0708ad01c7a715b255f218f9313c

漏洞分析

與大部分預言機事件一樣,項目方由於在預言機實現過程中過度依賴某一池子內的價格進行定價。導致攻擊者可操控該分布式池子的代幣比例導致價格控制進而攻擊協議。

本次事件中,攻擊者利用了項目方如下的價格預言機代碼:

該喂價函數將 Crv3 池內 BTC/ETH/USDT 池內代幣余額作爲價格源的一部分,導致在攻擊者在 CRV3CRYPTO 池子中利用大量 BTC 換取了 USDT 後產生了巨大的價格拉升。

攻擊流程

1. 攻擊者首先利用閃電貸從 AAVE 中借來了 27000 個 WBTC, 隨後將225個存入了 Curve,協議爲其鑄造相應的質押憑據(crv3crypto);

2. 利用 crv3crypto 存入 yvCurve-3Crypto,協議爲其鑄造相應憑據anYvCrv3Crypto;

3. 利用余下的 WBTC 來進行兌換,進而控制 latestAnswer 中獲取的 Curve池子中的余額比例。(使用 26,775 WBTC 交換獲得了 75403376 USDT);

在第三步兌換前預言機 latestAnswer 返回爲 979*1e18;

在價格操控後 latestAnswer 返回爲 2831*1e18;

4. 於是攻擊者得以使用抵押物借出 10,133,949 個 DOLA(價值 1011W 美元),而原本 225 個 BTC 價值 466W 美元;

5. 然後則是利用 USDT 換回 WBTC、交換 DOLA 爲 3Crv;

6. 移除 3Crv 流動性換取穩定幣 USDT;

7. 交換爲 BTC 並歸還閃電貸。

總結

預言機合約中錯誤的使用了 balanceOf 導致攻擊者可操控數據源導致被攻擊,這樣的攻擊方式在之前已出現過多次如 Definer 預言機攻擊事件,項目方在开發過程中不應忽視安全性考量,在上线前建議做好審計工作。

標題:創宇區塊鏈|攻擊有輪回 蒼天繞過誰 Inverse Finance 情何以堪

地址:https://www.coinsdeep.com/article/3842.html

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

你可能還喜歡
熱門資訊