月亮链 月亮链
Ctrl+D收藏月亮链

USD:闪电贷 重入攻击,慢雾简析 OUSD 损失 700 万美金攻击流程_VAULT

作者:

时间:1900/1/1 0:00:00

此次攻击关键在于调用外部合约造成的重入问题与Vault的rebase机制相结合,攻击者可以通过重入来凭空获得巨额收益分配。

原文标题:《闪电贷重入攻击,OUSD损失700万美金技术简析》撰文:慢雾安全团队

据慢雾区情报,2020年11月17日,以太坊DeFi项目OUSD遭受闪电贷攻击。慢雾安全团队于第一时间跟进并进行相关分析。以下是慢雾安全团队针对本次攻击的简要分析。攻击过程详细分析会在稍后发布。如有兴趣可保持持续关注。

背景提要

OriginDollar(OUSD)由OriginProtocol(OUSD)创建,是一种新型的ERC-20稳定币,当它仍然放在钱包里时,会自动从DeFi协议中获得有竞争力的收益。OUSD由USDT、USDC和DAI等其他稳定币的1:1支持。

Sturdy Finance遭受约442 ETH的闪电贷漏洞:金色财经消息,据CertiK监测,Sturdy Finance遭受约442 ETH(约80万美元)的闪电贷漏洞。CertiK在2021年对该项目进行了审计,然而Sturdy后来升级到没有审计的合约。[2023/6/13 21:32:33]

攻击流程简析

1.攻击者使用dydx闪电贷借出70000个ETH,随后通过Uniswap将其兑换为USDT和DAI。

2.攻击者调用OUSDVault的mint函数,Vault会先进行一次rebase将之前积累的奖励进行分配,随后将750万USDT从攻击者合约转入OUSDVault中。此时OUSD合约会铸出等量的750万OUSD代币给攻击合约,最后通过allocate来结算当前的收益。

Baby Doll项目遭到闪电贷攻击:金色财经消息,据CertiK监测,Baby Doll (BABYDOLL) 项目遭到闪电贷攻击,损失25枚BNB(约7,900美元)。BSC合约地址: 0x449cfecbc8e8469eeda869fca6cccd326ece0c04a1cdd96b23d21f3b599adee2[2023/2/19 12:15:31]

3.在攻击者转入750万之前,Vault的价值约为7018138美元。攻击者转入750万USDT后将占Vault总价值的一半以上。

4.随后攻击合约利用mintMultiple函数传入DAI合约地址与攻击合约的地址,同样是先进行一次rebase,将之前累计的收益进行分配(包含先前转入的750万USDT部分),再通过transferFrom先将攻击合约的2050万DAI转入Vault中。随后将调用攻击合约的transferFrom函数,攻击者在攻击合约的transferFrom函数中构造再次调用Vault合约mint函数的逻辑来实现重入攻击。

安全公司:saddlefinance遭受闪电贷攻击,损失约950万美元:金色财经消息,据成都链安“链必应-区块链安全态势感知平台”安全舆情监控数据显示,saddlefinance项目遭受闪电贷攻击,损失约950万美元。[2022/4/30 2:42:00]

5.在上一步骤中转入2050万DAI后通过攻击合约的transferFrom函数再次调用Vault的mint函数。由于重入时传入2000USDT符合判断是否调用rebase的条件,此时将进行一次rebase,而由于rebase需要Vault中的资产总价值和OUSD的总铸币数有差值才能触发。按照原本的业务场景是进行allocate结算收益后改变Vault中的资产总价值然后通过rebase进行分配。而由于重入原因并没有先通过oUSD.mint进行铸币操作,且攻击者已先将2050万的DAI转入Vault中,所以Vault中的资产总价值仍然增加了,导致合约中的资产总价值大于OUSD的总铸币量。因此Vault会将增加的2050万DAI当成收益部分进行rebase分配。在步骤3中由于攻击者资产已占Vault总价值的一半以上,所以此时攻击者将凭空获得超过价值1025万的收益分配。

Aave闪电贷规模突破3亿美元:自成立以来,Aave已发行超过3亿美元的闪电贷,而在七月初,这一数字仅为1400万美元。就在8月29日,Aave发放了一笔高达1400万美元的闪电贷,也是该平台迄今规模最大的单笔贷款,而这种爆炸式增长也显示出市场对新型金融产品、以及为DeFi协议提供流动性的强烈需求。2020年,Aave取得了飞速发展,最近推出测试网代码,旨在为下一步去中心化治理做准备。本文撰写时,根据DeBank数据显示,Aave锁仓量已经达到15.1亿美元,在所有DeFi协议中排名第一。(decrypto)[2020/9/1]

6.随后将通过oUSD.mint铸出2000OUSD,并通过allocate结算重入时2000USDT的收益(从上一步骤可以看出攻击合约传入的2000USDT只是为了满足调用rebase的条件,触发收益分配而已)。重入结束后仍将通过oUSD.mint铸出之前转入的2050万DAI等值的OUSD代币。

7.最后Vault的总价值约为3501万美元,但攻击者所拥有的价值超过3825万美元,因此攻击者用大部分的OUSD去Vault进行赎回操作,将Vault基本提空,而其余的OUSD是通过Uniswap和Sushiswap的OUSD-USDT池将OUSD换成USDT来增加收益。

总结

此次攻击关键在于调用外部合约造成的重入问题与Vault的rebase收益分配机制相结合,导致攻击者可以通过重入来凭空获得巨额的收益分配。针对此类情况,慢雾安全团队建议对传入资产进行检查后,对不在白名单内的资产直接进行回滚,并使用防重入锁以避免重入攻击。

相关链接:

参考攻击交易:0xe1c76241dda7c5fcf1988454c621142495640e708e3f8377982f55f8cf2a8401

Uniswap

Uniswap

Uniswap一种简单的无代币交换协议,被称为去中心化的Shapeshift或者Bancor,已经在主网上启动。用Vyper写作,Gas消耗奇低无比。UniswapUniswapUniswapUniswapUniswapUNI查看更多OriginProtocol

标签:USDOUSDULTVAULTUSDJ币Synth oUSDCORE MultiChain TokenEVAULT币

币安app官网下载热门资讯
比特币:《正点财经》报道比特币创历史新高,普通人如何参与这波挖矿红利_curriculum-vitae

12月17日,CCTV-2《正点财经》栏目报道比特币创历史新高,报道称,北京时间今天比特币价格首次突破2.1万美元关口,彻底从三年的熊市中复苏并创下历史新高.

1900/1/1 0:00:00
FIL:Filecoin真正的价值并不是存储海量的数据?_FILE

当前的Filecoin全网算力达到较高水平,标志着区块链分布式存储将从规模扩张,进入到价值落地阶段。区块链分布式存储的价值并非在于存储海量数据和信息,而是成为资产化数据的“保险柜”.

1900/1/1 0:00:00
区块链:Vitalik Buterin:区块链并非取代反垄断法,可促进经济交易权力下放_区块链存证怎么操作

权力下放是区块链和反垄断法的共同目标,法律和技术可以作为盟友以弥补各自不足。原文标题:《VitalikButerin:区块链与反垄断法的互补作用》撰文:ThibaultSchrepel、Vita.

1900/1/1 0:00:00
COI:三分钟了解 Gitcoin 众筹模型:激进市场与二次方投票_Ino Coin

Gitcoin一个核心功能是采用二阶投票对项目进行众筹及Grant配置,其背后反映的是自由激进主义的思想.

1900/1/1 0:00:00
ETH:为什么 Fortnite 这样的游戏公司不会拥抱加密技术?_FORT

Pass这个通行证的概念在游戏行业流行已久,却一直如鸡肋。battle与之的结合,也仍名不副实。想要通过让玩家购买Pass,从而通过日常战斗完成任务来获得成就,这一初衷被无端扭曲.

1900/1/1 0:00:00
稳定币:HashKey:解读 G20 集团对稳定币监管态度与潜在影响_TOGASHI币

从稳定币特征、风险、现有政策及监管建议四个角度,解读G20集团对稳定币监管态度与未来稳定币分支的方向.

1900/1/1 0:00:00