浅析日蚀攻击(Eclipse Attack)

中级Dec 12, 2023
日蚀攻击 (Eclipse Attack) 通过切断特定节点与整个网络的连接,从而有效地切断其对传入和传出连接的访问​​,对区块链网络构成了重大威胁。
浅析日蚀攻击(Eclipse Attack)

前言

日蚀攻击 (Eclipse Attack) 旨在操纵节点对点对点网络中信息的访问。攻击者战术性地断开目标节点与更广泛的参与节点网络的连接,迫使节点完全依赖攻击者传播的信息。这些攻击主要针对接受传入连接的节点,通过使用主机节点生成的僵尸网络或幻像网络来利用漏洞。

但是,网络运营商和开发人员可了解日蚀攻击的机制并实施适当的缓解策略,从而能保护其网络并增强抵御此类攻击的能力。请继续阅读本文以了解更多内容。

什么是日蚀攻击?

日蚀攻击通过切断特定节点与整个网络的连接,有效地切断其对传入和传出连接的访问​​,对区块链网络构成了重大威胁。这种切断隔离可能会产生多种有害后果,包括延迟交易确认、造成对有关区块链状态的误解以及致使其容易遭受双花攻击。

日蚀攻击的主要目的是劫持点对点 (P2P) 网络中节点对信息的访问。通过操纵该网络,攻击者设法断开目标节点的连接,从而有效地将其与参与区块链的更广泛的节点网络隔离。因此,目标节点不得不依赖于攻击者仅提供的有关区块链状态的信息。

日蚀攻击主要针对接受传入连接的节点,因为并非所有节点都允许来自其他节点的连接。攻击者利用从主机节点创建的僵尸网络或幻像网络来破坏目标节点。

此外,日蚀攻击对区块链安全和效率有严重的影响。这些攻击可能会破坏交易处理,导致节点做出错误决策,分裂挖矿能力,并促进双花企图。此外,它们还可用于操纵智能合约并降低区块链的整体复原力,可能导致 51% 攻击。

因此,为了降低日蚀攻击的风险,区块链网络可以实施各种策略,例如多样化对等连接、采用节点发现机制、监控网络活动以及独立验证区块链数据。这些措施可以帮助防止节点被孤立和误导,从而维护网络的完整性和运行效率。

日蚀攻击如何运作?

来源:Marlin Protocol — 攻击者失去与网络中诚实节点的连接,导致目标节点黯然孤立

在日蚀攻击中,攻击者首先用自己的恶意 IP 地址填充目标节点的对等表。对等表实质上是数据库,用于存储有关特定节点所连接的网络中其他节点的信息。通过用自己的 IP 地址填充这些表,攻击者可以确保目标节点仅在建立新连接时才连接到其节点。

成功操纵对等表后,攻击者就会使用对目标的 DDoS 攻击,以强制目标节点重新启动,或者攻击者仅等待它重启。这样做是为了中断其当前的传出连接并重置其连接过程。当节点重新启动时,它会失去与网络中合法节点的现有连接。

当目标节点在重新启动后尝试建立新连接时,它会查阅其对等表以查找潜在的连接伙伴。然而,由于攻击者用自己的 IP 地址填充了表,节点在不知不觉中只与攻击者的节点建立连接。这有效地将目标节点与合法网络参与者隔离,并将其传入和传出连接重新定向到攻击者的节点。

来源:hub.packtpub.com — 将目标节点与合法节点隔离后攻击者在区块链网络中的位置

通过控制目标节点的连接,攻击者可以操纵流经该节点的信息和流量。他们将会设计欺诈性交易或发起双花,破坏共识机制,甚至进行更复杂的攻击,例如女巫攻击。攻击者节点创建的幽灵网络充当执行这些恶意操作并破坏区块链网络完整性和安全性的网关。

对比特币点对点网络发起的日蚀攻击

在比特币网络中,节点通过 P2P 网络进行通信,形成连接来传播交易和区块。每个节点最多可以有117个传入 TCP 连接和8个传出 TCP 连接,从而允许它们在网络内进行交互。但是,当攻击者通过使用恶意 IP 地址淹没节点或操纵其连接来控制节点的连接时,可能会发生日蚀攻击。这种对节点连接的控制可以让攻击者控制信息流,从本质上将目标节点与真正的网络交互隔离开来。

来源:KAIST —— 比特币区块链中的传入和传出 TCP 连接

对比特币区块链发起日蚀攻击的重要性在于它有可能破坏网络的完整性。它挑战了比特币内部的安全假设,该假设依赖于这样的假设:只要 51% 的算力是诚实的,系统就保持安全。然而,这种假设是基于所有各方都能看到所有有效的区块和交易,而日蚀攻击可以通过控制 P2P 网络以及随后的区块链信息流来破坏这一点。

针对比特币网络发起的日蚀攻击,可实施以下各种对策:

  1. 响应超时:比特币节点可以采用超时机制,如果节点在设定的时间范围内(例如,交易时间为2分钟或区块块创建时间为20分钟)没有收到所需的信息,则它与当前对等点断开连接并向另一个同行请求信息。这有助于防止对可能受损节点的依赖,并通过估计安全等待时间来提高交易的整体安全性。

  2. 强化措施:加强网络抵御日蚀攻击可以实施群组哈希列等措施,这加大了攻击执行的难度。群组哈希要求攻击者能够访问不同组的多个 IP,从而使成功执行攻击更加复杂并需要更多资源。

从本质上讲,对比特币 P2P 网络的日蚀攻击构成了严重威胁,可能会让攻击者操纵节点连接、控制信息流并破坏区块链的安全性。然而,实施以上建议的对策将能减轻这些风险并增强网络抵御此类攻击的能力。

日蚀攻击带来的后果

对区块链网络的日蚀攻击可能会导致各种严重后果,严重损害网络的功能。

以下是日蚀攻击可能产生的一些影响:

  1. 双花攻击:日蚀攻击最令人担忧的后果之一是双花的可能性。当攻击者设法使用相同的加密货币进行多次交易时,就在执行双花交易,因为这本质上是两次花费相同的资金。由于目标节点已与更广泛的网络隔离,它们可能无法检测到这些双花交易,从而让恶意行为者无法被检测发现而能成功确认非法交易,直到受感染的节点重新获得对准确区块链数据的访问权限才能发现。

来源:hub.packtpub.com — 攻击者使受害节点安然隔离,以促进双花交易

此外,Eclipse攻击可以分为0次确认和N次确认双花。让我们仔细来探讨这两种双花。

0次确认双花:在日蚀攻击中,“0次确认双花”是指攻击者利用P2P网络中节点的隔离性,欺骗性地将相同资金花费两次的场景。此类攻击通常针对商家无需等待区块链上的确认即可接受交易的 情形。

N次确认双花:在双花攻击中,“N次确认双花”是指攻击者将特定节点(例如商家和矿工的节点)与更广泛的区块链网络隔离的场景。这种隔离阻止这些节点及时、准确地接收有关区块链的信息,包括交易确认,从而导致潜在的双花交易风险,从而造成财务损失并损害受影响节点内的交易完整性。

2. 拒绝服务 (DoS):日蚀攻击可能导致拒绝服务攻击,从而中断目标节点对网络的访问。通过切断传入和传出连接,攻击者可以有效地使节点无法执行其预期功能,从而导致中断和潜在的数据丢失。

3. 垄断连接:攻击者可以垄断节点的连接,控制其从网络接收的信息流。这种操纵可能会导致目标节点完全依赖攻击者获取区块链信息,从而促进欺诈活动。

4. 垃圾邮件地址(IP 地址):日蚀攻击可能带来垃圾邮件 IP 地址,用大量不相关数据淹没目标节点。这种数据泛滥会阻碍节点的性能并扰乱其运行。

5. 强制节点重启:在某些情况下,日蚀攻击可以强制目标节点重复重启,导致停机并破坏其与区块链网络同步的能力。

6. 需要许多机器人:执行日蚀攻击通常需要大量机器人或受感染的节点。这一要求让攻击更加耗费资源,但执行后也可能更造成更大的影响。

  1. 加剧自私挖矿和51%攻击:日蚀攻击会加剧区块链内的自私挖矿行为。这可能会导致这样一种情况:拥有大量总算力(例如40%及以上的算力)的恶意矿工可能会执行 51% 攻击,获得对区块链的控制权,并可能重组或操纵交易。

本质而言,日蚀攻击对区块链网络的安全性、可靠性和可信度等多方面带来了风险,让攻击者得以利用漏洞获取恶意收益,特别是在双花和大幅分割网络挖矿能力等欺诈交易方面更是如此。

应对日蚀攻击的对策

降低日蚀攻击发生的可能性可能没那么容易,因为可能无法大规模简单地阻止传入连接或限制与受信任节点的连接。这种方法本来是防止日蚀攻击的更好方法,但它会阻碍新节点加入网络,并限制其增长、破坏其去中心化。

为了应对日蚀攻击,可以采用以下多种策略:

1. 随机对等点选择:节点可以从可用节点池中随机选择其对等点,而不是仅仅依赖于预定的可信节点列表。这降低了攻击者用其恶意 IP 地址成功填充节点对等表的可能性。

2. 可验证的初始化:节点可以使用密码算法来确保初始化过程是安全且可验证的。这有助于防止攻击者在初始化阶段将恶意 IP 地址注入节点的对等表中。

3. 多样化的网络基础设施:通过使用多个独立的来源来获取IP地址,网络可以避免依赖于单一的易受攻击的来源。这使得攻击者更难使用自己的 IP 地址操纵节点的对等表。

4. 定期更新对等表:节点可以通过从各种来源获取最新信息,以定期更新其对等表。通过不断刷新连接并最大限度地减少与合法网络参与者隔离的机会,可以减少可能发起的日蚀攻击带来的影响。

5. 白名单:实施受信任 IP 地址白名单允许节点将连接仅限制与合法对等点发生,从而降低被攻击者控制的节点所带来的风险。

6. 网络监控和分析:持续监控网络行为和分析流量模式,这能帮助识别任何可疑活动或潜在的日蚀攻击,从而在此类攻击造成重大损害之前主动检测并降低此类攻击带来的风险。

7. 强化网络:通过增加节点带宽、优化传输算法、增强共识机制等措施加强网络整体复原力,可以提升网络抵抗日蚀攻击的能力。

结合实施这些策略可以增强区块链网络抵御日蚀攻击的能力,并有助于维护网络的完整性和安全性。

结语

日蚀攻击对区块链网络有着非常严重影响,会破坏其安全性和运营效率。它们不仅会扰乱交易流程并影响节点决策,还会使挖矿算力分裂并导致双花尝试的风险。此外,日蚀攻击甚至可能篡改智能合约,削弱区块链网络的整体复原力,并可能导致 51% 攻击。然而,通过实施本文中讨论的各种对策以及特定的区块链更新措施,可以减轻与这种攻击相关的不利影响。

作者: Paul
译者: Cedar
文章审校: Wayne、Matheus、Ashley He
* 投资有风险,入市须谨慎。本文不作为Gate.io提供的投资理财建议或其他任何类型的建议。
* 在未提及Gate.io的情况下,复制、传播或抄袭本文将违反《版权法》,Gate.io有权追究其法律责任。
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!
立即注册