BonqDAO價格操縱攻擊詳細分析附PoC
事件背景
根據NUMEN鏈上監控顯示,Feb-01-2023 06:29:18 PM +UTC,Polygon鏈上BonqDAO遭到價格操控攻擊,損失113,813,998枚WALBT和100,000,000枚BEUR,價值約8800萬美元。
攻擊者地址0xcAcf2D28B2A5309e099f0C6e8C60Ec3dDf656642
攻擊者合約0xED596991ac5F1Aa1858Da66c67f7CFA76e54B5f1
攻擊交易 0x31957ecc43774d19f54d9968e95c69c882468b46860f921668f2c55fadd51b19;
0xa02d0c3d16d6ee0e0b6a42c3cc91997c2b40c87d777136dedebe8ee0f47f32b1
攻擊分析
攻擊者首先通過少量代幣測試withdrawAllTokens功能正常使用,隨後給攻擊合約轉入少量TRB和WALBT,為後續攻擊做准備。
攻擊者通過給TellorFlex合約添加質押存款,獲得了更新價格的條件,這裏價格更新為price=5000000000000000000000000000.
之後攻擊者通過調用borrow方法借款,由於借款獲取價格是通過TellorFlex.getCurrentValue獲取,由於攻擊者已將該價格修改,所以這裏獲取的價格極高,導致攻擊者的大額借款可以成功借出。
漏洞核心
關鍵問題是在
https://polygonscan.com/address/0x8f55d884cad66b79e1a131f6bcb0e66f4fd84d5b#code
合約的submitvalue
攻擊者在上一步depositStake已經完成了資產抵押(抵押了10個TRB),所以在這一步可以給預言機發送報價。質押的越多更新報價的間隔會縮短。
然後再看價格的查詢:
https://polygonscan.com/address/0xa1620af6138d2754f7250299dc9024563bd1a5d6#code
https://polygonscan.com/address/0x8f55d884cad66b79e1a131f6bcb0e66f4fd84d5b#code
跟進到getDataBefore
然後再看getIndexForDataBefore,getTimestampbyQueryIdanIndex,retrieveData
querrId是個常量,先從時間戳找到index,因為根據時間戳記錄了很多報價,然後通過querryId獲得價格,返回值正是前面submitvalue的第二個參數:
hex:0x00000000000000000000000000000000000000001027e72f1f12813088000000
10進制:5000000000000000000000000000。
故此由於TellorFlex合約可以進行報價,報價的條件是只要用戶質押就能報價,所以用戶通過抵押10000000000000000000.獲取了12h報價一次的機會。隨後通過TellorFlex.submitValue函數進行了報價。
攻擊復現
EXP
EXP源碼鏈接:
https://github.com/numencyber/SmartContractHack_PoC/blob/main/BonqDAO_exp.sol
測試結果
總結
NUMEN實驗室提醒項目方,代幣價格需要進行嚴格把控,多種喂價匯總在一塊時,需要考慮價格計算的合理程度及喂價是否存在被控制的風險,合約上线前需要進行多家安全審計,保障合約風險盡可能被消除在鏈下,NUMEN專注於為web3生態安全保駕護航。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。
XRP 漲至 7.5 美元?分析師告訴 XRP 大軍為純粹的煙火做好准備!
加密貨幣分析師 EGRAG 表示,XRP 即將迎來關鍵時刻,價格可能大幅上漲,這取決於能否突破關鍵...
今晚ETH迎來暴漲時代 op、arb、metis等以太坊二層項目能否跑出百倍幣?
北京時間7月23日晚上美股开盤後 ETH 的ETF开始交易。ETH的裏程碑啊,新的時代开啓。突破前...
Mt Gox 轉移 28 億美元比特幣 加密貨幣下跌 ETH ETF 提前發行
2014 年倒閉的臭名昭著的比特幣交易所 Mt Gox 已向債權人轉移了大量比特幣 (BTC),作...
Numen Cyber
文章數量
17粉絲數
0