被盗 1.3 亿美元!Cream Finance今年第五次遭黑客攻击全解析

10月27日,链必安-区块链安全态势感知平台舆情监测显示,DeFi借贷协议Cream Finance再次遭受攻击,损失达1.3亿美元。被盗的资金主要是CreamLP代币和其他ERC-20代币。关于本次攻击,成都链安技术团队第一时间进行了事件分析。

合约#1 事件概览

攻击如何发生 Event overview

被盗约1.3亿美元!Cream Finance今年第五次遭黑客攻击,可能它真的有吸引“渣男”的体质。

10月28日消息,DeFi 协议 Cream Finance 针对闪电贷攻击事件发布回应称,其以太坊 CREAM v1 借贷市场被黑客攻击,攻击者从多个地址转移了价值约 1.3 亿美元的代币,没有其他市场受到影响。团队已经暂停了基于以太坊的 v1 借贷市场,并且正在进行事后审查。

合约#2 事件具体分析

攻击者如何得手 Event overview

攻击者:

0x24354d31bc9d90f62fe5f2454709c32049cf866b

攻击合约:

0x961d2b694d9097f35cfffa363ef98823928a330d

0xf701426b8126BC60530574CEcDCb365D47973284

交易hash:

0x0fe2542079644e107cbf13690eb9c2c65963ccb79089ff96bfaf8dced2331c92

1. 第一步先通过闪电贷从

DssFlash(0x1eb4cf3a948e7d72a198fe073ccb8c7a948cd853)合约借500,000,000DAI。

合约合约2. 把DAI放到yDAI

(0x16de59092dae5ccf4a1e6439d611fd0653f0bd01)合约中进行抵押,换取451,065,927.891934141488397224yDAI。

合约合约

合约3. 把换取yDAI代币放到Curve.fi: y Swap

(0x45f783cce6b7ff23b2ab2d70e416cdb7d6055f51)中添加流动性并获取447,202,022.713276945512955672yDAI+yUSDC+yUSDT+yTUSD 。

合约合约4. 接着将

447,202,022.713276945512955672yDAI+yUSDC+yUSDT+yTUSD抵押并获取446,756,774.416766306389278551yUSD。

合约合约5. 再在crYUSD中调用铸币函数,铸造 22,337,774,341.38713187 个crYUSD代币。

合约合约6.攻击合约

A(0x961d2b694d9097f35cfffa363ef98823928a330d)在构造函数里创建了攻击合约

B(0xf701426b8126BC60530574CEcDCb365D47973284),在5之后,攻击合约B从AAVE借贷524,102.159298234706604104 WETH

合约合约7.B发送6000WETH给A

合约

合约8. B将剩余的WETH兑换为ETH,并以此调用crETH池子进行抵押。

合约

合约9. 使用攻击合约B借出

446,758,198.60513882090167283 个YUSD代币,并以此铸币crYUSD,铸完币后归还,并将crYUSD发送给A,重复两次。

合约合约10. 使用攻击合约B借出

446,758,198.60513882090167283个YUSD,发送给A。

合约

合约11. 使用1,873.933802532388653625 WETH在uniswap v3中交换出7,453,002.766252个USDC。

合约12. 将3,726,501.383126 个USDC在Curve.fi中交换为DUSD。

合约13. 将DUSD交换为

450,228,633.135400282653487952 yDAI+yUSDC+yUSDT+yTUSD。

合约14. 将8,431,514.81679698041016119个 yDAI+yUSDC+yUSDT+yTUSD 直接发送回yUSD抵押池。由于使用直接转账,totalDebt不变,balanceOf(self)变大,导致totalAsset变大,最终影响到oracle预言机的价格获取pricePerShare变大,即可以通过抵押yUSD借出更多的代币。

合约

合约

合约

合约15. 以yUSD代币为抵押,借出cream 协议所有支持借贷的代币。

合约

合约16. 最后归还攻击A合约的闪电贷。

合约#3 事件复盘

我们需要注意什么 Case Review

本次攻击是典型的闪电贷进行价格操作,通过闪电贷获取大量资金后,利用合约设计缺陷,大幅改变价格导致获利。Cream的预言机价格计算使用与yUSD的totalAsset有关。向yUSD合约直接转账时,不会更新Debt,从而使totalAsset增大,从而使得yUSD价格变高,可以从Cream中借出更多的资金。

合约

注意

此前,Cream Finance已经至少遭到黑客的四次攻击,这次攻击也使得该项目成为黑客成功攻击次数最多的DeFi项目。

今年2月13日,黑客利用Alpha Homora V2技术漏洞从Cream Finance旗下零抵押跨协议贷款功能 Iron Bank借出ETH、DAI、USDC等资产,导致该项目损失约3800万美元。此后Alpha Finance表示将全额赔付资产。

同月28日,DeFi聚合平台Furucombo遭到严重漏洞攻击,Cream Finance 储备金账户受影响,Cream Finance 团队随即撤销了所有对外部合约的批准,但仍损失 110 万美元。

3月15日,Cream Finance 域名遭到黑客攻击,部分用户会看到网站发起输入助记词的请求,很快该项目官方发推提醒用户不要输入助记词,表示其智能合约和用户资金仍然安全,并在1个小时后宣布重新获得域名所有权。

8月30日,Cream Finance 因可重入漏洞遭遇闪电贷攻击,黑客获利4.2亿个AMP、1308个ETH以及少量USDC等稳定币资产,总资产价值超过3400万美元。

加上本次攻击事件,Cream Finance 可以说是年度最“衰”的DeFi项目。

声明:链百科登载此文仅出于分享区块链知识,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成任何投资建议。投资者据此操作,风险自担。

发表评论

登录后才能评论
联系我们

联系我们

邮件:abc@yi6g.com

分享本页
返回顶部