威胁建模如何能够避免 Bybit 15亿美元的黑客攻击

Bybit交易所遭受了15亿美元的重大黑客攻击,这并非由于智能合约或代码错误,而是由于操作安全失败。文章探讨了如何通过威胁建模来识别和缓解这类安全漏洞。强调了威胁建模在识别系统性弱点中的作用,并提出了改进安全控制的具体建议,如端点安全、交易验证流程、钱包配置和操作隔离。

2025年2月21日,加密货币交易所 Bybit 遭受了毁灭性的 15 亿美元的攻击,这是加密货币历史上最大的一次。 这并非由于智能合约缺陷或编码错误,而是由于复杂的运营安全故障,导致攻击者可以入侵签名者的设备并操纵交易数据。

在过去的一年中,我们观察到了令人不安的模式,WazirX(2.3 亿美元)Radiant Capital(5000 万美元) 也发生了类似的违规行为。 在每种情况下,攻击者都以人和运营要素为目标,而不是利用代码漏洞。

随着攻击者从技术漏洞转向运营安全漏洞,威胁建模变得至关重要。 传统的代码审计可以发现代码中的实现问题,但只有全面的威胁建模才能揭示系统性的运营和设计缺陷,而这些缺陷导致了最近的这些违规行为。

在 Trail of Bits,多年来我们为区块链组织进行了大量的威胁建模,尽管大多数评估仍然是保密的,因为客户通常拒绝发布它们。 这在行业内造成了信息缺口,即威胁模型在预防像 Bybit 经历的那样毁灭性攻击方面的有效性。

在我们在 先前对 Bybit 黑客攻击的分析 的基础上,我们讨论了运营安全失败的时代已经到来,现在我们将探讨具体的威胁建模技术,这些技术本可以在这些漏洞被利用之前识别出来。

了解区块链安全中的威胁建模

威胁建模是一种结构化的方法,用于识别系统架构、数据流、运营程序和人为因素中的安全风险。 与查找实现错误的的代码审查审计不同,威胁模型揭示了系统性和运营上的弱点——这正是导致 Bybit 黑客事件的那种弱点。

以下是我们的方法分解方式:

  1. 建立一套安全控制。 我们基于 NIST SP 800-53 建立一套安全控制,并使用这些控制来指导参与。
  2. 组件识别:我们识别所有在范围内的系统组件,从钱包基础设施到 API 服务、用户界面、内部管理工具和第三方集成。
  3. 参与者分析:我们识别与系统交互的所有参与者,包括合法用户、管理员和潜在的攻击者。 这有助于我们了解谁可以访问什么以及他们拥有什么权限。
  4. 信任区域映射:我们根据共享目的、所有权或潜在的损害程度将组件分组到“信任区域”中。 信任区域以信任边界为界,信任边界通常出现在需要身份验证和授权才能获得系统中更高权限的地方。
  5. 数据流分析:我们映射数据如何在组件之间以及跨信任边界移动,识别敏感信息可能暴露或被操纵的位置,以及哪些威胁参与者可以这样做。
  6. 威胁场景开发:对于每个信任边界交叉,我们分析潜在的攻击媒介,并开发实际的威胁场景,展示如何利用设计漏洞。

通过威胁建模视角看 Bybit 黑客事件

Bybit 黑客事件就是一个复杂的运营安全漏洞的例子,我们认为可以通过全面的威胁建模来识别和缓解,并将威胁建模紧密集成到交易所的软件开发生命周期中。 让我们通过这个视角来检查发生了什么。

攻击机制和失败的控制

攻击者入侵了 Safe 签名前端,所有 Bybit 多重签名者都使用它。 当这些人认为他们正在授权例行交易时,他们实际上是在签署交易,这些交易更改了其 Safe 多重签名钱包的实现地址,并将其替换为恶意的实现,从而授予攻击者控制权,完全绕过了多重签名的安全意图。

攻击者利用了合约的 EVM delegatecall 函数,并部署恶意软件来操纵签名界面。 由于两个关键问题,签名者看不到他们正在签名什么:修改钱包界面的恶意软件以及硬件钱包上的盲签名的限制,这些硬件钱包不显示用户正在签名的内容的完整语义信息。

在软件开发生命周期 (SDLC) 的设计阶段执行威胁模型可能已经告知 Bybit,他们的系统包含以下需要缓解的控制失败:

1. 终端安全控制

  • 描述: 冷钱包的签名者可能使用通用工作站1进行敏感交易签名操作,从而创建了广泛的设备入侵攻击面。
  • 已识别的风险: 签名者设备遭到入侵可能导致交易被操纵
  • 建议: 实施具有有限连接的专用签名工作站,如果设备必须在线,则添加增强的监控。 此外,可以将智能合约添加到系统中,以对资金的移动进行时间锁定,以便有时间进行事件响应,或者完全限制资金的发送位置。

2. 交易验证过程

  • 描述: 冷钱包签名者可能依赖于单个验证界面,而没有辅助确认机制1,导致签名者无法检测到被操纵的交易细节。
  • 已识别的风险: 盲签名可以隐藏交易细节
  • 建议: 使用交易验证脚本(例如 @pcaversaccio 维护的脚本)实施辅助验证。 这应该在单独的安全工作站上执行,以减少受损签名者工作站的影响,并且签名者应逐字节地彻底比较验证脚本和硬件钱包显示的交易哈希。

3. Safe 钱包配置

  • 描述: 多重签名钱包配置为允许 delegatecall 操作,这使攻击者可以更改该钱包的具体实现。
  • 已识别的风险: delegatecall 操作可以更改离线或部分离线签名者工作站签名的交易的语义。 虽然 delegatecall 操作本身不是漏洞,但它们在此系统中的使用会产生设计缺陷。
  • 建议: 完全禁用 delegatecall 功能,或者,设计链上组件,使签名仅对 delegatecall 调用进入的特定实现有效。

4. 运营隔离

  • 描述: Bybit 可能缺乏公司基础设施和关键签名基础设施之间的适当分离1,这可能会导致公司网络入侵影响签名操作。
  • 已识别的风险: 公司基础设施入侵影响签名基础设施
  • 建议: 实施具有物理和逻辑上分离的基础设施的 air-gapped 签名程序。

将威胁建模引入你的组织

随着整个区块链行业运营安全故障的增加,实施稳健的威胁建模程序不再是可选项,而是必不可少的。 较小的组织应从 Rekt 测试开始,这是我们用于评估基本安全控制的简单框架。 Rekt 测试是进行更深入的威胁建模之旅的理想起点。

较大的组织需要更多的考虑。 在进行具体的威胁建模工作之前,他们应该专注于以下基本步骤:

步骤 1:设置正确的范围和节奏

有效的威胁建模始于清楚地识别哪些资产和操作在受到攻击者入侵时会对系统产生最大的影响。 优先考虑最关键的项目,例如钱包基础设施、交易签名和其他特权访问系统。

同样重要的是,将威胁建模视为一个持续的过程,而不是一次性的练习。 基础设施会随着时间的推移而变化,威胁模型也必须随之变化。 每季度或半年定期更新模型,并在进行重大的架构更改、新功能发布或操作更改后进行更新。

步骤 2:与现有流程集成

只有当威胁建模与你现有的开发生命周期和运营工作流程相结合时,才能产生价值。 这些工作流程的所有者是关键的利益相关者,你需要他们的支持才能成功地将威胁建模集成到你的组织中。

以下是一些建议的接触点,威胁建模可以在这些接触点中发挥作用:

  • 嵌入到软件开发生命周期 (SDLC) 中: 在设计过程的早期就集成威胁建模,而不是等到设计完成后再启动威胁模型。 这降低了修复不安全设计的成本,并使你的团队更好地了解在设计系统时需要防御的各种威胁。 拟议的设计变更应附有一份说明,说明其采用将如何影响系统的威胁模型和攻击面。
  • 连接到风险管理: 确保你的威胁模型结果反馈到你组织的安全路线图和风险登记表中。 如果你的威胁模型未用于通知未来的风险管理决策,那么它将不会提供价值。
  • 与事件响应保持一致: 根据你威胁模型中的场景来制定你的桌面演练和事件响应计划。 使这些流程与威胁建模的预期保持一致,可以减少你的事件响应团队遇到的意外情况的数量。
  • 补充现有的安全测试和审计: 使用你的威胁模型来指导内部和外部渗透测试、代码审查、审计和其他安全评估的范围和重点。 当威胁参与者及其能力被充分理解时,这些安全控制会更加有效。

步骤 3:优先考虑你的安全投资

每个组织都拥有有限的资源。 使用威胁模型来指导你的安全投资决策,将资源导向你最薄弱的防御和最重要的安全问题:

  • 基于风险的方法:根据影响潜力和利用可能性,优先处理威胁。
  • 纵深防御策略:在预防、检测和响应能力方面进行投资,而不是仅仅关注预防性控制。
  • 衡量控制有效性:定期评估已实施的控制是否能够实现预期的风险降低。

Trail of Bits 如何提供帮助

Trail of Bits 提供针对区块链组织量身定制的全面威胁建模服务。 我们的方法可以与你现有的安全计划无缝集成:

  • 基于组件的方法: 我们识别所有相关的系统组件、信任边界、数据流和范围内的威胁参与者,以构建你威胁态势的整体视图。
  • 场景开发:我们根据我们在加密货币漏洞方面的丰富经验,开发出真实的攻击场景。
  • 成熟度评估: 我们根据行业最佳实践评估你的安全控制,并提供明确的改进路线图。
  • 知识转移:我们在整个过程中与你的团队进行协作,确保你获得在将来维护和更新你的威胁模型的技能。

我们的威胁建模专家已帮助许多加密货币交易所、协议和区块链平台识别和解决关键的安全漏洞,然后才能利用它们。 通过与 Trail of Bits 合作,你不仅可以获得威胁模型,还可以获得在与日益复杂的攻击者进行的持续军备竞赛中的战略优势。

威胁建模作为战略防御

Bybit 黑客事件表明,区块链领域的安全性需要的不仅仅是安全的代码,还需要考虑人为因素、运营程序和技术控制的系统方法。

虽然威胁建模是一种强大的技术,但重要的是要认识到它只是全面安全计划的一个组成部分。 为了使威胁建模真正有效,它必须与其他安全学科(包括风险管理、安全开发实践、事件响应计划和日常运营流程)无缝集成。 这种整体方法创建了多层防御,可以抵御我们最近看到的那些复杂的攻击。

问题不再是你的组织是否负担得起投资威胁建模,而是你是否负担得起不投资威胁建模。


  1. 请注意,这些示例基于我们对事件的外部了解以及基于可用事实的推断。 关于 Bybit 的安全实践或事件中实际发生的情况,某些示例发现可能不准确。↩︎ ↩︎ ↩︎
  • 原文链接: blog.trailofbits.com/202...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Trail of Bits
Trail of Bits
https://www.trailofbits.com/