Page 277 - 《软件学报》2021年第5期
P. 277

田国华  等:区块链系统攻击与防御技术研究进展                                                         1501


                    (1)  客户端漏洞(client vulnerability) [51] :尽管现有全节点客户端的底层协议互相兼容,增强了比特币网络
                        的健壮性,但客户端代码中可能存在诸多安全漏洞,并且这些漏洞会随着客户端类型的增加而增加.
                        攻击者可以利用 0day 漏洞扫描等技术扫描客户端中存在的漏洞,然后利用这些漏洞发起各种攻击.
                        2018 年,区块链安全公司 Peck Shield 披露了一个安全漏洞,攻击者可以向以太坊客户端发送特定恶意
                        报文,一旦成功,将导致 2/3 的以太坊节点下线.
                    (2)  窃听攻击(eavesdropping attack) [52] :攻击者可以通过网络窃听,获取区块链用户节点的网络标识,并将
                        其与 IP 地址关联起来,进而获取用户节点的隐私信息,甚至可以追溯到用户的实际家庭地址.以比特
                        币为例,用户通过连接一组服务器来加入比特币网络,这个初始连接集合就是该用户的唯一入口节
                        点.攻击者可以通过与比特币服务器建立多个连接,以窃听客户端与服务器端的初始连接,获得客户
                        端的 IP 地址.随着交易流经网络,攻击者将窃听得到的 IP 地址与已有的客户端入口节点进行匹配,若
                        成功,则攻击者便可获知交易的来源.
                    (3)  日蚀攻击(eclipse attack) [53] :攻击者通过特定手段使得目标节点只能获得被操纵的、伪造的网络视图,
                        将其从实际的网络视图中隔离出来,从而妨碍目标节点正常运转,以达成特定的攻击目的.如图 2 所
                        示,攻击者操纵多个对等节点与目标节点保持长时间的传输连接,使其在线链接数达到目标节点的入
                        站连接上限,从而阻止其他合法节点的连接请求.此时,目标节点被攻击者从 P2P 网络中“隔离”出来,
                        导致目标节点无法正常维护区块链账本.
                    (4)  边界网关协议(border gateway protocol,简称 BGP)劫持攻击    [54] :BGP 是因特网的关键组成部分,敌手可
                        以通过劫持 BGP 来实现操纵互联网路由路径的目的.由于区块链是基于互联网来传递信息的,劫持
                        BGP 可以实现对区块链节点流量的误导和拦截.攻击者一旦接管了节点的流量,就可以通过影响区块
                        链网络的正常运行来破坏共识和交易进程.例如,比特币系统的大部分节点都被托管至几个特定的互
                        联网服务提供商,大约 60%的比特币连接都会通过这些特定服务商,所以攻击者一旦接管了这部分流
                        量,将可以通过 BGP 路由劫持破坏区块链网络的完整性,甚至导致区块链网络瘫痪.
                    (5)  分割攻击(segmentation attack) [55] :攻击者通过 BGP 劫持攻击将区块链网络划分成两个或多个不相交
                        的网络,此时的区块链会分叉为两条或多条并行支链.攻击者可以在多个支链网络中将同一笔电子货
                        币兑换成现实商品或法币.BGP 劫持攻击停止后,区块链重新统一,以最长的链为主链,其他的链上的
                        交易、奖励等全部失效,攻击者由此获利.
                    (6)  DoS 攻击(denial-of-service attack) [56] :即拒绝服务攻击,攻击者利用大量网络资源攻击计算机系统或
                        网络,使其停止响应甚至崩溃,从而拒绝服务.实际中,用户节点资源通常受限,攻击者只能通过图 3 所
                        示的分布式 DoS 攻击(distributed denial-of-service,简称 DDoS) [57] 整合零散网络带宽来实施 DoS 攻击.
                        2017 年 5 月,Poloniex 交易平台遭受了严重的 DDoS 攻击        [58] ,导致比特币价格被锁定在 1 761 美元,用
                        户无法正常执行交易.此外,当区块链网络中的大部分矿工无法盈利时,可能通过拒绝为区块链网络
                        服务而发起 BDoS 攻击(blockchain denial of service,简称 BDoS) [59] ,导致区块链网络瘫痪.
                    (7)  交易延迟攻击(transaction delay attack):比特币闪电网络(lightning network) [60] 通常使用哈希时间锁定
                        技术  [61] 来实现安全的资产原子交换,其安全性主要依赖于时间锁定和资金锁定.由于每一笔资金交换
                        都需要通过时间锁定来规定该交易必须在某个时间段内完成.一些恶意节点短时间内建立大量交易,
                        然后故意超时发送,致使网络发生阻塞,影响正常运作.
   272   273   274   275   276   277   278   279   280   281   282