风险提示:理性看待区块链,提高风险意识!
零时科技 || SumerMoney攻击事件分析
首页 > 业界 > 区块链 2024-04-16 16:30:35
币界网报道:

AZvLVBueS8dPHk3YIbziS3gpLnKyfry9IYBrqrSW.jpeg

背景介绍

我们监控到base链上的一起攻击事件,

https://basescan.org/tx/0x619c44af9fedb8f5feea2dcae1da94b6d7e5e0e7f4f4a99352b6c4f5e43 a4661

攻击者通过此次攻击共获利310570 USDC10 cbETH,共约合35万美金

被攻击项目为SumerMoney,SumerMoney是一个基于Compond修改的借贷协议,用户可以通过提供流动性来获利。SumerMoney共支持的underlying assets有ETH, USDC, USDbc, DAI, wstETH, cbETH, suUSD, suETH。其中,每一个underlying asset对应一个借贷池poll。用户可以通过和借贷池poll交互来完成对应的操作。

攻击及事件分析

首先,攻击者通过攻击合约1从Balancer中利用flashloan借了645000 USDC 150 ETH 。

图片

随后,攻击合约1创建了另一个攻击合约(攻击合约2),并将Balancer中借来的645000 USDC 转入新的攻击合约2中,并转入了1 wei 。

图片

接着,在攻击合约2的攻击函数中,攻击者将645000 USDC通过mint 兑换为643630 sdrUSDC 。

随后,攻击者再通过borrow从sdrETH pool中借出 150.358797170664290045 ETH 。并向sdrETH pool中转入150.358797170664290046 ETH执行repayBorrowBehalf进行还款。

repayBorrowBehalf的具体实现如下:

图片

我们可以看到,合约会将超出总借款的部分再转回给用户。由于,sdrETH pool收到了150.358797170664290046 ETH ,但是只借出了150.358797170664290045 ETH ,所以会将0.000000000000000001 ETH再转给攻击合约2。由于接到了ETH转账,攻击合约2触发了fallback函数,fallback函数中又调用了攻击合约1,再次进行borrow 和redeemUnderlying 。

图片

我们注意到,攻击者redeem 150 ETH只需要74.99998941541294 sdrETH(本应是 150 sdrETH )。

图片

接下来,我们看一下合约是如何计算sdrTokenunderlying token的兑换比例。

图片

由上面的公式,我们可以知道兑换的underlying token为对应的sdr token除以exchangRate 。由下面的公式同样可以知道exchangeRate的计算方式。

图片

其中totalCash是由以下函数计算

图片

那么,漏洞其实就比较明显了。mint 、 borrow 、 redeem 、 repay这些操作均应该是原子操作。但是,repayBorrowBehalf出现了一个重入漏洞,攻击者通过构造一个特殊的金额( borrowsAmount + 1 wei )。sdrETH 将多余的1 wei重新发送给攻击者合约,从而触发了攻击合约2的fallback函数,在fallback函数中(在ETH转入时,exchangeRate 已经增长了1倍,攻击者手中的sdrToken的价值增加了一倍),攻击者进行重入攻击,调用借贷函数,借出了其他资产。最后,还清SumerMoney和Balancer的借贷,攻击完成。

上一篇: 图览 | Web3游戏周报(4.07-4.13)
下一篇: Vitalik站台Railgun折射了Web3原教旨主义的局限与Web3未来的发展方向
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,159.24 USDT
¥429,362.51
-4.34%
ETH以太坊
2,982.70 USDT
¥21,287.82
-6.02%
BNB币安币
565.14 USDT
¥4,033.46
-4.46%
USDT泰达币
1.03 USDT
¥7.32
+0.39%
SOL
126.16 USDT
¥900.41
-6.61%
USDC
1.00 USDT
¥7.15
+0.04%
XRP瑞波币
0.49720 USDT
¥3.55
-3.57%
DOGE狗狗币
0.13320 USDT
¥0.95060
-6.06%
TON
5.03 USDT
¥35.92
-3.93%
ADA艾达币
0.43480 USDT
¥3.10
-4.1%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
60220.42 USDT
¥436,062.08
-4.35%
Filecoin
5.5315 USDT
¥40.05
-5.18%
狗狗币
0.1335 USDT
¥0.97
-5.99%
Solana
125.39 USDT
¥907.96
-6.77%
柚子
0.7608 USDT
¥5.51
-5.35%
以太经典
25.1852 USDT
¥182.37
-7.38%
字节元
0.016125 USDT
¥0.12
-9.17%
Conflux
0.208 USDT
¥1.51
-6.6%
以太坊
2986.16 USDT
¥21,623.08
-5.72%
Yield Guild Games
0.7559 USDT
¥5.47
-9.23%
Shiba Inu
2.23E-5 USDT
¥0.00
-6.14%
币安币
566.95 USDT
¥4,105.34
-3.91%
最新快讯
更多
美国缓刑办公室:建议判处CZ五个月监禁
2024-05-01 01:26:52
CZ案法官:DoJ的建议将量刑加倍会导致不公
2024-05-01 01:21:26
CZ案法官质疑美国司法部将量刑加倍会导致不公
2024-05-01 01:21:26
美国司法部律师:CZ和SBF不同,币安的确鼓励加强合规性
2024-05-01 01:15:29
DoJ律师:CZ故意试图利用美国金融体系
2024-05-01 01:12:00
司法部律师赞扬赵长鹏接受审判
2024-05-01 01:10:26
BONK人气下降、市场情绪低落,价格下跌7%
2024-05-01 01:10:15
下载币界网APP