MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

avatar
AgentLayer
1年前
本文约1015字,阅读全文需要约2分钟
稳定币协议Raft遭受闪电贷攻击,黑客攫取价值360万美元的1575枚$ETH最终烧毁殆尽。

摘要

2023 年 11 月 11 日上午 02: 59: 23 ,UTC+ 8: 00 ,MetaScout 探测到在 Ethereum 上的稳定币协议 Raft 遭受了一次闪电贷攻击。结果导致 6.7 百万枚稳定币$R 被铸造,协议损失了 360 万美元。根本原因是在铸造份额代币时发生的精度计算问题,黑客利用这一问题获取额外的份额代币。

MetaTrust Labs 对这次攻击进行了深入的研究和分析,揭示了黑客如何利用漏洞发起攻击。

稳定币协议 Raft

Raft是一个 DeFi 协议,通过存入流动性质押代币(LSDs)作为抵押,提供了一种资本高效的借贷方式,同时保留了质押奖励。

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

截至撰写本文时,其总锁定价值(TVL)在今天的攻击后下降了 46% ,为 700 万美元。$R 的价格下降了 99.6% ,为 0.0036 美元。

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

交易

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

攻击者

0xc1f2b71a502b551a65eee9c96318afdd5fd439fa

攻击合约

0x0a3340129816a86b62b7eafd61427f743c315ef8

受攻击的合约

InterestRatePositionManager: 0x9ab6b21cdf116f611110b048987e58894786c244

攻击步骤

1. 通过闪电贷从 AAVE 借入 6000 枚$cbETH;

2. 将总计 6001 枚$cbETH 转移到 InterestRatePositionManager 合约;

3. 清算 InterestRatePositionManager 合约上预先创建的仓位0x011992114806e2c3770df73fa0d19884215db85f;

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

4. 将 raft 抵押代币的索引设置为 6, 003, 441, 032, 036, 096, 684, 181 ,即 InterestRatePositionManager 合约的$cbETH 余额,并由于步骤 2 的捐款而放大了上 1000 倍;

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

5. 通过使用 divUp 函数计算份额时,通过仅 1 wei 的$cbETH 就铸造 1 wei 份额。注意,当分子非零时,无论分母有多大,divUp 函数的最小返回值都为 1:

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

6. 重复第 5 步 60 次,以获得 60 wei 份额,即 10, 050 $cbETH;

7. 通过只有 90 wei $rcbETH-c 兑换 6003 $cbETH;

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

8. 借入 6.7 百万$R,即利润,并最终在不同的 Dapps 中交换为价值 360 万美元的 1575 枚$ETH,其中包括:

  • 在 Balancer 上将 210 万$R 兑换为 200 万$sDAI

  • 在 Balancer 上将 120 万$R 兑换为 115 万$DAI

  • 在 Uniswap 上将 20 万$R 兑换为 8.6 万$USDC

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

9. 令人大跌眼镜的是,黑客将 1570 枚$ETH 烧给了黑洞地址,这意味着黑客一分利润都没拿到。

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

根本原因

根本原因是在铸造份额代币时发生的精度计算问题,黑客利用这一问题获取额外的份额代币。由于$cbETH 的捐款放大了 index,导致黑客的份额价值更高,因此黑客仅仅用了一点$rcbETH-c 就兑换了 6003 枚$cbETH 并借入大量$R。

关键代码

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

资产损失

360 万美元。

资金流向

1570 $ETH 由于黑客的误操作而被烧掉。

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

截至目前撰写本文时,攻击者的钱包中有 140 万$R 代币(价值 4.6 千美元)。

MetaTrust:Raft遭攻击损失360万,黑客骚操作几乎全部送进黑洞

安全建议

  1. 考虑在利率计算的情况下检查潜在的四舍五入问题,如在边缘情况下是否可以被恶意用户操纵,正如 Raft 攻击案例情形。

  2. 建议在发生紧急情况时采取监控系统并暂停协议的措施。或者,整合一个内存池阻塞系统将是有益的。这个系统可以在攻击者执行攻击时有效地检测内存池中的攻击交易,以进行预防性阻塞,避免损失。

关于 MetaTrust Labs

MetaTrust Labs 是新加坡南洋理工大学孵化的领先Web3人工智能安全工具和代码审计服务提供商。我们提供先进的 AI 解决方案,赋予开发者和项目相关者保护Web3应用程序和智能合约的能力。我们的综合服务包括 AI 安全扫描、代码审计、智能合约监控和交易监控。通过整合 AI,我们确保构建一个安全的生态系统,增强用户和开发者之间的信任。

Website: https://metatrust.io/

Twitter: https://twitter.com/MetatrustLabs

原创文章,作者:AgentLayer。转载/内容合作/寻求报道请联系 report@odaily.email;违规转载法律必究。

ODAILY提醒,请广大读者树立正确的货币观念和投资理念,理性看待区块链,切实提高风险意识;对发现的违法犯罪线索,可积极向有关部门举报反映。

推荐阅读
星球精选