比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > 火幣APP > Info

Grim Finance閃電貸安全事件分析_GRIN

Author:

Time:1900/1/1 0:00:00

0x01:前言

援引官方消息,北京時間12月19日,Fantom鏈上復合收益平臺GrimFinance遭遇了閃電貸攻擊。知道創宇區塊鏈安全實驗室第一時間對本次事件深入跟蹤并進行分析。0x02:事件詳情

交易細節如下圖所示:

瀏覽上圖的交易過程可知,攻擊合約利用閃電貸借取代幣,將借取的代幣質押到SpiritSwap里增加流動性獲取lp代幣,而問題就出現在depositFor()函數中。通過Tenderly(https://dashboard.tenderly.co/tx/fantom/0x19315e5b150d0a83e797203bb9c957ec1fa8a6f404f4f761d970cb29a74a5dd6/debugger調試該筆交易,攻擊者多次遞歸調用depositFor函數,利用該函數獲取大量代幣:

Cardano生態DEX WingRiders將于7月14日推出治理Token WRT:7月12日消息,Cardano生態去中心化交易平臺WingRiders宣布將于7月14日18時推出通貨緊縮型治理Token WRT。WRT供應量限制在1億枚。WRT可用于以低于常規交易對的價格購買加密貨幣,也可以用作代理抵押的貨幣。

此前3月消息,Cardano生態DEX WingRiders完成種子輪融資,融資金額未披露,Animoca Brands、Bitrue、Double Peak Capital、Spark Digital Capital和Matrixport等參投。[2022/7/13 2:08:45]

Grin網絡在區塊高度1136081出現無效交易:3月19日消息,Grin在官網發布通知稱,Grin網絡在區塊高度1136081出現無效交易,原因是范圍驗證緩存邏輯錯誤。為此,Grin已經發布v5.0.4版本對此進行修復,用戶須進行更新。金色財經此前報道:F2Pool魚池已緊急暫停GRIN礦池。[2021/3/19 19:00:10]

0x03:漏洞分析

depositFor()函數位于https://ftmscan.com/address/0x660184ce8af80e0b1e5a1172a16168b15f4136bf#code的第1115行:

匿名幣項目Grin的測試網已成功進行v4.0.0硬分叉升級:據官方消息,匿名幣項目古靈幣Grin的測試網已成功進行v4.0.0硬分叉升級。另外,據HardForks數據,Grin預計將于7月16日進行第三次硬分叉(v4.0.0網絡升級)。

此前報道,6月初,Grin客戶端發布4.0版本的第一個測試版,以支持第3次的硬分叉升級。

按照既定規劃,Grin將在最初兩年中進行4次硬分叉,即每經過262,080個區塊(約6個月間隔)進行一次。[2020/6/23]

該函數的safeTransferFrom()方法從IERC20(token)調用,最后一次調用,也就是逆序第一次執行后,余額balance也會隨之變動。當前鑄造憑證數量/前一筆鑄造憑證數量固定為3.54:

動態 | Virgil Griffith對有關其違反了《國際緊急經濟權力法》的指控不認罪:金色財經報道,以太坊開發者Virgil Griffith對有關其密謀違反《國際緊急經濟權力法》的指控不認罪。此前1月9日消息,Virgil Griffith被正式起訴,罪名為密謀違反《國際緊急經濟權力法》。他被指控非法前往朝鮮,并出席了區塊鏈會議,即使美國國務院已拒絕批準他前往朝鮮。[2020/1/31]

我們推導其公式為:

動態 | 武漢芯動 G32 Grin 礦機將延期至 1 月交付:武漢礦機生產商芯動科技 Innosilicon 表示第一批 G32 Grin 礦機預定客戶預期將在 2020 年 1 月交付,相比之前 8 月出貨的預期延遲了約 4 個月。[2019/9/30]

將該公式分子拆分,得到shares/totalSupply的固定比為2.54:

最后將Debug交易里的shares/totalSupply進行計算,其值與shares/totalSupply的固定比相同,因此可以確定套利值只與totalSupply()有關:

其中函數safeTransferFrom()傳入的變量token可控,導致攻擊者可以自己實現safeTransferFrom()方法,將該方法重入到depositFor(),拉升totalSupply()總量,最后通過_mint()方法向用戶添加質押憑證實現套利。以實施了5次重入攻擊為例,開始pool的值為0,在重入depositFor方法的前四次里,攻擊者一直傳入自己鑄造的代幣,pool的值會一直保持為0,但在第五次,也就是最后一次傳入100個受認可的代幣時,after的值會變成100,而afer-pool的差值amount也就是100,最后由于重入了5次,導致合約會向攻擊者鑄造100*5的質押憑證代幣。

其后果就是攻擊者只質押一次代幣,仍能多次增加質押總量實現套利。0x04:修復方案

1.由于depositFor()方法里的token可控才是導致這次攻擊事件的原因,因此只需要在傳遞參數的時候讓token不可控就行:

2.由于套利的原因是depositFor()方法里存在修改代幣數量的函數,因此還可以將修改代幣的方法單獨實現,這樣即使token變量可控,也無法成功套利:

3.鎖定交易token:

0x05:總結

經過完整分析,知道創宇區塊鏈安全實驗室明確了該次攻擊事件的源頭并非網傳的閃電貸攻擊,攻擊者利用GrimBoostVault合約的depositFor方法參數可控,實施了重入攻擊,將自己的鑄造的無價值代幣兌換成了質押憑證,最后通過withdrawAll方法實現套利,而閃電貸?攻擊者只是利用閃電貸擴大了套利值。對于合約代碼而言安全性是十分重要的,每一個未經驗證的傳入參數都可能導致巨大的經濟損失,開發者在編寫重要操作方法時,須記住零信任原則,謹慎對待每一個傳入參數。

Tags:GRIRINGRINFORJohnny Grillz DogePOWERINUPEPEGRINCH價格The Forms

火幣APP
必備攻略 | Huobi清退進入倒計時,我們需要做哪些工作?_ETH

這段時間,很多朋友都反映說郵箱和各種渠道都收到了火幣要求提幣的信息,且登火幣就會有清退提示的相關彈窗,并強行要求看5秒鐘。顯然,火幣的清退決心是堅定的.

1900/1/1 0:00:00
獲Animoca Brands投資,「Moonray PBC」要在比特幣網絡上開發元宇宙游戲_TRU

最近幾個月,我們陸續介紹了多款新興的元宇宙游戲,但基本都是基于BSC、Solana、Flow等高性能公鏈進行開發.

1900/1/1 0:00:00
每周編輯精選 Weekly Editors'' Picks(1204-1210)_以太坊

「每周編輯精選」是Odaily星球日報的一檔“功能性”欄目。星球日報在每周覆蓋大量即時資訊的基礎上,也會發布許多優質的深度分析內容,但它們也許會藏在信息流和熱點新聞中,與你擦肩而過.

1900/1/1 0:00:00
淺析比特幣的真正價值主張:如何理解比特幣是代際財富?_NFT

作者:AmyLiu圖片來源:網絡「比特幣真正讓人們能夠為自己生活之外的未來做計劃,這是歷史上許多人從未擁有的奢侈品和必需品.

1900/1/1 0:00:00
「區塊鏈協會」預算資金翻兩番,加密行業游說呈擴張態勢_INS

2021年年關將近,加密行業游說團體中最大的參與者之一「區塊鏈協會」也迎來了豐收年,會員企業和資金迎來了爆炸性增長.

1900/1/1 0:00:00
如何正常理解區塊鏈里的51%攻擊?_加密貨幣

文章作者:DankradFeist文章翻譯:Blockunicorn請原諒標題中的挑釁。顯然不是每個人都弄錯了。但是足夠多的人,我認為寫一篇關于這個主題的文章很好.

1900/1/1 0:00:00
ads