北京時間11月14日23:36,黑客對Value DeFi協議進行閃電貸攻擊,損失將近 740 萬美金的 DAI。黑客在偷走代幣後還留言「do you really know flashloan?」來挑釁開發團隊。
1個小時後,Value DeFi官方發推確認:MultiStables vault遭到了一次複雜的攻擊,凈損失達600萬美元。目前正在進行事後分析,並正在探索如何減輕對用戶的影響。
CoinGecko行情顯示,其VALUE代幣自零時開始下跌,最低觸及1.87美元,最高跌幅達31.75%,此後稍有回升,現報價2美元。Value DeFi當前鎖倉總額3280萬美元。
本次事件與此前的Harvest攻擊事件邏輯相似,PeckShield派盾對該事件進行分析認為,本次攻擊得逞的原因在於,項目代碼在使用基於 AMM 演算法的價格預言機上存在漏洞。
我們基於發起攻擊的交易(0x46a03488247425f845e444b9c10b52ba3c14927c687d38287c0faddc7471150a)來進行分析。攻擊者的惡意攻擊合約為(0x675BD0A0b03096c5ead734cFa00C7620538C7C6F)。
步驟1:通過 Aave 閃電貸獲得8萬個ETH(以460美元計約合3680萬美金)。
步驟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 (也即DAI/USDC/USDT)池子的平衡,進而抬升 USDC 的價格。
步驟6:在 Curve 上將3,100萬枚 USDT 換成1,733萬枚 USDC,此時可以看到 USDC 兌換價格已經有很大的偏差,完成這一步後,會進一步提升 Curve 上 3pool 池子中 USDC 的價格。
步驟7:在 Value DeFi 上銷毀之前鑄造的2,490萬枚 pooltokens,這部分 pooltokens 又贖回了3,308萬枚 3crv(算算可以知道比起鑄造多了812.4萬枚,這是由於DAI便宜了,所以贖回的3crv變多了)。
接下來,黑客在Curve再度反向操作,大約賺得86萬DAI:
步驟8:將1,733萬枚 USDC 在 Curve 上換回3,094萬枚 USDT。
步驟9:將9,028萬枚 USDC 在 Curve 上換回9,092萬枚 DAI。
步驟10:銷毀 3pool 中的3,308萬枚 3crv 來贖回 3,311 萬枚 DAI,相比於存款時的代幣數量,整整多了815.4萬DAI。
最後是剩餘步驟:返還 Aave 的閃電貸和 UniswapV2 上步驟2中的代幣。
這次攻擊之後,黑客返回給 Value DeFi 開發者(0x7Be4D5A99c903C437EC77A20CB6d0688cBB73c7f) 200萬枚 DAI,自己則保留了540萬枚DAI。
冷萃財經原創,作者:Awing,轉載請註明出處:https://www.lccjd.top/2020/11/17/value%e6%94%bb%e5%87%bb%e8%a7%a3%e6%9e%90%ef%bc%9a%e4%b8%ba%e5%a5%97740%e4%b8%87%e7%be%8e%e5%85%83%ef%bc%8c%e9%bb%91%e5%ae%a2%e8%b4%b7%e4%ba%861-5%e4%ba%bf%e7%be%8e%e5%85%83/?variant=zh-tw
文章評論