区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > PEPE币 > 正文

比特币:闪电贷+重入攻击,OUSD 损失 700 万美金技术简析_Alchemix ETH

作者:

时间:

By:??Kong@慢雾安全团队

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

背景提要

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

一个MEV机器人因闪电贷回调损失约15万美元:10月19日消息,PeckShield发推称,合约地址开头为0xf6d7的MEV机器人因闪电贷回调损失约15万美元,攻击者地址为smithbot.eth。该机器人的开发者通过链上信息表示可以向攻击者提供损失的一半作为赏金。[2022/10/20 16:30:39]

攻击流程简析

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

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

Grim Finance 被黑简析:攻击者通过闪电贷借出 WFTM 与 BTC 代币:据慢雾区情报,2021 年 12 月 19 日,Fantom 链上 Grim Finance 项目遭受攻击。慢雾安全团队进行分析后以简讯的形式分享给大家。

1. 攻击者通过闪电贷借出 WFTM 与 BTC 代币,并在 SpiritSwap 中添加流动性获得 SPIRIT-LP 流动性凭证。

2. 随后攻击者通过 Grim Finance 的 GrimBoostVault 合约中的 depositFor 函数进行流动性抵押操作,而 depositFor 允许用户指定转入的 token 并通过 safeTransferFrom 将用户指定的代币转入 GrimBoostVault 中,depositFor 会根据用户转账前后本合约与策略池预期接收代币(预期接收 want 代币,本次攻击中应为 SPIRIT-LP)的差值为用户铸造抵押凭证。

3. 但由于 depositFor 函数并未检查用户指定转入的 token 的合法性,攻击者在调用 depositFor 函数时传入了由攻击者恶意创建的代币合约地址。当 GrimBoostVault 通过 safeTransferFrom 函数调用恶意合约的 transferFrom 函数时,恶意合约再次重入调用了 depositFor 函数。攻击者进行了多次重入并在最后一次转入真正的 SPIRIT-LP 流动性凭证进行抵押,此操作确保了在重入前后 GrimBoostVault 预期接收代币的差值存在。随后 depositFor 函数根据此差值计算并为攻击者铸造对应的抵押凭证。

4. 由于攻击者对 GrimBoostVault 合约重入了多次,因此 GrimBoostVault 合约为攻击者铸造了远多于预期的抵押凭证。攻击者使用此凭证在 GrimBoostVault 合约中取出了远多于之前抵押的 SPIRIT-LP 流动性凭证。随后攻击者使用此 SPIRIT-LP 流动性凭证移除流动性获得 WFTM 与 BTC 代币并归还闪电贷完成获利。

此次攻击是由于 GrimBoostVault 合约的 depositFor 函数未对用户传入的 token 的合法性进行检查且无防重入锁,导致恶意用户可以传入恶意代币地址对 depositFor 进行重入获得远多于预期的抵押凭证。慢雾安全团队建议:对于用户传入的参数应检查其是否符合预期,对于函数中的外部调用应控制好外部调用带来的重入攻击等风险。[2021/12/19 7:49:04]

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

DeFi项目array finance疑似遭到闪电贷攻击:PeckShield发推称,DeFi项目array finance疑似遭到闪电贷攻击。目前,项目方尚未回应。[2021/7/18 1:00:54]

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

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万的收益分配。

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收益分配机制相结合,导致攻击者可以通过重入来凭空获得巨额的收益分配。针对此类情况,慢雾安全团队建议对传入资产进行检查后,对不在白名单内的资产直接进行回滚,并使用防重入锁以避免重入攻击。

标签:以太坊比特币ETHCEX以太坊价格最新行情分析比特币总市值Alchemix ETHSynth iCEX

PEPE币热门资讯
以太坊:以太坊和比特币双双领涨,以太坊将来有望超过比特币吗?_ehash币持仓挖以太坊

应该说,这是个相当大胆的预测,并不存在刻意看空哪一个的意思。其实这个预测是基于超长期的,对于短期走势影响不大.

比特币:币圈如风:11.25晚间思路? 比特币以太坊有望再刷新高_波场币和比特币的区别在哪里呢

???投资其实是一门艺术,心态是你手中的画笔,好的画笔在加上娴熟的技术才能勾勒一副完美的图画。世界上最伟大的交易员有一个有用且简单的交易法则——“鳄鱼原则”.

CEX:缠论快手:11.24BTC行情分析 低多冲冲冲_VICEX

这个市场就像电影放映室,每天数不清的人一批批的来,一批批的走,有些人交学费得到了经验和心得,后面东山再起的可能性较大,可有些人却如同丢盔弃甲般心神俱伤,如果心态都已经崩溃了.

RIM:老何论币:11.24BTC行情分析 如果你对收入状况不满意 那么就要行动起来_Boosted Finance

  一个成功的投资者所依靠的并不是一门独特的技术指标,也不是非常精准的技术面的分析,而是具备正确的操作理念和方法,尊重趋势顺势操作,避免武断、茫然,积小胜为大胜.

RIM:小雷币看:11.25凌晨BTC行情分析_DEPO

人生不可能一帆风顺,总是在不断的挫折与磨难中不断成长的,人之所以不断成长,是背后的努力与积累一定数倍于普通人。山再高,往上攀,总能登顶;路再远,走下去,定能到达.

GATE:信息安全成新时代关注焦点 百融云创助力金融机构隐私管理体系建立_SDG价格

大数据、云计算等新兴科技在驱动产业数字化升级、催生海量数据的同时,也使得个人和企业的隐私数据与信息更加透明化。近年来,国际范围内,各类大型信息泄露案件频频发生.