1. 使用儲備帳本記錄資產借貸情況; 2. 擴展精度,減少由於算術運算導致的誤差

封面:Photo by Nicolas Arnold on Unsplash

2023 年 11 月 1 日,Beosin 旗下 EagleEye 安全風險監控、預警與阻斷平臺監測顯示,OnyxProtocol 的 oPEPE 市場合約遭受駭客攻擊,駭客獲利約 218 萬美元。

相關地址:https://eagleeye.space/address/0x085bDfF2C522e8637D4154039Db8746bb8642BfF

有趣的是 OnyxProtocol 協定是 CompoundV2 的一個分支,早在 2022 年 4 月 15 日,HundredFinance 也因為同樣的漏洞遭受了 700 萬美元的損失。 本次 Beosin 帶您來回顧一下該漏洞。

事件相關信息

●攻擊交易

0xf7c21600452939a81b599017ee24ee0dfd92aaaccd0a55d02819a7658a6ef635

●攻擊者位址

0x085bdff2c522e8637d4154039db8746bb8642bff

●攻擊合約

0x526e8e98356194b64eae4c2d443cc8aad367336f0xf8e15371832aed6cd2741c572b961ffeaf751eaa0xdb9be000d428bf3b3ae35f604a0d7ab938bea6eb0xe495cb62b36cbe40b9ca90de3dc5cdf0a4259e1c0x414764af57c43e36d7e0c3e55ebe88f410a6edb60xcede81bb4046587dad6fc3606428a0eb4084d760

●被攻擊合約

0x5fdbcd61bc9bd4b6d3fd1f49a5d253165ea117500x9dcb6bc351ab416f35aeab1351776e2ad295abc4

漏洞分析

本次攻擊主要是駭客利用了捨入和匯率操控的問題,擊穿了專案方的代碼防線。

攻擊流程

攻擊準備階段:

1. 攻擊者借入 4000 枚 WETH 作為攻擊準備資金。

2. 攻擊者將借入的 WETH 兌換出約 2.52 萬億 PEPE。

3. 然後將 2.52 萬億 PEPE 分別轉入 0xf8e1,0xdb91 等多個位址,自此攻擊準備階段完成。

攻擊階段:

1. 攻擊者獲取少量 oPEPE,並將 PEPE 打入 oPEPE 市場,增加 oPEPE 市場中 PEPE 的餘額從而操控 oPEPE 的匯率。

2. 攻擊者從其他的市場惡意借出資金大量乙太坊。

3. 由於捨入和匯率操縱,攻擊者使用少量 oPEPE 清算借貸並贖回捐贈的資金。

4. 攻擊者重複上述步驟,最終將 PEPE 換回 ETH 並歸還閃電貸,從而獲利 1156ETH。

資金追蹤

截止發文時,Beosin Trace 追蹤發現被盜資金已大全部轉入 Tornado cash。

總結

針對本次事件,Beosin 安全團隊建議:1. 使用儲備帳本記錄資產借貸情況; 2. 擴展精度,減少由於算術運算導致的誤差; 3. 項目上線前,建議選擇專業的安全審計公司進行全面的安全審計,規避安全風險。

免責聲明:作為區塊鏈資訊平臺,本站所發佈文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。 本文內容僅用於資訊分享,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。