Ronin Network白帽黑客攻击事件分析

本文Hash (SHA1):5bfab3ccec823b6f0eecf4e691f2acf6d3392481

编号: 链源 Security AnalysisNo.005

背景

2024年8月6日,Ronin Network 桥遭遇重大攻击,损失了 3996 枚以太坊(ETH)和 200 万美元稳定币(USDC),总计约 1200 万美元,并在桥发现第一个链上操作后约 40 分钟暂停。

事件经过

2024年8月6日,Ronin 网络桥接系统遭遇了价值约1200万美元的漏洞攻击,攻击者通过MEV机器人提取了3996个ETH和200万美元的USDC。事件发生后,Ronin 团队迅速暂停桥接功能,并与报告漏洞的白帽黑客合作。问题的根源在于一次桥接升级导致的投票门槛误解。Ronin 团队保证所有用户资金安全,并计划对新的桥接更新进行严格审计。并表示下周将分享一份事后分析报告,其中将介绍技术细节和我们计划采取的措施,以防止将来再次发生类似事件。

攻击原因

Ronin 网络桥接系统在升级时发生了严重漏洞。开发团队在升级时跳过了一个关键步骤,直接调用了 initializeV4 函数,而没有先调用 initializeV3 函数。initializeV3 函数负责初始化一个关键变量 _totalOperatorWeight,但因为这个步骤被跳过,导致 _totalOperatorWeight 没有被正确设置,默认值为 0。这意味着系统无法正确检查提取资金所需的签名验证(minimumVoteWeight 也被错误地设为 0)。攻击者利用这个漏洞,MEV bots在无需签名验证的情况下,成功提取了200万美元的USDC和4000个以太坊 (ETH),总计约1200万美元。

合约代码分析

1漏洞发现:

  • 代码审查:攻击者通过对升级后的合约代码进行审查,发现了潜在的漏洞。

  • 函数调用分析:注意到在这次升级中,仅调用了 initializeV4 函数,而未调用 initializeV3 函数。

Ronin Network白帽黑客攻击事件分析

Ronin Network白帽黑客攻击事件分析

2.漏洞分析:

  • 关键变量初始化:initializeV3 函数负责初始化一个关键变量 _totalOperatorWeight。

  • 默认值:由于 initializeV3 被跳过,导致 _totalOperatorWeight 未被初始化,默认为 0。

Ronin Network白帽黑客攻击事件分析

3.系统行为分析:

  • 签名验证机制:桥接系统依赖 _totalOperatorWeight 变量来计算 minimumVoteWeight,即提取资金所需的最低签名验证权重。

  • 验证绕过:因为 _totalOperatorWeight 的值为 0,minimumVoteWeight 也被错误地设定为 0,导致系统跳过了所有签名验证,资金无需经过任何多重签名阈值检查即可提取。

Ronin Network白帽黑客攻击事件分析

4.攻击实施:

  • 提取请求:攻击者利用这一漏洞,通过编写并发送特制的提取请求,直接向桥接系统请求资金提取。

  • 无验证提取:由于 minimumVoteWeight 为 0,系统不再进行签名验证,攻击者得以成功提取200万美元的USDC和4000个以太坊 (ETH)。

Ronin Network白帽黑客攻击事件分析

Ronin Network白帽黑客攻击事件分析

链上信息

● MEV Bot地址:

0x6980a47bee930a4584b09ee79ebe46484fbdbdd0

0x4ab12e7ce31857ee022f273e8580f73335a73c0b

● 黑客交易记录

0x2619570088683e6cc3a38d93c3d98899e5783864e15525d5f5810c11189ba6cb

0xbce5b8548db486c561948e8a177c8ccaa72810f972cee3909ea50af015a60ad8

● 黑客归还记录

0xf8f097982bc0f9a8f4279d4132dc91cfe17ab2d4fc70e7f740bc3ed752165601

0x21df45bd48f17cb97f1f2b7f12e298da6ecb418ceedb69c345c934ecaca48d9c

链上追踪

4000ETH转移记录:

通过MEV Bot获利的ETH从MEV Bot合约0x4ab12e7ce31857ee022f273e8580f73335a73c0b转移到黑客地址0xc6aec68dd6272efcbc74fb5308fe7f070437465e,最后从黑客地址转移到Ronin合约地址0x137f31b23f9991df465a1d16eccbcaa11ab9f488

Ronin Network白帽黑客攻击事件分析

2 M USDC转移记录:

通过MEV Bot获利USDC兑换的ETH从MEV Bot合约0x6980a47bee930a4584b09ee79ebe46484fbdbdd0转移到黑客地址0x796f09c9667a49bdb2bac2c8f1c2ee3c7576a93f,最后从黑客地址转移到Ronin合约地址0x137f31b23f9991df465a1d16eccbcaa11ab9f488

Ronin Network白帽黑客攻击事件分析

结语

Ronin 网络桥接漏洞事件强调了在系统升级和开发过程中,严格遵循初始化步骤和全面审计的重要性。跳过关键步骤可能导致严重安全漏洞,并被攻击者利用。此事件还凸显了定期安全检查和快速响应机制的必要性,帮助及时发现和修复问题,减轻潜在损失。

链源科技是一家专注于区块链安全的公司。我们的核心工作包括区块链安全研究、链上数据分析,以及资产和合约漏洞救援,已成功为个人和机构追回多起被盗数字资产。同时,我们致力于为行业机构提供项目安全分析报告、链上溯源和技术咨询/支撑服务。

感谢各位的阅读,我们会持续专注和分享区块链安全内容。