麻吉大哥重金買入的項目卻遭黑客攻擊?Jimbos protocol 攻擊事件分析

Jimbos protocol 的 JimboController 合約遭受黑客攻擊,黑客獲利約 750 萬美元。

根據官網介紹,Jimbos Protocol 是部署在 Arbitrum 「反應集中流動性」的實驗協議,Jimbos Protocol 推出的主要代幣 $JIMBO 旨在不同情況下定期重新平衡其協議的流動性,以提高資金利用效率。

我們所熟知的麻吉大哥黃立成,就在前幾天曾花費上百萬美元購買此項目的代幣,在攻擊發生之後,其相關代幣也一陣暴跌,不知道麻吉大哥現在有何感想。

Beosin 安全團隊第一時間對事件進行了分析,現將分析結果分享如下。

事件相關資訊

攻擊交易

0x44a0f5650a038ab522087c02f734b80e6c748afb207995e757ed67ca037a5eda(其中一筆)

攻擊者地址

0x102be4bccc2696c35fd5f5bfe54c1dfba416a741

攻擊合約

0xd4002233b59f7edd726fc6f14303980841306973

被攻擊合約

0x271944d9D8CA831F7c0dBCb20C4ee482376d6DE7


攻擊流程

該攻擊交易有多筆,我們用其中一筆進行分析。

1.攻擊者首先閃電貸借出 10,000 WETH。

2.攻擊者然後使用大量的 WETH 兌換 JIMBO 代幣,使其拉高 JIMBO 價格。

3.接著攻擊者向 JimboController 合約轉移了 100 的 JIMBO 代幣,目的是為了後面的新增流動性做準備(因為價格 JIMBO 價格拉高,新增流動性時就只需要很少數量的 JIMBO 代幣)。

4.接著攻擊者再呼叫 shift 函式,shift 函式會移除原有的流動性然後新增新的流動性。呼叫 shift 函式,會把該合約的資金拿去新增流動性,以至於 JimboController 合約的 WETH 會被全部新增流動性。

5.這時候由於在失衡狀態新增流動性 ( 新增流動性時,會依靠當前的價格去作為依據,計算代幣需要的數量,相當於使用合約接盤了 ),以至於攻擊者可以獲得更多的 WETH,攻擊者最後把 JIMBO 兌換成 WETH 完成獲利。

漏洞分析

本次攻擊主要利用了 JimboController 合約中的漏洞,它允許任意人使用 shift 函式讓合約執行移除和新增流動性操作,使其高位接盤。

 

資金追蹤

截止發文時,被盜資金還未被攻擊者轉出,4048 枚 ETH 仍在攻擊地址中:

(https://etherscan.io/address/0x5f3591e2921d5c9291f5b224e909ab978a22ba7e)

總結

針對本次事件,Beosin 安全團隊建議:合約開發時,應避免合約被外部操控進行投資;項目上線前,建議選擇專業的安全審計公司進行全面的安全審計,規避安全風險。

來源
免責聲明:以上內容僅為作者觀點,不代表Followin的任何立場,不構成與Followin相關的任何投資建議。
喜歡
收藏
評論