区块链如何被黑客攻击:去中心化网络的攻击方式解析

Author logo
Patrick Dike-Ndulue
Post image

核心洞察

本文探讨了区块链网络遭受攻击的多种方式,指出虽然区块链比中心化数据库更安全,但仍面临如 51% 攻击、双重支付、女巫攻击、自私挖矿、智能合约漏洞和私钥被盗等威胁。文中结合真实案例,说明这些攻击可能导致的重大经济损失,尤其是对小型项目而言。结论强调,安全措施不断提升的同时,攻击手段也在进化,持续警惕和创新对区块链安全至关重要。

区块链是一种分布式账本系统,比中心化数据库更可靠地存储信息和处理交易。但即便如此,区块链也并非绝对安全,黑客攻击时有发生。去中心化网络的攻击方式多种多样,其中大多数都在于利用共识机制的漏洞,试图控制区块链的算力。这样,恶意攻击者就能篡改账本数据、制造混乱,甚至盗取加密货币。

本文将带你了解黑客如何攻击区块链,以及常见的威胁类型。

51% 攻击

51% 攻击是区块链面临的主要威胁,尤其针对采用工作量证明(PoW)共识算法的网络。

攻击原理

攻击者试图掌控超过 50% 的全网算力(哈希率),类似于在公司中拥有控股权,可以随意做决定。对于区块链来说,掌控 51% 的算力意味着可以操控大部分区块的生成。

一旦攻击者控制了超过一半的算力,就能重排交易、撤销交易确认,甚至阻止其他矿工挖矿,造成网络混乱和故障。此外,还可能在不被察觉的情况下进行双重支付(double-spending),即多次花费同一笔加密货币。
 

攻击者如何获得如此大的算力?方法包括租用大量矿机、控制或自建矿池,甚至通过恶意软件组建挖矿僵尸网络。

是否值得冒险?

对于比特币等大型区块链来说,节点众多,设备和电力成本极高,发起 51% 攻击几乎不可能,也不值得投入。但小型项目则难以幸免。

已有多个网络遭遇 51% 攻击,如 ZenCash(ZEN)、Litecoin Cash(LCC)、MonaCoin(MONA)、Verge(XVG)和 Bitcoin Gold(BTG)。

真实案例

51% 攻击成功后,攻击者可以利用协议中的各种漏洞,但最常见的目的是实现双重支付。

2018 年,ZenCash(ZEN)网络被攻击,黑客通过双重支付两笔大额交易(分别为 13,000 和 6,600 ZEN),共获利 55 万美元。此次攻击持续了 110 个区块、4 小时,攻击成本仅约 3 万美元,远低于被盗资产。

另一个例子是 Ethereum Classic(ETC),2020 年被黑客三次攻击。黑客通过 NiceHash 租用算力,在 7 月至 8 月期间 ETC 哈希率骤降时发起攻击。其租用的 GPU 算力超过 ETC 网络总算力的 51%,实现了超 100 万 ETC(当时价值超 900 万美元)的双重支付。

虽然租用算力的成本高达数十万美元,但最终获利仍然可观。类似的案例并不少见。

双重支付攻击

双重支付问题早在区块链和加密货币出现前就已存在。

本质上,如果交易双方未能即时完成交换,承诺稍后履约,就有可能出现资产被多次承诺的风险。

例如,你可以向两三个对象出具同一份支付承诺(合同、凭证等),而实际资产只有一份,这就是双重支付。区块链上的原理完全相同。

双重支付如何发生

攻击者通过多次花费同一笔加密货币实现双重支付。例如,某用户拥有 1 BTC,同时向多方转账并换取对方资产,实际上只有一方能真正收到这 1 BTC。

正常情况下,网络会由多数节点确认一笔交易,防止双重支付。区块链本身内置了防护机制,但风险依然存在。

实现双重支付的方式有多种,51% 攻击就是其中之一。当攻击者控制超过一半算力时,可以独立生成新区块、修改区块内容、拒绝部分交易并只确认“需要”的交易。

攻击示意图

如上图,攻击者分叉主链并确认虚假交易,同时有五笔真实交易被处理。
 

在此期间,攻击者可将加密货币转入交易所,完成只需 1–5 个区块确认的交易,并换取其他加密货币或法币。
 

等到“攻击窗口”关闭,虚假区块会被丢弃,但攻击者已在交易所卖出代币,而原链上的资产依然在手。也就是说,卖出的是“假币”。
 

Finney 攻击

Finney 攻击得名于比特币首位收款人 Hal Finney,他也是最早提出区块链上双重支付可能性的人。

Finney 攻击是一种发生在对方接受未确认交易时的双重支付变种。

具体做法是,矿工先生成一个区块,并将一笔从地址“A”到自己另一个地址“B”的转账写入区块,但暂不广播。接着,再用“A”地址向第三方“C”发起转账。如果“C”在未确认的情况下收款,攻击者随后广播包含第一笔交易的区块,使“A”到“C”的转账失效,自己获得双重收益。

竞速攻击

竞速攻击是一种两笔交易间的“竞赛”。攻击者在不同设备上用同一地址同时向两名收款人转账。双方都发货或转币,但后被处理的那笔交易会被作废。
 

只有在商家接受未确认交易时才可能中招。只需等待至少一次区块确认,就能避免这类攻击。
 

女巫攻击

女巫攻击(Sybil Attack)得名于 Flora Rheta Schreiber 所著小说《Sybil》中的主人公,讲述多重人格障碍的故事。攻击者通过在网络中部署大量受控节点,将受害者节点“包围”,进而掌控其所有交易。

瞄准漏洞

在比特币等大型网络中,这种攻击几乎不可能实现,因为节点是随机选择其他节点确认交易。

因此,女巫攻击通常针对新兴加密项目。新节点接入网络时,可能不知道哪些节点可信,需要请求节点列表。

如果请求被攻击者节点接收,对方就会返回自己控制的节点地址。

这样,黑客可以:

  • 阻断用户交易,使其与主链断开;
  • 决定用户接入哪个区块(通常是发生双重支付的分叉);
  • 追踪用户所有交易。

简而言之,攻击者控制的节点会诱导其他节点批准错误数据。

自私挖矿

基于 PoW 的区块链存在被不诚实矿工利用的漏洞,即可同时确认多个区块。

分叉问题

如果两个区块同时被生成并连接到前一区块,区块链就会出现分叉,导致结构复杂、交易变慢。因此,矿工在确认新区块后应立即广播数据,防止分叉冲突。
 

但所谓“自私矿工”会隐瞒区块信息,误导诚实节点,后者继续在旧链上挖矿,导致分叉链条拉长。

实际场景

假设自私矿工挖出第 2,001 个区块但未广播,其他节点从第 2,000 个区块继续挖矿。此时有两个“第 2,000 区块”:一个来自诚实矿工,一个来自攻击者,各自衔接自己的 2,001 区块。
 

攻击者继续生成新区块并加到自己的链上。等到时机成熟,黑客再广播自己挖出的 2,001 区块,网络判定其为最先找到的有效链,抛弃诚实矿工期间产生的区块。结果,诚实矿工无法获得奖励,努力付诸东流。
 

路由攻击

这类攻击并非直接针对区块链本身,而是利用互联网服务提供商(ISP)连接协议中的漏洞。

黑客通过控制协议,可以发布虚假路由。值得注意的是,这种攻击同样可用于双重支付。如果新块的传递被延迟,网络无法及时看到,就会出现可被双花的“窗口期”。
 

利用智能合约漏洞

智能合约由人编写,而人难免会犯错。

代码错误的代价

智能合约中可能存在各种漏洞,既有难以察觉的复杂问题,也有代码中的小失误。不论哪种错误,都可能导致数百万美元损失。

Web3 安全公司 Beosin 在 2023 年 6 月 30 日发布的报告称,2023 年上半年因欺诈、黑客和诈骗导致的加密货币损失总额高达 6.56 亿美元,其中 56% 源于智能合约漏洞。

不仅智能合约本身的漏洞会导致区块链被攻击,合约所用的编程语言也可能成为突破口。2023 年 7 月 30 日,Curve Finance 四个流动性池因其智能合约所用 Vyper 语言的漏洞被攻击。Curve Finance 是去中心化交易所,采用自动做市商(AMM)机制,是 DeFi 领域主要的稳定币流动性枢纽。此次事件共被盗约 6,000 万美元,其中 2,000 万美元由白帽黑客追回返还。最大损失来自主 CRV/ETH 池,全部流动性(约 4,000 万美元)被清空。

DDoS 与时间延迟攻击

DDoS 攻击的目的不是盗币,而是破坏项目、抹黑初创团队。攻击者通过向网络发送大量无用的“尘埃”交易,导致数据传输、区块链更新和新区块生成变慢,影响正常运行。

私钥攻击

为了保障区块链公有链中数据传输的机密性,采用了非对称加密技术,即私钥和公钥密码学。私钥和公钥通过数学算法关联。知道用户公钥可以加密信息,用户用私钥解密后读取。拥有私钥的人也能推算出公钥,反之则不行。

私钥掌控着用户全部加密资产,因此成为攻击者的目标。

漏洞与防护

获取私钥及其加密货币最简单的方式,是窃取 助记词,比如偷走写有助记词的纸条,或通过社交工程钓鱼攻击等手段。

想要安全保护私钥和全部加密资产,可以选择将其交由 Tangem Wallet 存储。Tangem 加密钱包不使用助记词,因此无法被盗。私钥在两张或三张卡片(主卡和备份卡)芯片内生成并存储,且无法被提取。

结语

目前区块链面临多重威胁,包括上述所有高发攻击,以及各网络自身的问题,如编程代码错误、加密方法缺陷等。黑客持续寻找漏洞,利用智能合约代码缺陷、区块链技术本身的弱点,甚至攻击加密货币交易所。

假设性威胁

还有一些目前仅为理论的攻击方式:

  • 矿池之间的“互相吞噬”(即破坏矿池以扰乱区块链运行);
  • P + ε 攻击:Vitalik Buterin 指出,在 PoW 网络中,这是最令人担忧的问题之一,即通过向网络参与者行贿,换取他们支持某些区块链变更提案;
  • 时间劫持(Timejacking):试图操纵交易时间戳。

目前来看,黑客对这些攻击方式兴趣不大。

展望未来

唯一的解决方案就是不断提升去中心化网络的安全机制。经验表明,防护水平越高,矿工和黑客的攻击手段也越复杂。这是一场永无止境的较量。在传统金融领域,ATM 会被黑,信用卡会被盗,银行也会被抢劫。100% 的安全保障并不存在。

Author logo
作者 Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.

Author logo
經審核 Rukkayah Jigam

Writer & editor covering digital assets and product updates.