Bunni 智能合約捨入誤差釀 840 萬美元閃電貸攻擊!細節曝光、漏洞已修補

去中心化交易平台 Bunni 公布了一起重大安全事件調查結果——攻擊者利用智能合約中的 捨入誤差漏洞,成功發動閃電貸攻擊,導致 840 萬美元資金被盜。被轉移的資金已經通過 Tornado Cash 混幣,增加了追蹤難度。Bunni 已向攻擊者提出「白帽賞金」方案,願意歸還 10% 資金以換取剩餘款項回流。

事件概覽:兩大資金池受影響

根據 Bunni 的事後分析報告,此次漏洞影響了:

Unichain 上的 weETH/ETH 交易池

以太坊主網 上的 USDC/USDT 交易池

漏洞源於 BunniHubLogic::withdraw() 函數中更新資金池閒置餘額的捨入方向處理不當。單獨操作

時該邏輯安全,但在多次複合操作下,卻為攻擊者提供了可乘之機。

攻擊手法拆解:44 次小額提現耗盡流動性

Bunni 報告還原了攻擊過程:

閃電貸借入資金:攻擊者透過閃電貸獲取 300 萬美元 USDT。

價格操縱:多次掉期交易將 USDC 流動性壓縮至僅剩 28 wei。

利用捨入誤差:連續 44 次小額提現,進一步削減 USDC 餘額,導致資金池流動性大幅下降。

反向套利:最後透過大額掉期抬高價格,再以操縱後的價格進行反向交易,套取巨額利潤。

漏洞成因:捨入方向的隱性風險

Bunni 指出,問題在於提款時更新閒置餘額的捨入方向處理。雖然單次計算不會出錯,但在多次操作疊加後,誤差被放大,最終形成可利用的攻擊面。

Bunni 表示:「所有捨入方向在單獨情況下都是安全的,但多操作組合時會引發漏洞利用。」

應對措施與平台狀態

漏洞修補:已更新捨入邏輯,防止同類攻擊。

安全驗證:區塊鏈安全公司 Cyfrin 進行分叉測試,確認修補後的安全性。

功能恢復:已重新開放所有網路的提現功能,但儲值、掉期等功能仍暫停。

追蹤與合作:與執法部門及中心化交易所合作,嘗試凍結相關資金流向。

資金追蹤與懸賞

Bunni 已鎖定兩個與攻擊相關的錢包地址,但由於資金已經通過 Tornado Cash 混幣,攻擊者身份難以確認。平台向攻擊者提出 10% 白帽賞金 提議,以換取剩餘資金的歸還。

未來防禦與測試框架升級

Bunni 表示,將全面升級測試框架,強化對複合操作場景的模擬,避免類似漏洞再次出現。雖然修正捨入方向能阻止當前攻擊,但團隊仍在評估是否會引入新的潛在風險。

結語

此次事件凸顯了 智能合約數學邏輯中的細微錯誤 也可能引發巨額損失。對 DeFi 項目而言,安全審計不僅要檢查單一函數的正確性,更要關注多步操作的交互影響。Bunni 的快速響應與透明披露,為行業提供了寶貴的安全案例,但同時也提醒所有協議開發者——在去中心化金融的世界裡,細節決定生死。

USDC-0.01%
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 1
  • 轉發
  • 分享
留言
0/400
暫無留言
交易,隨時隨地
qrCode
掃碼下載 Gate App
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)