月亮链 月亮链
Ctrl+D收藏月亮链
首页 > Filecoin > 正文

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

作者:

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

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

攻击细节分析

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

Ledger即将推出Ledger Connect测试版,将与LooksRare和Blocknative合作进行:6月23日消息,硬件钱包Ledger宣布即将推出Ledger Connect测试版,首先支持iOS上的Safari和Nano X。Ledger Connect是一个浏览器扩展,允许用户轻松连接Web3应用程序,而无需依赖第三方。

此外该版本还引入了一个功能,让Ledger Connect模拟用户交易并预测对其钱包的影响。本次推出测试版将与LooksRare和Blocknative合作进行。[2022/6/23 1:26:22]

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

LooksRare:OpenSea在Moonbirds交易中通过高收费获利150万美元:金色财经报道,4 月 17 日,NFT市场LooksRare在其社交媒体账户上指责OpenSea在“像素猫头鹰” NFT项目Moonbirds交易中收费过高。此前Moonbirds公开铸造的7875枚NFT中已全部售罄,并在过去24小时内创造了超过1.1亿美元的交易额。LooksRare指出,Moonbirds交易量已经达到2万枚ETH,这意味着OpenSea获得了高达150万美元的费用收入,如果相同的交易量发生在LooksRare上,不仅可以帮助卖家节省30万美元,而且卖家和买家还能赚取价值70万美元的LOOKS Token。[2022/4/17 14:29:53]

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

NFT市场LooksRare网站遭受DDoS攻击,已恢复正常:2月6日消息,NFT市场LooksRare发推称,LooksRare网站今日第三次遭受DDoS攻击,目前正在努力使该网站尽快恢复正常。经查询发现,LooksRare网站目前可以正常访问。[2022/2/6 9:34:25]

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

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

BiKi平台RARE连续5日上涨 累计涨幅628.02%:据BiKi行情数据显示,截止今日20:35( GMT+8),平台内币种RARE连续5日上涨,累计涨幅628.02%,现价5.11USDT。行情波动较大,请注意风险控制。[2021/2/16 17:22:22]

根据官方描述,从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:慢雾安全团队

标签:ETHTALARIRARIYEARN ETHEREUM YIELDTale Of ChainPolarisRarible

Filecoin热门资讯
Coinw:池瓜群众第11期!买MIX拿1%净买入返利_VoteCoin

亲爱的CoinW用户:CoinW将于9月30日12:00开启第11期池瓜群众活动,本期活动币种为MIX。活动期间在CoinW平台购买MIX即可获得净买额1%的MIX返利.

1900/1/1 0:00:00
NFT:从CeFi角度解析 为什么NFT能解决DeFi超额抵押困局_DeFinition

加密评级机构韦氏评级曾发推称,“所有DeFi贷款仍然是超额抵押,这意味着你需要抵押的资产比借入的更多。对于大多数用户来说,这是一个交易杀手,也是我们没有看到太多DeFi用例的原因之一.

1900/1/1 0:00:00
BIT:Bitcoinwin投研:日内行情偏震荡_bittrustsystem

据Bitcoinwin交易所平台行情显示:BTC在过去24h内表现持续震荡下跌。行情昨日到达58400附近后承压回落,多头欲上攻,但受阻58000--59000的强压带,随机行情出现回落,这也是.

1900/1/1 0:00:00
COI:关于CoinBene完成KPC主网更换的公告_GeoCoin

尊敬的用户:应KPC项目方需求,CoinBene已完成KPC主网更换对接,并已于2月9号暂停KPC充提、平台内转账功能.

1900/1/1 0:00:00
STR:老崔说币:比特币承压回调,下方深度54000?_CROS

大家好,我是你们的朋友老崔说币lcsb18888,老崔说币公众号同步专注数字货币行情分析,争取为广大币友传递最有价值的币市信息,欢迎广大币友的关注与点赞.

1900/1/1 0:00:00
BTC:5.10 以太坊早间简评_莱特币

行情观点:小时盘面来看,昨日午间以太续刷新高后,遇压3982一线回调,震荡下行回吐涨幅,晚间跌至3722一线,触底反弹走出四连阳,插针向上试探触压3970一线回调延续震荡下行,触底反弹走震荡.

1900/1/1 0:00:00