北京時間11月14日23點36分, Value DeFi 的 MultiStablesVault 池子遭受黑客攻擊,損失將近 740 萬美金的 DAI,
區塊鏈安全公司 PeckShied (派盾)安全人員跟進分析初步發現,造成本次攻擊事件的根本原因是專案代碼在使用基于 AMM 演算法的價格預言機上存在漏洞,黑客在偷走代幣后還留言“do you really know flashloan?”來挑釁開發團隊,
概要:
整體而言:由于 Value DeFi 協議在使用基于AMM 演算法的價格預言機(Curve)來計算代幣價格時存在漏洞, 攻擊者先通過閃電貸操縱 Curve 上代幣的價格,然后再用鑄造的 pooltokens 成功提取出了遠超原先價值的 3crv 代幣,之后,攻擊者再將這些3crv 代幣在 Curve 上贖回 DAI ,從而完成獲利,
整個事件中黑客獲利740萬 DAI,其中的200萬回傳給了 Value DeFi,直接獲利540萬美元,
攻擊程序詳解:
我們基于發起攻擊的交易(0x46a03488247425f845e444b9c10b52ba3c14927c687d38287c0faddc7471150a)來進行分析,攻擊者的惡意攻擊合約為(0x675BD0A0b03096c5ead734cFa00C7620538C7C6F),
步驟1:通過 Aave 閃電貸獲得8萬枚 ETH,
步驟2:在UniswapV2 閃電貸獲得 1.16億枚 DAI,接下來,0x675B 惡意合約會執行如下內容,
步驟3: 將步驟1獲得的8萬枚 ETH 在 UniswapV2 上換成3,100萬枚 USDT,
步驟4: 在 Vault DeFi 上存入2,500萬枚 DAI 并獲得池子鑄造的2,490萬 pooltokens,此時 Vault DeFi 協議會鑄造出2,495.6萬枚新 3crv 代幣,
步驟5:在 Curve 上將9,000萬枚 DAI 換成9,028萬枚 USDC,這一步會影響 Curve上 3pool 池子的平衡,進而抬升 USDC 的價格,
步驟6:在 Curve 上將3,100萬枚 USDT 換成1,733萬枚 USDC,此時可以看到 USDC 兌換價格已經有很大的偏差,完成這一步后,會進一步提升 Curve 上 3pool 池子中 USDC 的價格,
步驟7:在 Value DeFi 上銷毀之前鑄造的2,490萬枚 pooltokens,由于價格的變化,這部分 pooltokens 贖回了3,308萬枚 3crv,
步驟8:將1,733萬枚 USDC 在 Curve 上換回3,094萬枚 USDT,
步驟9:將9,028萬枚 USDC 在 Curve 上換回9,092萬枚 DAI,
步驟10:銷毀 3pool 中的3,308萬枚 3crv 來贖回 3,311 萬枚 DAI,
剩余步驟:返還 Aave 的閃電貸和 UniswapV2 上步驟2中的代幣,
這次攻擊之后,黑客回傳給 Value DeFi 開發者(0x7Be4D5A99c903C437EC77A20CB6d0688cBB73c7f) 200萬枚 DAI,自己則保留了540萬枚DAI,
被盜資產情況:
這次攻擊中被盜取的資金現在被存放在錢包 0xa773603b139Ae1c52D05b35796DF3Ee76D8a9A2F 中, PeckShield 旗下數字資產追蹤平臺 CoinHolmes 正在對該地址做全方位監控,并對其資金流向做進一步的鎖定分析和追蹤,以便協助專案方挽回被盜資產,
推薦閱讀:
PeckShield:硬核技術決議,bZx協議遭黑客漏洞攻擊始末
PeckShield:DeFi平臺Opyn智能合約漏洞詳解——攻擊者空手套白狼!
PeckShield:DeFi平臺Balancer遭黑客攻擊全程序技術拆解
PeckShield:bZx協議再遭黑客“二連擊”背后的技術命門
0x協議漏洞原理剖析:惡意掛單可擾亂正常交易秩序
Uniswap和Lendf.Me遭攻擊始末:DeFi樂高組合下的“多米諾”式崩塌
AirSwap智能合約漏洞詳解:用戶資產可被攻擊者惡意吃單?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/223122.html
標籤:其他
