By:慢雾安全团队
2021年5月8日,据链闻消息,以太坊收益聚合协议RariCapital因集成了AlphaFinance产生了漏洞,损失近1500万美元。事后,RariCapital官方发布了事故分析报告,分析了此次事故的主要原因。慢雾安全团队在官方分析的基础上,结合慢雾安全团队对此次事件的深入分析,进一步解读本次安全事故的原因。
攻击细节分析
本次攻击发生在RariCapital的RariManger合约中,整个过程下来就是攻击者首先通过闪电贷从dYdX中借出巨量资金,然后不停的重复调用RariManger合约中的deposit和withdraw函数,完成获利。如下图:
那么用户是如何通过deposit和withdraw这两个操作获利的呢?我们需要分析对应的函数:
以上是deposit函数的部分逻辑,首先deposit函数本身会调用内部的_depositTo函数,然后会再次调用getFundBalance函数来获取合约的余额。getFundBalance函数最终是会调用到RariController合约的getBalance函数去获取余额。最后是通过RariController合约中的AlphaPoolController库的getBalance函数获取余额。如下图:
LSD协议unshETH的合约部署私钥被泄露,已紧急暂停提款并联系黑客:6月1日消息,LSD协议unshETH发推表示,5月31日22:00左右,unshETH合约的其中一个部署私钥被泄露。出于谨慎起见,官方紧急暂停了unshETHETH的提款,根据我们的安全模型,unshETHETH存款(TVL达3500万美元)由多重签名+时间锁保护,并不处于风险之中。
此外一些附属协议合约(农场、跨链桥等)已经受到了攻击,正在与来自Coinbase、Stargate、Paladin Blockchain Security、Github以及ogle等白帽安全专家合作,以确保用户资金的安全,并预计影响范围将受到限制。同时官方已经联系黑客,试图协商返还资金和合约所有权,以限制对现有用户的影响。
金色财经此前报道,据多位KOL发推表示,LSDFi项目unshETH的金库出现安全问题,提醒用户将资金转出。原因系合约Owner被篡改,已通知项目官方,但官方尚未做出回复。[2023/6/1 11:51:47]
流程上略微复杂,用图来展示大概就是下面这样:
区块链游戏公司Aether Game完成450万美元股权融资:金色财经报道,区块链游戏公司Aether Game宣布完成450万美元代币及股权融资,Mystenlabs、Polygon、Magic Eden、Polkastarter、Cogitent、Ultra、GSR、EMURGO、Master Ventures 和 Eclipse等参投,该公司专注于将传统游戏与区块链技术相结合,新资金将用于旗下《Cards of Ethernity》、《Gates of Ethernity》等游戏的开发,其中《Cards of Ethernity》是一款在Sui和Polygon区块链上推出的多链游戏,《Gates of Ethernity》是一款将于2023年底推出的战略性自动战斗游戏。(digitaljournal)[2023/5/8 14:48:50]
从上面的分析不难发现,Rari合约最终是用到了AlphaFinance项目的ibETH合约的totalETH函数获取合约的余额,目的是为了根据totalETH和totalSupply的比值计算出Rari合约真正的ETH余额。deposit函数是根据用户的充值ETH的数量和比值计算要发放给用户的REPT数量,而withdraw函数的公式也大同小异,同样需要通过getBalance函数获取合约的ETH余额并计算比值,然后根据用户的REPT代币的余额和比值计算需要返还给用户的ETH的数量。但是问题恰恰出在这个获取ETH余额的公式上。
Coinbase正在调查恒星币延迟发送的问题:4月27日消息,市场消息称:Coinbase正在调查恒星币(Stellar)延迟发送的问题。[2023/4/27 14:31:29]
根据官方描述,从ibETH合约获取的totalETH函数获取的值是可以被用户操控的。以下是官方原文:
根据官方的描述,用户可通过ibETH合约的work函数操控totalETH函数返回的值,导致Rari整个价值计算公式崩溃。我们分别分析ibETH的work函数和totalETH函数:
totalETH函数:
work函数:
****
以上分别是ibETH合约中的totalETH函数和work函数的部分实现。不难发现totalETH函数其实就是获取合约的总的ETH的数量。而work函数,本身是一个payable函数,也就是说,用户是可以通过work函数来控制ibETH合约中的ETH数量从而来改变totalETH返回的值的。更糟糕的是,work函数同时还支持调用其他的任意合约。那么整个思路就很清晰了。
欧洲央行行长:欧洲央行很有可能在3月份会加息50个基点:金色财经报道,欧洲央行行长拉加德表示,欧洲央行很有可能在3月份会加息50个基点;核心通胀率过高,通胀必须回到2%;相信整体通胀率将在2023年下降;无法断言利率会升至多高;2023年经济衰退不在欧洲央行工作人员的预测中。[2023/3/5 12:43:16]
攻击流程
1、从dYdX中进行闪电贷,借出大量的ETH;
2、使用一部分的ETH充值到RariCapital合约中,此时从ibETH获取的比值还是正常的;
3、使用剩余的ETH充值到ibETH合约中,调用ibETH合约的work函数,为后续推高ibETH合约的totalETH的返回值做准备;
4、在work函数中同时对RariCapital合约发起提现,由于上一步已经推高totalETH值,但是计算的totalETH()/totalSupply()的值相对于充值时被拉高,从而使攻击者能从RariCapital中使用等量的REPT获取到更多的ETH。
CZ透露投资推特原因:希望净化Web3信息环境:金色财经报道,币安创始人赵长鹏(CZ)在CNBC Squawk Box节目中透露了投资推特的原因和动机。他认为,推特是个非常有潜力的信息平台,但是苦于网络虚假消息太多,比如垃圾邮件,这对Web3世界的信息生态会造成不良影响。同时,他还表达了对马斯克的赞许和认同,他认为在马斯克的掌舵下推特会更好。此外,CZ认为推特具有巨大的价值,但尚未被很好地货币化。
此前报道,CZ称想帮助马斯克将Twitter带入Web3。[2022/11/2 12:07:48]
总结
本次分析下来,主要的原因是协议的不兼容问题,攻击者通过闪电贷和重入的方式,攻击了RariCapital,造成了巨大的损失。慢雾安全团队建议在DeFi逐渐趋于复杂的情况下,各DeFi项目在进行协议间交互时,需要做好协议之间的兼容性,避免因协议兼容问题导致的损失。
****
RariCapital官方分析:
https://medium.com/rari-capital/5-8-2021-rari-ethereum-pool-post-mortem-60aab6a6f8f9
__
攻击交易(其中一笔):
https://etherscan.io/tx/0x171072422efb5cd461546bfe986017d9b5aa427ff1c07ebe8acc064b13a7b7be
往期回顾
慢雾AML升级上线,为资产追踪再增力量
慢雾创始人荣获厦门“双百计划”人才,获百万创新创业资金
狸猫换太子——DODO被黑分析
铸币疑云——PaidNetwork被盗细节分析
慢雾招募令:寻区块链安全弄潮儿
慢雾导航
慢雾科技官网
https://www.slowmist.com/
慢雾区官网
https://slowmist.io/
慢雾GitHub
https://github.com/slowmist
Telegram
https://t.me/slowmistteam
https://twitter.com/@slowmist_team
Medium
https://medium.com/@slowmist
币乎
https://bihu.com/people/586104
知识星球
https://t.zsxq.com/Q3zNvvF
火星号
http://t.cn/AiRkv4Gz
链闻号
https://www.chainnews.com/u/958260692213.htm
免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。
本文来源于非小号媒体平台:
慢雾科技
现已在非小号资讯平台发布68篇作品,
非小号开放平台欢迎币圈作者入驻
入驻指南:
/apply_guide/
本文网址:
/news/9950521.html
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场
上一篇:
Bitfinex一周简报
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。