
北京時間11月14日23:36,黑客對Value DeFi協議進行閃電貸攻擊,損失將近740 萬美金的DAI。黑客在偷走代幣後還留言“do you really know flashloan?”來挑釁開發團隊。
圖片描述
圖片描述
根據Harvest根據
根據PeckShield分析,我們基於發起攻擊的交易(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。
根據PeckShield監測,這次攻擊中被盜取的資金現在被存放在錢包0xa773603b139Ae1c52D05b35796DF3Ee76D8a9A2F 中。 Odaily將繼續跟進事態發展。