當(dāng)前位置:區(qū)塊鏈 >區(qū)塊鏈 > BlueBerryProtocol 攻擊分析

BlueBerryProtocol 攻擊分析

更新時間:2024-03-06 15:29:06 | 作者:佚名
報道: 來源:深圳零時科技 背景 2024年2月25日,我們監(jiān)測到Ethereum上的一起攻擊事件:https://etherscan.io/tx/0xf0464b01d962f714eee9d4392b2494524d0e10ce3eb3723873afd1346b8b06e4,目標(biāo)為BlueBerryProtocol,損失資金約為455ETH1.4MUS...
報道:

來源:深圳零時科技

背景

2024年2月25日,我們監(jiān)測到Ethereum上的一起攻擊事件:https://etherscan.io/tx/0xf0464b01d962f714eee9d4392b2494524d0e10ce3eb3723873afd1346b8b06e4,目標(biāo)為BlueBerryProtocol,損失資金約為455 ETH 1.4M USD。幸運(yùn)的是該攻擊被一名ID為c0ffeebabe白帽攔截(0xC0ffeEBABE5D496B2DDE509f9fa189C25cF29671[c0ffeebabe.eth]),最終歸還了366.5 ETH 1.2 M USD。

BlueBerryProtocol是一個基于Compound fork的DeFi項(xiàng)目,提供借貸,抵押等服務(wù)。具體的運(yùn)行模式如下圖:

攻擊分析

攻擊者首先從Balancer中通過閃電貸,借了1個WETH。

隨后,攻擊者將1個WETH抵押到BlueBerryProtocol中,并mint了1個bWETH。接著,攻擊者利用抵押的1個bWETH作為抵押,分別利用borrow借走了8616個OHM(Decimal=9)、913262個USDC(Decimal=6)、6.86個WBTC(Decimal=8)。

最后,攻擊者通過Uniswap將獲得的OHM、USDC、WBTC換成457 ETH。

漏洞分析

問題的根本原因是代碼再處理不同資產(chǎn)時,尾數(shù)處理錯誤。WETH的decimal為18,OHM的decimal為9,USDC的decimal為6,WBTC的decimal為8。

但是,BlueberryProtocol的price oracle在處理token的價格時,均按照decimal=18進(jìn)行scale。

導(dǎo)致OHM的價值縮水1e9,USDC價值縮水1e12,WBTC價值縮水1e10。導(dǎo)致攻擊者通過僅僅1ETH的抵押便接走了價值460ETH的資產(chǎn)。

總結(jié)

本次漏洞在于項(xiàng)目方使用同一份代碼處理不同的代幣,且沒有考慮到不同代幣的decimal不同導(dǎo)致的。造成decimal較小的資產(chǎn)大量縮水,從而被攻擊者以極低的代價作為抵押借走。建議項(xiàng)目方在合約上線前,針對智能合約進(jìn)行充分的審計和交叉審計,避免此類安全問題。

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