MetaTrust:Onyx的治理和漏洞是如何淪為黑客的“金鏟子”?

2023-11-03 00:11:13

11 月 1 日, MetaScout 監測到 以太坊上的借貸協議 Onyx Protocol 遭受了一次閃電貸攻擊,損失了 210 萬美元。根本原因是黑客盯上並首先執行了添加新市場的提案,以及 Compound 分叉協議中存咋 id 精度損失問題。

MetaTrust Labs 據此對該事件進行了深入的研究和分析,揭露黑客是如何利用治理提案和協議漏洞對 Onyx Protocol 發起這場攻擊。

關於 Onyx Protocol

Onyx Protocol(https://docs.onyx.org/)是一個借貸市場,旨在為以太坊網絡上的用戶提供安全和無需信任的信貸和借貸服務。

在 2023 年 10 月 29 日,Onyx Protocol(https://x.com/OnyxProtocol/status/1718348637158137858?s=20)啓動了提案 OIP-22 ,以將$PEPE 添加到市場中。然而遺憾的是,該提案被黑客盯上並加以攻擊了。

同時,從 Onyx 鏈上部署的合約來看,它是 Compound 衍生協議,由於遭受攻擊,其 TVL 從 286 萬美元下降到 55 萬美元。

攻擊行動

攻擊損失

兩筆攻擊交易的總損失約為 214 萬美元

攻擊者

0xdec2F31C3984F3440540DC78Ef21b1369d4eF7670x5083956303a145f70ba9f3d80c5e6cb5ac842706

攻擊合約

0x052ad2f779c1b557d9637227036ccaad623fceaa

受攻擊合約

代理合約: https://etherscan.io/address/0x5fdbcd61bc9bd4b6d3fd1f49a5d253165ea11750

實現合約: https://etherscan.io/address/0x9dcb6bc351ab416f35aeab1351776e2ad295abc4#code

治理合約

https://etherscan.io/address/0xdec2f31c3984f3440540dc78ef21b1369d4ef767

攻擊步驟

TL;DR

以攻擊交易0x f 7 c 216 為例

1. 黑客(0x 085 bDf)首先執行提案 OIP-22 以添加一個名為 oPEPE(0x 5 fdbcd)的新市場

2. 在新市場添加後的一分鐘內,從 AAVE 啓動了一個閃電貸並獲得了 4, 000 個$WETH

  1. 將 4, 000 個$WETH 兌換成 2, 520, 870, 348, 093 個$PEPE

  2. 將所有的$PEPE 轉移到地址0x f 8 e 153

  3. 在上述地址0x f 8 e 153 創建合約,使用 1 個$PEPE 鑄造了 50, 000, 000, 000, 000, 000, 000 個$oPEPE,贖回了絕大部分$oPEPE,僅剩下 2 wei 給 oPEPE 市場

  4. 將 2, 520, 870, 348, 093 個$PEPE 轉移到 oPEPE 並以$oPEPE 進入市場

  5. 借入 334 個$ETH

  6. 由於精度損失問題,僅贖回了 1 wei 的$oPEPE 就換取了 2, 520, 870, 348, 093 個$PEPE

  7. 匯率 = (總現金 + 總借出 - 總儲備)/總供應= 2, 520, 870, 348, 093, 423, 681, 390, 050, 791, 472 / 2= 1, 260, 435, 174, 046, 711, 840, 695, 025, 395, 736

    贖回金額 = 2, 520, 870, 348, 093, 423, 681, 390, 050, 791, 470

    由於受到交易截斷,贖回令牌 = 贖回金額 / 匯率 = 1

    清算借款人(0x f 8 e 153)的 881, 647, 840 wei $PEPE

    贖回了 856, 961, 701 wei $PEPE

  8. 從步驟 b 到步驟 f 重復以上步驟,借入$USDC、$USDT、$PAXG、$DAI、$WBTC 和$ LINK ,兌換成$ETH

3. 用 4, 002 個$WETH 還清 AAVE 的閃電貸,從中獲得了 1156.9 個$ETH 的利潤

根本原因

  • 一方面,黑客非常熟悉 Compound 協議的精度損失問題,並提前注意到了 Onyx Protocol 的漏洞,因此,黑客可能早早的意識到了提案 OIP-22 中的問題,一旦提案激活並准備好執行,黑客搶先執行該提案,並在僅僅一分鐘後就發動了攻擊。

  • 另一方面,精度損失漏洞是攻擊的根本原因。黑客操縱了 totalSupply 使其變成一個極小的值即 2 ,並將 totalCash 增加到極大的值,即2520870348093423681390050791471,以放大 exchangeRate,從而導致在贖回時產生計算截斷。

安全建議

  • 對治理提案進行詳細的審計,不僅限於智能合約,特別是在初始化場景和其他邊緣情況下;

  • 考慮在市場初始化時添加少量份額以防止操縱,尤其是對於 Compound 協議;

  • 建議採用監控系統,在緊急情況發生時暫停協議。如果 Onyx 已經有一個監控系統,第二次攻擊交易發生超過半小時後可能會被阻止以減少損失。另外,整合一個內存池阻塞系統會非常有益。這個系統可以有效地檢測攻擊者在執行攻擊時在內存池中的攻擊交易,允許進行預防性阻止以避免損失。

資金流向

截稿時,攻擊者(0x 085 bDf)已使用另一個受控地址(0x 4 c 9 c 86)將 1140 個$ETH 轉移到混幣平臺 Tornado.Cash

另一位攻擊者仍然將竊取的代幣保留在錢包中(0x 508395)

同類攻擊案例

這個漏洞類似於 2023 年 4 月 15 日的 Hundred Finance 遭受的黑客攻擊,該攻擊導致損失約 700 萬美元。交易鏈接: 0x6e9ebcdebbabda04fa9f2e3bc21ea8b2e4fb4bf4f4670cb8483e2f0b2604f451

關於 MetaTrust Labs

MetaTrust Labs 是新加坡南洋理工大學孵化的領先Web3人工智能安全工具和代碼審計服務提供商。我們提供先進的 AI 解決方案,賦予开發者和項目相關者保護Web3應用程序和智能合約的能力。我們的綜合服務包括 AI 安全掃描、代碼審計、智能合約監控和交易監控。在 MetaTrust Labs,我們致力於保護Web3領域,使構建者能夠充滿信心和可靠地進行創新。

Website: metatrust.io

Twitter : @MetatrustLabs

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

評論

推薦文章

以太坊 OG 开噴「ETH 沒救」:基金會要坦承四大失誤,2021 年曾掌握世界最大算力

撰文:0xJigglypuff,動區動趨 BlockTempo 來源:動區動趨 BlockTemp...

區塊新視野
2 58分鐘前

加密市場的“周期詛咒”:明知泡沫會破,我們為何還一次次輸光所有?

作者: hitesh.eth 編譯:Tim,PANews 2017年初,當我在2017年初理解比特...

2 58分鐘前

對等關稅來襲,加密市場拿到困難劇本

特朗普,又一次展現了其翻手為雲覆手為雨的全球影響力。 最近一周,全球都在關注特朗普的對等關稅計劃。...

陀螺財經
2 58分鐘前

加密市場宏觀研報:特朗普對等關稅衝擊全球資產,比特幣能否成為新避險資產?

摘要 美國總統唐納德·特朗普近日籤署行政令,正式實施“對等關稅”政策,對所有貿易夥伴徵收 10%...

星球日報
2 58分鐘前

借貸+質押,解密穩定幣協議 Level 的創新模型 | CryptoSeed

3月26日,lvlUSD 市值突破 1 億美元,在不到一個月的時間裏,增長率達到 129%。作為穩...

2 58分鐘前

ACT暴跌、Wintermute離場,散戶擺脫不了被割的命運?

作者:Scof,ChainCatcher 編輯:TB,ChainCatcher 4月1日,多個低市...

2 58分鐘前