来源区块链

研究者揭露比特币区块链安全漏洞,起因是节点过于集中

发布于:2017-04-17 10:06:07 阅读:273 回帖:0

在第38届电气与电子工程师协会(IEEE)安全与隐私讨论会中,希伯来大学的Aviv Zohar将分享一篇报告(币文库全文下载),详细解释如何通过互联网的路由架构对比特币区块链进行攻击。在报告中,Zohar和他的研究伙伴Maria Apostolaki及Laurent Vanbever展示了边界网关协议(BGP)能够攻击比特币的两种方式——分区攻击(partition attack)和延迟攻击(delayed attack)。

比特币区块链

在分区攻击情况中,如果某网络服务供应商(ISP)是比特币网络中的重要部分唯一路径,就可能会有黑洞(网络木马)阻止双方(区块链和网络路由)的通讯。在这两座“孤岛”各自处理交易和挖比特币的同时,一旦入侵者再次对双方进行连接,那么除了舍弃已挖出的比特币、交易和挖矿收入就没有别的选择了。

研究者表示,从某种程度上来说,延迟攻击被认为是最坏的情况。因为和分区攻击不同,这种攻击是无法检测到的。商户在遭受这种攻击之后很容易进行双花(double-spending);矿工的交易处理能力也将被浪费,普通的节点也无法在区块链中正常传播。

对比特币开发者来说,这类问题很让他们头大,因为他们无法控制攻击向量(attack vector)以及BGP协议(这一协议决定数据包在网络中的传播路径)。

BGP是这个时代出现的简化产物,用于对接收信息的信任。某载体或者ISP网络中的一次有意或无意的错误都会对BGP路由信息产生不良影响,危及大部分网络流量。

这两种类型的攻击要想成功都需要一个内部知情人士提供ISP信息。尽管如此,它们仍然有着对比特币网络造成重大攻击的可能,很容易被忽略。比特币节点有聚集在一小部分ISP中的倾向。据估计,30%的比特币网络存在在13个主机中,60%的比特币流量在3个ISP中可见。

研究者曾提到,单单在2015年11月,BGP攻击就已经对百来个比特币节点造成了影响,占到了当时全网节点(447个节点)的8%。不过,报告中也提出了一些应对措施,其中大部分都能即刻进行部署,比如说确保节点连接的多样化,在选择节点的同时考虑路由条件以及“对比特币连接进行加密或者采用信息认证码(MAC)验证每条信息内容的真实性,这样就能加大延迟攻击的难度。”

加密货币资产交易所Shapeshift的首席信息安全官Michael Perklin说,比特币的设计初衷就是抵御攻击,就像互联网一样,它存在的理由是为了抵挡城市中的核攻击;通过节点的去中心化来确保单方面的失败是不存在的。Perklin表示,比特币区块链记录中包含的是每笔交易的细节。因此,一旦区块链和ISP的攻击被阻断,就会产生两种不同的记录。支付的撤销以及新币的销毁会造成共识的失败,这会对经济带来灾难性的影响。

Perklin总结道:

所幸ISP已经意识到了BGP在节点连接中的重要性,他们会定期采取措施防止相关攻击的出现。虽然这类攻击从理论上来说是行得通的(就像用蛮力算出私钥),我们还是可以放心,这些攻击在实际案例中是很难实施的,因为前提是攻击者有优先访问那些受到高度保护的设备的权限。

这篇报告提到的安全问题的细节会在今年5月的IEEE会议中公布。研究者表示,他们将在GitHub中发布代码,模拟攻击原型。

来源:区块链

返回