ValueDeFi遭黑客攻击始末:一次基于AMM价格预言机的“神级”操作?
北京时间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 正在对该地址做全方位监控,并对其资金流向做进一步的锁定分析和追踪,以便协助项目方挽回被盗资产。
Ai sẽ là người được lợi trong đợt Bull Run của Bitcoin?
Theo báo cáo của sàn giao dịch OKEx trong thời kỳ Bull Run hiện tại của Bitcoin, những ch...
MCDEX khởi chạy trên mạng thử nghiệm Arbitrum Rollup L2
MCDEX vui mừng thông báo về việc ra mắt testnet của mình trên Arbitrum Rollup, một giải pháp khả năn...
[Tổng kết AMA] Cùng BigcoinVietnam tìm hiểu về Lien.Finance
Vào 11:00 AM - 12:00 PM, thứ tư, ngày 02/12/2020 Lien.Finance và BigcoinVietnam đã tổ chức một ...