什么是重放攻击?

重放攻击,也称为“回放攻击”,是一种网络攻击形式,恶意实体拦截并重复有效数据在网络中的传输。由于原始数据(通常来自授权用户)的合法性,网络的安全协议将此攻击视为正常数据传输进行处理。由于原始文件被逐字拦截并重新传输,执行攻击的黑客不需要解密它们。

黑客如何利用重放攻击?

重放攻击可以通过转发看似合法的信息来获取存储在受保护网络上的信息。这种方法也可以用来欺骗金融机构,通过复制交易,让黑客直接从受害者的账户中提取资金。在某些情况下,黑客可能会将不同加密消息的部分组合在一起,并将结果代码转发到网络中,这种技术被称为“剪切和粘贴”攻击。网络对这种攻击的响应通常有助于黑客收集用于未来系统利用的有价值信息。

尽管明显存在风险,简单的重放攻击有一定的局限性。攻击者无法在不冒着网络拒绝风险的情况下修改被转发的数据,从而将攻击的有效性限制在重复过去的行为。此外,这种攻击形式相对容易防御。一个简单的保护系统,通过在数据传输中添加时间戳,可以防止基本的重放攻击。服务器还可以缓存重复的消息,并在达到一定重复次数后将其丢弃,以限制黑客通过重复消息进行的尝试次数。

为什么重放攻击对加密货币世界有害?

尽管可能需要相当长的时间才能变得可行,但这种攻击形式特别适合加密货币交易环境和区块链账本。这是因为区块链账本通常会经历称为硬分叉的协议变更或升级。当发生硬分叉时,当前的账本会分为两部分,一侧继续使用原始软件版本操作,另一侧则遵循新更新的版本。一些硬分叉仅旨在升级账本,而另一些则分裂成独立品牌并创建一种新币。一个著名的硬分叉例子是2017年8月1日将比特币现金从主比特币账本中分离出来的升级。

当这些硬分叉发生时,黑客理论上可以执行针对区块链账本的重放攻击。在硬分叉之前,某人使用有效钱包在一个账本上处理的交易在另一个账本上也将有效。因此,某人在一个账本上从另一个人那里接收特定加密货币单位后,可以切换到另一个账本,模拟该交易,并欺诈性地再次将相同单位转入他们的账户。而且,由于他们的钱包不在账本的共享交易历史中,硬分叉发生后加入区块链的用户将不会面临这种攻击的风险。

区块链如何防范这种类型的攻击?

虽然账本的分裂为黑客执行重放攻击创造了漏洞,但大多数硬分叉都纳入了特别设计的安全协议以防止这一点。有效的重放攻击防护工具分为两类:'强重放保护'和'自选重放保护'。在'强重放保护'中,给从分裂(硬分叉)创建的新账本添加一个'标记',以确保在其上进行的交易在原始账本上无效,反之亦然。这个方法在比特币现金从比特币的分裂中使用过。

一旦实施,‘强重放保护’将在分叉发生时自动生效。然而,‘选择性重放保护’则要求用户手动对其交易进行更改,以确保交易不会被重复。‘选择性重放保护’在硬分叉仅旨在升级某种加密货币的主账本而不是创建分叉的情况下特别有用。

除了应用于大型账本的解决方案,个人用户也可以采取措施保护自己。一种方法是将他们的币锁定在交易中,直到账本达到一定数量的区块,从而防止任何可以被网络验证的重放攻击。值得注意的是,并非所有钱包或账本都有此功能。

结论

重放攻击如果成功执行,对系统安全构成真正威胁。与其他形式的攻击不同,重放攻击不依赖于解密数据,使其成为黑客(数量不断增加)攻击加密安全协议的有效工具。由于硬分叉用于升级或拆分账本,区块链账本对这种类型的网络攻击特别脆弱。然而,当前保护区块链系统的解决方案相当有效,特别是使用“强重放保护”,可以确保黑客在分裂发生后无法复制交易。

BTC2.36%
查看原文
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
0/400
暂无评论
交易,随时随地
qrCode
扫码下载 Gate App
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)