区块见闻 区块见闻
Ctrl+D收藏区块见闻

TAL:Rari 被黑事故分析:开心做聚合 无奈被攻击_ANC

作者:

时间:

2021年5月8日,据链闻消息,以太坊收益聚合协议RariCapital因集成了AlphaFinance产生了漏洞,损失近1500万美元。事后,RariCapital官方发布了事故分析报告,分析了此次事故的主要原因。慢雾安全团队在官方分析的基础上,结合慢雾安全团队对此次事件的深入分析,进一步解读本次安全事故的原因。

攻击细节分析

本次攻击发生在RariCapital的RariManger合约中,整个过程下来就是攻击者首先通过闪电贷从dYdX中借出巨量资金,然后不停的重复调用RariManger合约中的deposit和withdraw函数,完成获利。如下图:

VSAPartners与RareAirMedia合作,基于XRPL推出迈克尔·乔丹相关NFT系列:4月8日消息,迈克尔·乔丹的视觉自传《FortheLoveoftheGame》的制作人RareAirMedia开始涉足NFT领域。目前,该公司正与VSAPartners(Ripple旗下CreatorFund的主要创意机构合作伙伴)合作,以在XRPL上设计、开发和销售一系列NFT,包括覆盖前NBA球员迈克尔·乔丹的生平和传奇职业生涯的数字资产。第一批NFT预计将于2022年第二季度发布,其中将包括迈克尔·乔丹原始、重要图像的精选,及其个人想法和观察。此前消息,Ripple去年9月宣布创建了一个2.5亿美元的创建者基金,以支持基于XRPLedger的NFT项目。到目前为止,它已收到超4000份申请。[2022/4/8 14:11:59]

那么用户是如何通过deposit和withdraw这两个操作获利的呢?我们需要分析对应的函数:

BAYC创作者Seneca新作“LITTLE ONE”NFT上线SuperRare并启动拍卖:2月23日消息,BAYC 创作者、华裔少女 Seneca 创作的最新 NFT 作品“LITTLE ONE”已在 SuperRare 平台上架并启动拍卖,据最新数据显示,当前最高出价为6.9ETH,约合2万美元。据悉,本次拍卖将在美国东部标准时间周六晚上8点结束。[2022/2/24 10:11:47]

以上是deposit函数的部分逻辑,首先deposit函数本身会调用内部的_depositTo函数,然后会再次调用getFundBalance函数来获取合约的余额。getFundBalance函数最终是会调用到RariController合约的getBalance函数去获取余额。最后是通过RariController合约中的AlphaPoolController库的getBalance函数获取余额。如下图:

NFT市场Rarible推出消息传递功能:金色财经报道,NFT市场Rarible推出了直接消息传递功能,允许用户和创作者使用加密钱包地址而不是社交网络用户名进行交流。该公司表示,该消息应用程序可以帮助用户就NFT销售进行交流,并将创作者与其粉丝和社区联系起来。[2021/11/24 22:13:05]

流程上略微复杂,用图来展示大概就是下面这样:

从上面的分析不难发现,Rari合约最终是用到了AlphaFinance项目的ibETH合约的totalETH函数获取合约的余额,目的是为了根据totalETH和totalSupply的比值计算出Rari合约真正的ETH余额。deposit函数是根据用户的充值ETH的数量和比值计算要发放给用户的REPT数量,而withdraw函数的公式也大同小异,同样需要通过getBalance函数获取合约的ETH余额并计算比值,然后根据用户的REPT代币的余额和比值计算需要返还给用户的ETH的数量。但是问题恰恰出在这个获取ETH余额的公式上。

Gate.io Startup首发项目PRARE已认购成功:据官方公告,Gate.io Startup首发项目PolkaRARE (PRARE)已认购成功,并将于5月12日(明日)开通PRARE交易并随后开通提现服务(晚于 Uniswap 上线 24 小时)。据悉,本次认购参与人数共有18,681人,下单总价值超过1,000万美金,认购系数约为0.0010 。Gate.io将根据每个人的下单情况和每个下单币种的认购系数进行PRARE的分发。请务必注意:由于部分用户在下单认购后到当天16点之前,没有保持账户中有不低于认购金额的足够金额,因此被排除在有下单之外。[2021/5/11 21:47:27]

根据官方描述,从ibETH合约获取的totalETH函数获取的值是可以被用户操控的。以下是官方原文:

根据官方的描述,用户可通过ibETH合约的work函数操控totalETH函数返回的值,导致Rari整个价值计算公式崩溃。我们分别分析ibETH的work函数和totalETH函数:

totalETH函数:

work函数:

以上分别是ibETH合约中的totalETH函数和work函数的部分实现。不难发现totalETH函数其实就是获取合约的总的ETH的数量。而work函数,本身是一个payable函数,也就是说,用户是可以通过work函数来控制ibETH合约中的ETH数量从而来改变totalETH返回的值的。更糟糕的是,work函数同时还支持调用其他的任意合约。那么整个思路就很清晰了。

攻击流程

1、从dYdX中进行闪电贷,借出大量的ETH;

2、使用一部分的ETH充值到RariCapital合约中,此时从ibETH获取的比值还是正常的;

3、使用剩余的ETH充值到ibETH合约中,调用ibETH合约的work函数,为后续推高ibETH合约的totalETH的返回值做准备;

4、在work函数中同时对RariCapital合约发起提现,由于上一步已经推高totalETH值,但是计算的totalETH()/totalSupply()的值相对于充值时被拉高,从而使攻击者能从RariCapital中使用等量的REPT获取到更多的ETH。

总结

本次分析下来,主要的原因是协议的不兼容问题,攻击者通过闪电贷和重入的方式,攻击了RariCapital,造成了巨大的损失。慢雾安全团队建议在DeFi逐渐趋于复杂的情况下,各DeFi项目在进行协议间交互时,需要做好协议之间的兼容性,避免因协议兼容问题导致的损失。

RariCapital官方分析:

https://medium.com/rari-capital/5-8-2021-rari-ethereum-pool-post-mortem-60aab6a6f8f9

攻击交易(其中一笔):

https://etherscan.io/tx/0x171072422efb5cd461546bfe986017d9b5aa427ff1c07ebe8acc064b13a7b7be

By:慢雾安全团队

标签:ETHTALITAANCETHBACK币Pitquidity CapitalITAM CubeBeefy Finance

抹茶交易所热门资讯
GENIE:DFINITY?创始人Dominic Williams:互联网身份验证服务,可使用户安全地与多个设备交互_TOP

5月?8日,去中心化计算平台?DFINITY?联合36氪及Odaily星球日报共同举办「DFINITY互联网计算机主网上线发布会」.

OMI:狗狗币与加密货币的新价值_MechaChain

狗狗币的热潮反映出社交媒体和双重危机带来的巨大权力转移。在市场不景气的一周里,在主流媒体上让人震惊的不是周六凌晨比特币距峰值大幅下跌24%,而是狗狗币在本周前几天的壮观涨势.

CTO:Filecoin网络升级,缩短区块验证时间_TORONTO价格

2021年4月29日,Filecoin网络已升级至v12。本次升级引入了specs-actors实现的v4,这是具体规定了Filecoin协议规则的一组内置actors.

ANC:金色早报 | 加密货币市场总市值突破2.5万亿美元_ETH

头条 ▌加密货币市场总市值突破2.5万亿美元金色财经报道,数据显示,加密货币市场总市值已突破2.5万亿美元,再创历史新高,目前约为2.523万亿美元.

DEFI:区块链如何赋能“链”金融_COI

为满足实体经济融资需求,近年来国家出台了很多支持政策,商业银行也持续创新产品服务模式,积极开拓供应链金融发展模式,特别是针对小微企业融资需求,不断进行知识产权、股权、应收账款等担保方式创新.

DEFI:映射整个金融世界的加密货币衍生品 谁会成为比Uniswap更大的独角兽?_中心化交易所

过去一年来,走过了至暗时刻的加密货币,在各种DeFi创新试验中充分释放了流动性,成为整个金融世界里表现最亮眼的新兴领域.