Bter比特儿交易平台

The home of digital asset trading

SharkTeam独家分析 | 闪电贷攻击:Cream Finance被黑事件分析

Bter3周前28

北京时间8月30日,借贷平台Cream Finance遭遇闪电贷攻击,损失约1800万美元。黑客攻击攻击成功是因为AMP代币合约引入了一个可重入漏洞。AMP是一种类似erc777的代币,在更新第一次借款之前,它被用来在转移资产的过程中重新借入资产。在tx示例中,黑客进行了500 ETH 的闪电贷,并将资金存入作为抵押品。然后黑客借了1900万美元AMP并利用可重入漏洞在AMP token transfer() 中重新借入了355 ETH 。然后黑客自行清算借款。黑客在17个不同的交易中重复上述过程,总共获得5.98K ETH(约1880万美元)。

SharkTeam第一时间对此事件进行了攻击分析和技术分析,并总结了安全防范手段,希望后续的区块链项目可以引以为戒,共筑区块链行业的安全防线。

一、事件分析

攻击合约地址1:0x38c40427efbaae566407e4cde2a91947df0bd22b

攻击合约地址2:0x0ec306d7634314d35139d1df4a630d829475a125

攻击合约地址3:0xce1f4b4f17224ec6df16eeb1e3e5321c54ff6ede

攻击者闪电贷借了500 WETH

攻击者质押获得 24172 crETH

攻击者从 crAMP 合约借19480000 Amp

借贷时,cToken合约会先通过doTransferOut函数将AMP Token转移给攻击者,再记录攻击者的借贷数量到accountBorrows中

AMP Token的transfer函数会通过_callPostTransferHooks函数回调攻击者合约。攻击者合约在tokensReceived函数中再次调用了crETH合约,借出355个ETH

由于第一次是通过crAMP合约借贷的Amp,第二次是通过crETH合约借贷的ETH(重入),所以borrow函数的nonReentrant防重入修饰器不起作用。

nonReentrant防重入修饰器见下图

攻击者合约(0x38)将crETH凭证转移给攻击者合约(0x0e),攻击者合约(0x0e)赎回187 ETH并将其转入攻击者合约(0x38)

由于borrow函数是在给用户转账后再修改的accountBorrows,这能够导致攻击者可以进行超额借贷,为了不让攻击者合约(0x38)因为超额借贷而导致交易失败,使用攻击者合约(0x0e)对其进行清算。归还闪电贷,最终实现套利走人。

此次攻击原因在于AMP Token进行transfer时会使用_callPostTransferHooks函数回调目标地址,这导致了重入问题,且由于cToken合约是在借贷转账后才记录借贷数量,最终造成了超额借贷的问题。

二、安全建议

此次事件是又一次与闪电贷有关的安全事件,DeFi项目的业务逻辑设计复杂,涉及的经济学计算和参数较多,却不同项目和协议之间可组合性极其丰富,很难预测,非常容易出现安全漏洞。如下表,利用闪电贷这种新型产品进行攻击的DeFi事件在过去的一年里层出不穷,已增加到39起。通常闪电贷攻击包括“哄抬套利”、“操纵预言机”、“重入攻击”和“技术漏洞”四种,本次属于基于利用“重入漏洞”进行的闪电贷攻击。

SharkTeam提醒您,在涉足区块链项目时请提高警惕,选择更稳定、更安全,且经过完备多轮审计的公链和项目,切不可将您的资产置于风险之中,沦为黑客的提款机。而作为项目方,智能合约安全关系用户的财产安全,至关重要!区块链项目开发者应与专业的安全审计公司合作,进行多轮审计,避免合约中的状态和计算错误,为用户的数字资产安全和项目本身安全提供保障。

SharkTeam作为领先的区块链安全服务团队,为开发者提供智能合约审计服务。智能合约审计服务由人工审计和自动化审计构成,满足不同客户需求,独家实现覆盖高级语言层、虚拟机层、区块链层、业务逻辑层四个方面近两百项审计内容,全面保障智能合约安全。

上一篇 下一篇

猜你喜欢

  • 红海中崛起,Celo打造去中心化移动支付

    红海中崛起,Celo打造去中心化移动支付

    作者:Rachel出品:2020年,Celo繁荣联盟因Libra(Diem前身)协会成员、联合创始人的加入,在币圈一炮而红,再加上a16z、Polychain的加持,自诞生起,Celo一路走得颇为顺利,致力于移动端支付市场的稳定币发展,生态也逐渐繁荣。顺应当下行业趋势,8月底,Aave、Curve...

    7天前18阅读更多
  • Arbitrum来势汹汹,L2助推以太坊稳固霸主地位

    Arbitrum来势汹汹,L2助推以太坊稳固霸主地位

    作者:陈一晚风出品:最近几天,数字资产领域备受瞩目的就是Arbitrum的爆发式增长。据DuneAnalytics统计数据显示,以太坊Layer2网络Arbitrum的资产桥TVL已突破21亿美元,其7天的TVL增长率超过了3200%,这样惊人的成绩,让大众都开始重新对以太坊L2燃起了斗志。据...

    7天前13阅读更多
  • SharkTeam独家分析 | 闪电贷攻击:Zabu Finance被黑事件分析

    SharkTeam独家分析 | 闪电贷攻击:Zabu Finance被黑事件分析

    北京时间9月12日,Avalanche上ZabuFinance项目遭受闪电贷攻击。攻击流程与之前发生的多起安全事件非常相似,内部的交易攻击手法与今年7月份发生的PolyYeldFinance攻击事件相同。均使用当前合约的代币余额作为除数来计算奖励因子,攻击者利用合约的漏洞使得合约的余额消耗到...

    1周前17阅读更多
  • Yam Finance将把误造的200亿枚YAM发送至其DAO金库,在下一个链上治理提案中销毁

    Yam Finance将把误造的200亿枚YAM发送至其DAO金库,在下一个链上治理提案中销毁

    9月13日消息,DeFi项目YamFinance发布YAM铸造漏洞事件分析,团队于9月9日发现因Yam的链上治理提案YIP-79,错误地铸造了200亿枚YAM代币,并将它们发送到YAM多重签名地址,但由于YAM代币合约不允许发送至销毁地址,因此无法直接从多重签名地址中销毁它们。团队表示解决方案是...

    1周前13阅读更多
  • Cardano主网部署Alonzo硬分叉升级并启用智能合约功能

    Cardano主网部署Alonzo硬分叉升级并启用智能合约功能

    9月13日消息,Cardano开发公司InputOutput发推表示,已在Cardano主网部署了Alonzo硬分叉升级,正式进入智能合约时代,将通过HFC(硬分叉组合器)协议升级事件将Plutus智能合约功能部署到Cardano主网上。团队表示接下来的几个月将继续每两周发布一次代码更新,并定期...

    1周前15阅读更多

网友评论