精品精品国产手机自在线观|九九热思思精品视频|中文字幕aⅴ专区|黄国产成年人精品

    當(dāng)前位置:區(qū)塊鏈 >區(qū)塊鏈 > 超 1900 枚 ETH 被盜,Radiant Capital 如何被黑客「摸底」盜取 450 萬美元

    超 1900 枚 ETH 被盜,Radiant Capital 如何被黑客「摸底」盜取 450 萬美元

    更新時間:2024-01-03 19:04:14 | 作者:佚名
    2024年1月3日,RadiantCapital項(xiàng)目遭受攻擊者閃電貸攻擊,攻擊者通過3筆交易盜取了超1900枚ETH,價值超450萬美元,目前被盜資金還保存在攻擊者地址。 撰文:Beosin 2024年1月3日,據(jù)Beosin旗下EagleEye安全風(fēng)險監(jiān)控、預(yù)警與阻斷平臺監(jiān)測顯示,RadiantCapital項(xiàng)目遭受攻擊者閃電貸攻擊。攻擊者通過3筆交易...
    2024 年 1 月 3 日,Radiant Capital 項(xiàng)目遭受攻擊者閃電貸攻擊,攻擊者通過 3 筆交易盜取了超 1900 枚 ETH,價值超 450 萬美元,目前被盜資金還保存在攻擊者地址。


    撰文:Beosin


    2024 年 1 月 3 日,據(jù) Beosin 旗下 EagleEye 安全風(fēng)險監(jiān)控、預(yù)警與阻斷平臺監(jiān)測顯示,Radiant Capital 項(xiàng)目遭受攻擊者閃電貸攻擊。攻擊者通過 3 筆交易,盜取了超 1900 枚 ETH,價值超 450 萬美元,目前被盜資金還保存在攻擊者地址,Beosin 安全團(tuán)隊第一時間對本次事件進(jìn)行了分析。


    漏洞分析


    該事件發(fā)生的根本是由于 Radiant Capital 項(xiàng)目在計算代幣數(shù)量的過程中,使用了精度擴(kuò)展,并且采用了四舍五入的方式進(jìn)行計算,導(dǎo)致攻擊者可以通過控制精度大小,并結(jié)合四舍五入擴(kuò)大利潤點(diǎn)來進(jìn)行攻擊。



    觀察上述代碼,rayDiv 函數(shù)傳入兩個 uint256 數(shù)據(jù) a 和 b,整個過程可以簡寫為 (a*RAY+b/2)/b,其中 RAY 是精度擴(kuò)展數(shù)據(jù),為 10^27,那么該結(jié)果相當(dāng)于 a*RAY/b+0.5,實(shí)現(xiàn)四舍五入的功能,而該計算方式誤差主要來源于 b,如果 b 相對于 a 來說極小,那么誤差將可忽略不計,但如果 b 于 a 擁有相同數(shù)量級,那么誤差可能達(dá)到 a 本身。


    舉個例子:如果 a*RAY=10000,b=3,那么計算出來結(jié)果為 3333,比實(shí)際值小了 1/10000;而如果 a*RAY=10000,b=3000,計算出來的結(jié)果為 3,比實(shí)際值小了 1/10。


    此次事件便是攻擊者操控 b 的值,讓 b 值與 a 值擁有相同數(shù)量級,使得計算等價于 3/2.0001=1,計算值比實(shí)際值減小 1/3。


    攻擊流程


    讓我們來看看黑客的攻擊流程:


    1.攻擊者首先通過 AAVE 閃電貸借貸了 300 萬枚 USDC,用于攻擊啟動資金。

    ?


    2.攻擊者將 200 萬枚 USDC 質(zhì)押到 Radiant 合約,并獲得了 200 萬枚 rUSDCn 憑證代幣。



    3.攻擊者通過 Radiant 合約進(jìn)行閃電貸,借貸 200 萬 USDC,并在回調(diào)函數(shù)中將 200 萬 USDC 歸還,同時將第二步質(zhì)押的 USDC 提取出來,最后閃電貸函數(shù)會調(diào)用 transferfrom 函數(shù)連本帶利的將攻擊者的 USDC 轉(zhuǎn)入合約。此時會收取 9/10000 的手續(xù)費(fèi),而收取的手續(xù)費(fèi)便成為了池子的流動性。

    ?


    4.攻擊者通過多次重復(fù)步驟 3 的操作,將 liquidityIndex 控制得很大,liquidityIndex=271800000000999999999999998631966035920。

    ?


    5.接下來,攻擊者新建了一個合約,并向其中打入 54.36 萬 USDC,因?yàn)?5436(USDC 數(shù)值 ) 正好是步驟 4 中 2718(liquidityIndex 數(shù)值 ) 的兩倍,可方便進(jìn)行四舍五入控制。

    ?


    6.攻擊者將 54.36 萬 USDC 全部抵押進(jìn) Radiant 合約,并獲得相同數(shù)量的 rUSDCn。



    7.攻擊者提取 40.77 萬 USDC,本應(yīng)該銷毀 40.77 萬 rUSDCn,但如上所述,burn 函數(shù)進(jìn)行了精度擴(kuò)展與四舍五入計算。


    407700000000000000000000000000000000000/271800000000999999999999998631966035920=1.49999999,而四舍五入結(jié)果為 1,導(dǎo)致結(jié)果偏小了 1/3。


    如下圖,本該銷毀 40.77 萬,但還剩 27.18 萬,說明只銷毀了 27.18 萬,攻擊者便提取了 40.77 萬 USDC。


    ?

    8.攻擊者利用第七步的漏洞,重復(fù)質(zhì)押提取操作,并且提取始終比質(zhì)押數(shù)量多 1/3,最終將池子里的 USDC 全部兌換出來。



    資金追蹤


    截止發(fā)稿,被盜的 1902 枚 ETH 一直存在黑客地址未移動,Beosin Trace 將對資金進(jìn)行持續(xù)監(jiān)控。

    ?


    隨著 2024 年的開啟,我們已目睹了兩起大金額的被盜案件的發(fā)生。(昨日安全事件回顧:開年第一案,被盜 8000 萬美元的 Orbit Chain 事件是怎么一回事?)這一系列的事件再次提醒了我們,在 Web3 生態(tài)系統(tǒng)中,安全防范仍然是至關(guān)重要!

    本站提醒:投資有風(fēng)險,入市須謹(jǐn)慎,本內(nèi)容不作為投資理財建議。