慢雾:OUSD闪电贷攻击者通过重入来凭空获得巨额的收益分配

2020-11-18 16:48 栏目:24H快讯 来源:网络整理 查看()
据慢雾区情报,2020 年 11 月 17 日,以太坊DeFi项目 OUSD 遭受闪电贷攻击。慢雾安全团队针对本次攻击进行简要分析:
1. 攻击者使用 dydx 闪电贷借出 70000 个 ETH,随后通过 Uniswap 将其兑换为 USDT 和 DAI。
2. 攻击者调用 OUSD Vault的 mint 函数,Vault 会先进行一次 rebase 将之前积累的奖励进行分配,随后将 750 万 USDT 从攻击者合约转入 OUSD Vault 中。此时 OUSD 合约会铸出等量的 750 万 OUSD 代币给攻击合约,最后通过 allocate 来结算当前的收益。
3. 在攻击者转入 750 万之前,Vault 的价值约为 7018138 美元。攻击者转入 750 万 USDT 后将占 Vault 总价值的一半以上。
4. 随后攻击合约利用 mintMultiple 函数传入 DAI 合约地址与攻击合约的地址,同样是先进行一次 rebase ,将之前累计的收益进行分配(包含先前转入的 750 万 USDT 部分),再通过 transferFrom 先将攻击合约的 2050 万 DAI 转入 Vault 中。随后将调用攻击合约的 transferFrom 函数,攻击者在攻击合约的 transferFrom 函数中构造再次调用 Vault 合约 mint 函数的逻辑来实现重入攻击。
总结:此次攻击关键在于调用外部合约造成的重入问题与Vault的rebase收益分配机制相结合,导致攻击者可以通过重入来凭空获得巨额的收益分配。针对此类情况,安全团队建议对传入资产进行检查后,对不在白名单内的资产直接进行回滚,并使用防重入锁以避免重入攻击。 DAI -0.27% ETH +2.84%
微信二维码
售前客服二维码

文章均源于网络收集编辑侵删

提示:仅接受技术开发咨询!

郑重申明:资讯文章为网络收集整理,官方公告以外的资讯内容与本站无关!
NFT开发,NFT交易所开发,DAPP开发 Keywords: NFT开发 NFT交易所开发 DAPP开发