网络安全的重要性:增强公共DHT,抵御Eclipse攻击!

随着网络规模的不断扩大,2020年IPFS的一个主要重点是改进内容路由。虽然官方对DHT上的请求速度进行了重大改进,但另一个关键重点是网络的安全性。

在发布go-ipfs0.5之前的工作中,A-SIT和Graz科技大学的BerndPrünster和AlexanderMarsalek联系了协议实验室,告知官方他们在针对go-ipfs0.4.23的研究中发现的一种攻击,这种攻击可以让攻击者用最少的资源吃掉公共DHT上的任何节点。

在过去3个小版本的go-ipfs中,官方一直与Bernd和Alexander密切合作,发布增量改进,减轻了他们的原始攻击,并将此类攻击的成本和难度提高了几个数量级。今天这篇文章将深入研究该攻击和官方发布的各种缓解措施。

美国参议员推出《加密货币网络安全信息共享法案》草案:9月29日消息,美国参议员Marsha Blackburn与Cynthia Lummis推出一项新的法案草案《加密货币网络安全信息共享法案》(Cryptocurrency Cybersecurity Information Sharing Act),旨在为加密货币公司报告网络安全威胁提供指导方针。

据悉,该法案将修改2015年的《网络安全信息共享法案》,将加密货币公司包括在内并赋予他们更多的法律灵活性,以便他们与联邦当局共享信息,包括向处理数字资产的公司报告网络威胁的自愿报告准则,旨在提供一套更新的监管指南,解决滥用加密货币以隐藏非法行为的问题。[2022/9/29 22:39:31]

如果你想阅读完整的论文,“全部的Eclipse病——扰乱破坏IPFS系统”,你可以在TUGraz研究门户网站上找到它。

北京日报:与区块链等相关的网络安全挑战不断增大:北京日报3月30日刊文称,中国应急管理体系建设时间短、基础弱、底子薄的问题还比较突出,防范化解重大风险、高效应对重大突发事件仍然面临诸多挑战。非传统领域的公共安全风险挑战加大。云平台、数据安全等新兴领域的安全问题不断凸显,数据泄露、云平台安全风险等问题较为突出,与5G、区块链等新兴技术相关的网络安全挑战也在不断增大。[2020/3/30]

缓解攻击

Eclipse攻击指的是攻击者将对等体与网络其他部分隔离开来,使目标对等体只与攻击者控制的对等体通信的能力。这种攻击的目标是污染目标对等体的DHT路由表,使只有攻击者控制的对等体存在。在Bernd和Alexander发现的攻击中,他们利用libp2p和大量预先生成的PeerID列表,创建了一个Sybil攻击,共计29TB的数据,以libp2p中的信誉系统,从而接管路由表。

日本Jupiter Project将联合政商学三界,将区块链技术应用至网络安全领域:一家名为Jupiter的日本公司正发起一项名为“Jupiter Project”的项目。Jupiter在日前举行的媒体说明会上,表示该项目的方向是联合政、商、学三界,探讨AI以及区块链等高新技术在网络安全领域的具体应用。该项目领导者松田学曾任财务省官员、众议院议员,现任东京大学客座教授。[2018/4/17]

如果你对Sybil攻击不熟悉的话,其原理是利用单个Peer的大量假名ID来颠覆信誉系统,以增加对网络的影响力。在这种攻击的背景下,假ID最终会在受影响对等体的路由表中取代对等体的位置。

为了使这种攻击成功,libp2p中的一些漏洞被暴露出来,最终导致这种攻击在go-ipfs0.4.23中非常有效。在这次攻击被发现的时候,libp2p存在的一个主要问题是,DHT并没有偏向于长寿的对等体,它并没有保护其下层桶中的对等体。这个问题使得攻击者可以快速地将诚实的对等体从目标的路由表中驱逐出去,以支持其不诚实的对等体。作为go-ipfs0.5中DHT大修工作的一部分,官方改变了路由表中条目的管理方式。其中一个主要的影响变化是,官方将不再从路由表中驱逐仍然可用的对等体。这加上官方在go-ipfs0.5中对DHT所做的其他改进,使得攻击的执行难度增加了几个数量级。你可以在IPFS0.5内容路由深挖中阅读关于DHT的详细变化。

特朗普签署包括区块链网络安全研究的军费开支法案:美国总统唐纳德·特朗普(Donald Trump)签署了一项耗资7000亿美元的军费开支法案,其中包括区块链网络安全研究。正如CoinDesk 9月份报道的那样,美国参议院提出的这项法案要求国防部调查“区块链技术和其他分布式数据库技术的潜在攻击和防御网络应用”。该语言本身是更广泛的“现代化政府技术法”(MGT)的一部分,该法旨在改善政府的IT和网络安全系统。根据案文,这项研究的结果将在未来6个月内交付国会。尽管美国国防部已经开始准备并已经探索了一些相关应用,但最终成品还要参考来自其他联邦机构和部门的意见。[2017/12/13]

除了go-ipfs0.5中的改动,官方还修复了几个问题,进一步增加了这次攻击的难度和成本。攻击成功的部分原因是由于Sybil节点能够通过滥用对作为中继的对等体的评分方式的缺陷来攻击有价值连接的信誉系统。该缺陷可以让一个Sybil节点充当后续Sybil对等体的中继,从而继续提升中继的得分。这可以为单个对等体使用嵌套的Sybils快速获得大量的不正当的声誉。为了解决这个问题,官方对中继应用了一个恒定的分数,这使得官方仍然可以重视它们,但避免它们能够夸大自己的声誉。通过提高内部声誉系统的完整性,官方降低了Sybil攻击的功效。

官方为增加这类攻击的成本所做的另一个重大改变是在路由表中引入IP多样性要求。最初的go-ipfs0.4.23攻击能够以相对较低的费用在单台机器上运行,因为路由表有可能只包含来自单一主机的对等体。现在,IP多样性的要求限制了来自任何主机的对等体数量,这使得从单台机器上执行日蚀攻击变得不可行,进一步将攻击成本从go-ipfs0.5提高了两个数量级以上。

验证缓解措施

作为与Bernd和Alexander合作的一部分,官方希望确保能够正确地测试和验证修复,采取了两种方法。

现场测试:在官方的允许下,他们对官方在公共网络上的一个托管引导节点进行了控制攻击。这使官方能够收集实时指标和日志,从可见性和他们的外部观察中观察攻击的有效性。受控攻击是在IPFS发布之前的每个版本上进行的,从go-ipfs0.5开始,这使官方能够在生产环境中验证修复。

在Testground上进行复制:由于Testground的开发和发布,以及Bernd和Alexander分享他们的攻击代码,能够创建测试计划来复制攻击的各个部分。这使官方能够在一个受控的测试环境中做大规模测试的变化,既验证攻击是可能的,并验证官方的缓解措施。拥有这些测试计划的好处是,官方可以继续在IPFS和libp2p的版本上运行它们,以确保官方不会引入回归。此外,这确保了官方可以在受控的环境中更长时间地运行攻击,以进一步分析攻击的有效性和成本。

IPFS目前的情况

在这一年里,官方对IPFS和libp2p的性能和安全性都做了重大改进,而合作是这项工作成功的重要组成部分。Bernd和Alexander所做的研究,以及他们与协议实验室紧密合作的意愿,对帮助提高网络的稳定性是非常宝贵的。

随着9月份go-ipfs0.7的发布,官方在IPFS和libp2p上执行eclipse和Sybil攻击的难度和成本较其0.4.23的前身增加了几个数量级。如果你还没有更新到go-ipfs0.7,建议你尽快更新,以利用这些改进的全部范围。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:0ms0-4:277ms