By:小白@慢雾安全团队
2022 年 3 月 21 日,据慢雾区消息,OneRing Finance 存在严重漏洞遭到攻击,黑客获利约 1,454,672.244369 USDC(约 146 万美元),慢雾安全团队第一时间介入分析,并将结果分享如下:
相关信息
OneRing Finance 是一个去中心化应用程序(DApp),它支持加密货币的质押挖矿。用户可以存入代币来获取收益。
以下是本次攻击涉及的相关地址:
攻击者地址:
0x12efed3512ea7b76f79bcde4a387216c7bce905e
攻击交易:https://ftmscan.com/tx/0xca8dd33850e29cf138c8382e17a19e77d7331b57c7a8451648788bbb26a70145
攻击合约:
0x6a6d593ed7458b8213fa71f1adc4a9e5fd0b5a58
OneKey Card官网遭DDOS攻击,暂时无法访问:6月15日消息,硬件钱包OneKey发推称,OneKey Card官网遭DDOS攻击,网站暂时无法访问,团队正在进行修复,网站恢复后将第一时间发布通知。[2023/6/15 21:40:19]
被攻击合约:
OneRingVault:0xc06826f52f29b34c5d8b2c61abf844cebcf78abf
攻击核心点
OneRing 直接使用了 Pair 中的 reserves 参与 OShare 的价格计算,攻击者利用 OneRingVault 正常的业务逻辑进行巨额的 Swap 操作产生的大滑点,使得 Pair 中的 reserves 非预期的增加,从而拉高了 OShare 的价格,导致相同数量的 OShare 可以取出更多的资金。
具体细节分析
1. 攻击者构造了攻击合约,利用闪电贷从 Solidity 借出 80000000 个 USDC 到攻击合约中
一Smart Money在休眠一年多后购买了6种MEME币:金色财经报道,据Lookonchain监测,一位在SHIB上赚了约750万美元的Smart Money在休眠一年多后,购买了6种MEME币。包括PEPE、WOJAK、AFY、Dione、DMTR、VAI。他也非常幸运地从 Flokitars Deployer 获得了 1.79 亿枚 FLOKI(9,378 美元)。此外,该Smart Money用10枚ETH(价值约18,742美元)买入586.6亿枚PEPE,以16.55枚ETH(价值约31,569)卖出。然后以17.3 枚ETH(价值约33,005)买入470亿枚PEPE,目前价值13.5万美元。[2023/5/6 14:46:13]
2. 接着通过 swap 函数将 1 个 USDC 兑换成 miMatic 代币,这里可以看到当前代币兑换率是 1:1.001109876698508218
Rocket Pool将进行Redstone升级,主要在优先费分配器和奖励系统方面升级:7月1日消息,以太坊质押协议Rocket Pool宣布随着以太坊合并和向PoS共识的转变,将对Rocket Pool协议在优先费(Priority Fee)分配器和奖励系统方面等进行重大升级,其中,优先费分配器将确保优先费在节点运营商和rETH(Rocket Pool 的以太坊流动性质押代币)流动质押用户之间分摊;新的奖励系统方面,节点运营商获得RPL奖励的方式现在更加灵活和高效;另外,Redstone移除了存入ETH并收到rETH后的24小时锁定期,取而代之的是,将用户rETH换成ETH时,会从总交易量中减去一天的奖励,以防止三明治攻击攻击。[2022/7/1 1:44:12]
3. 调用 depositSafe 函数将 79,999,997($80,079,997.00)个 USDC 充值进合约
基于 Terra 的固定利息产品 Saturn Money 启动:基于 Terra 的固定利息产品 Saturn Money 启动,根据官方描述,这是一款简单易用的消费级应用,用户可通过刷脸直接登入,从银行账户中取出英镑和欧元存入到 Saturn Money 中,获得高于银行存款利率的年化收益。[2021/2/21 17:36:16]
这里 depositSafe 函数会内部调用 _deposit 函数,_deposit 函数会调用 _doHardWorkAll 函数,在该函数中会使用 for 循环将部分存入的 USDC 全部兑换成其他的代币
日本加密货币交易所bitbank在iphone版APP增加控件功能:据BITDAY报道,日本加密货币交易所bitbank于5月9日在iphone版APP增加控件功能,可在控件栏中确认加密货币价格。据悉,只有将APP版本更新为1.0.4才能使用此功能。[2018/5/10]
然后 depositSafe 将约 41,965,509.691846094312718922 个 OShare 代币 mint 给攻击者。此时我们可以看到 OShare 的价格是 1062758591235248117 这个值
从下面这张图中可以看出在 swap 后攻击者使用两个 USDC 再次兑换 miMATIC 代币时此时的兑换率已经产生巨大变化:
4. 然后调用 withdraw 函数。我们可以看到 withdraw 函数也调用了getSharePrice 函数进行 OShare 的价格计算
我们来看 getSharePrice 函数:
这里调用了 balanceWithInvested 函数,继续跟进发现调用了 investedBalanceInUSD 函数:
这里可以看到最终影响价格的是 getUSDBalanceFromUnderlyingBalance 函数
在 getUSDBalanceFromUnderlyingBalance 函数中我们可以看到,该函数使用合约中两个代币的数量? _reserves0 和 _reserves1 这两个值进行计算,由于之前的 swap 导致大量的 USDC 留在池子中,所以导致池子中的 USDC 数量变大,从而使 _amount 变大,这就导致了 getSharePrice 函数获取到的当前 OShare 的价格变大了
由下图我们可以看到当前的 OShare 的价格为 1136563707735425848 这个值:
从下面的 withdraw 函数中可以看出最终的提现数量是通过 _withdraw 进行计算得出的
跟进去后发现 _toWithdraw 也是由 balanceWithInvested 计算得出的,这也就导致这个值变大
然后会在这一步将攻击者持有的 41965509 个 OShare 兑换为 81534750101089 个 USDC
5. 攻击者归还闪电贷后获利离场
MistTrack
据慢雾 MistTrack 分析,攻击者将获利的部分 USDC 换成 FTM、ETH,最后将 USDC、ETH 跨链到以太坊。同时,以太坊上黑客地址初始资金来自于 Tornado.Cash 转入的 0.1 ETH,接着黑客将 521 ETH 转入 Tornado.Cash。
截止目前,黑客以太坊地址仍有近 4.5 万美元,包括 14.86 ETH 和 100.29 USDC。慢雾 MistTrack 将持续监控黑客地址。
总结
本次攻击是由于在 MasterChefBaseStrategy 合约中的 getUSDBalanceFromUnderlyingBalance 函数实时储备量进行计算导致攻击者可以利用闪电贷制造巨大差值从而获利。慢雾安全团队建议在进行 share 的价格计算时不要使用实时储备量进行计算,避免再次出现此类事故。
当前创作NFT艺术品一般有两种方法,一种是直接在线创造并形成NFT艺术品,另一种是将线下实物艺术品铸造成为NFT艺术品.
1900/1/1 0:00:00前期已提示,日线级别这种持续的背离,不化解的话后面随时引发大调整,前面已有多次这样的例子,最近的就是触顶65000美金后面腰斩至3万美金的瀑布,加上0.618一带日线站上一天便跌回,实为假突破.
1900/1/1 0:00:00我国首部《密码法》将于2020年1月1日起正式施行。12月30日,广东省《密码法》宣讲大会在广州召开,会议强调全面贯彻实施《密码法》,让密码为广东“数字政府”保驾护航.
1900/1/1 0:00:00金色财经消息 2019年8月9日,国家互联网信息办公室官方网站发布了关于《区块链信息服务管理规定》涉安全评估条款说明的公告.
1900/1/1 0:00:00由福建复寅医疗公司捐赠的消机器人在福州肺科医院投入使用。台海网2月7日讯 据福建日报APP-新福建报道 6日,一款消机器人在福州肺科医院投用.
1900/1/1 0:00:002019年小牛行情结束,BTC在14000美金附近见顶回落,跌破120日均线迎来瀑布,后面区间整理后迎来大反弹,最高插针至120日均线并未站稳,反弹后继续向下再创新低.
1900/1/1 0:00:00