一种基于自治系统的区块链网络分隔攻击检测与防御方法

未命名 07-29 阅读:125 评论:0


1.本发明属于区块链技术与网络领域,具体涉及一种基于自治系统的区块链网络分隔攻击检测与防御方法。


背景技术:

2.区块链网络具备去中心化,匿名性以及不可篡改性等重要特征,它的底层技术是区块链技术。区块链是一个分布式账本,具有不断增长的记录(块)列表,这些记录(块)通过加密哈希安全地链接在一起。由于加密哈希,所以区块链具备匿名性。每个区块包含前一个区块的加密散列、时间戳和交易数据(通常表示为梅克尔树,其中数据节点由叶表示)。时间戳证明了区块创建时交易数据已经存在。由于每个块包含关于前一个块的信息,每个新增的块链接到它之前的块,这些块有效地形成了一个链数据结构。因此,区块链交易是不可逆的,一旦交易被记录下来,任何给定块中的数据都不能在不改变所有后续块的情况下被追溯。所以区块链具备不可篡改性。区块链通常由点对点(p2p)网络管理,用作公共分布式账本,其中网络中的节点相互连接共同组成区块链网络。节点之间共同遵守共识算法协议,以添加和验证新的交易区块。
3.区块链技术随着社会发展,快速渗透到各个行业,如金融领域、物联网、电子商务以及个人隐私保护等方面。同时,科研学者对区块链技术以及区块链网络的研究也逐渐加深,其中对于区块链网络的研究是至关重要的。而分隔攻击是区块链网络的安全防御性能研究中非常重要的一个。分隔攻击的主要手段是攻击者利用恶意地址逐渐侵占受害者节点的ip地址并进一步全部占领受害者节点的传出连接。目的就是控制受害者节点的信息交互,导致受害者节点无法接收到正确的区块信息以及交易信息,并且受害者节点的算力会被攻击者利用。因此分隔攻击的潜在危害性很高,可以对区块链网络造成非常大的破坏。不仅本身是一种攻击手段,也可以作为辅助工具提升其他攻击方式的成功率。正是因为分隔攻击对区块链网络的巨大危害性和破坏性,所以,能否及时地检测出区块链网络中的分隔攻击并进行有效防御是区块链网络安全可靠的重要指标。
4.当前,为了预防分隔攻击,开发人员对区块链网络核心代码进行了升级,主要更新了节点储存ip地址的方式以及节点选择传出连接的机制。升级后的这些措施较好的预防了早期的eclipse分隔攻击。但是在2020年提出了新的分隔攻击方式:erebus攻击,从数据层面对受害者节点进行分隔攻击,让分隔更加隐蔽和难以发现。之前升级后的区块链网络无法预防住这种分隔攻击,而针对区块链网络的分隔攻击也没有有效的检测与防御方法。


技术实现要素:

5.本发明是为了解决上述问题而进行的,目的在于提供一种基于自治系统的区块链网络分隔攻击检测与防御方法。
6.本发明提供了一种基于自治系统的区块链网络分隔攻击检测与防御方法,用于对区块链网络的节点受到的分隔攻击进行检测与防御,具有这样的特征,包括以下步骤:步骤
s1,当节点发生重启时,进入步骤s2;
7.步骤s2,节点对节点路由到达传出连接地址经过的自治系统以及到达ip表中储存地址经过的自治系统进行检测,判断是否正在遭受分隔攻击,如果判断为没有遭受分隔攻击,节点正常运行,如果判断为正在遭受分隔攻击,则进入步骤s3;
8.步骤s3,节点生成正在遭受分隔攻击的报警信息,停止一切信息交互并启动防御措施,防御完成后正常运行节点,
9.其中,步骤s3中,防御措施为:立即断开与恶意地址的全部传出连接,清除ip表中的恶意地址,并向dns种子重新申请健康地址。
10.在本发明提供的基于自治系统的区块链网络分隔攻击检测与防御方法中,还可以具有这样的特征:其中,步骤s1中,在节点的运行过程中设置重启触发标志,节点在正常运行情况下,重启触发标志默认设置为假,当节点发生重启时,重启触发标志赋值为真,并进入步骤s2。
11.在本发明提供的基于自治系统的区块链网络分隔攻击检测与防御方法中,还可以具有这样的特征:其中,步骤s2中,包括以下子步骤:
12.步骤s2-1,节点先逐个查出节点路由到达传出连接地址所经过的自治系统,整理经过的自治系统中相同自治系统的个数,得到节点路由经过相同自治系统的传出连接个数,并与预设的第一阈值进行对比,当小于第一阈值时,判断节点为正常运行,停止检测,当大于等于第一阈值时,进入步骤s2-2;
13.步骤s2-2,节点逐个查出节点路由到达ip表中储存地址所经过的自治系统,整理经过的自治系统中相同自治系统的个数,得到节点路由经过相同自治系统的地址个数占ip表总地址数的占比,并与预设的第二阈值进行对比,当小于第二阈值时,判断节点为正常运行,停止检测,当大于等于第二阈值时,进入步骤s2-3;
14.步骤s2-3,判断步骤s2-1和步骤s2-2中查出的自治系统是否相同,当查出的自治系统不同时,判断节点为正常运行,停止检测,当查出的自治系统相同时,判断为正在遭受分隔攻击,进入步骤s3。
15.在本发明提供的基于自治系统的区块链网络分隔攻击检测与防御方法中,还可以具有这样的特征:其中,步骤s2-3中,当查出的自治系统相同时,将查出的相同自治系统判断为攻击者,将节点路由经过相同自治系统的地址确定为恶意地址,并通过步骤s3的防御措施对恶意地址进行处理。
16.在本发明提供的基于自治系统的区块链网络分隔攻击检测与防御方法中,还可以具有这样的特征:其中,第一阈值根据节点在正常运行情况下,节点路由到达传出连接地址时,节点路由经过相同自治系统的传出连接个数的最大值进行设置,第二阈值根据节点在正常运行情况下,节点路由到达ip表中储存地址时,节点路由经过相同自治系统的地址个数占ip表总地址数的最大占比进行设置。
17.在本发明提供的基于自治系统的区块链网络分隔攻击检测与防御方法中,还可以具有这样的特征:其中,步骤s2中,通过使用路由视图前缀到自治系统的映射来将传出连接地址和储存地址映射到自治系统,节点路由到达传出连接地址和储存地址所经过的自治系统路径通过路由视图进行查阅。
18.发明的作用与效果
19.根据本发明所涉及的基于自治系统的区块链网络分隔攻击检测与防御方法,将节点重启作为触发条件,在节点发生重启后,对自身的传出连接地址以及ip表中的储存地址进行检测,检测本节点路由到达这些地址中经过相同自治系统的地址数量占比是否超过设置的阈值,并对比到达传出连接地址和ip表中的储存地址经过的自治系统是否相同,当超出阈值且经过的自治系统相同时,节点将生成正在遭受分隔攻击的报警信息并启动防御措施来保证节点正常运行,通过本发明的检测和防御流程,能够受害者节点快速摆脱遭受分隔攻击的状态,并且尽快重新进入到正常健康的区块链网络中。因此,本发明的基于自治系统的区块链网络分隔攻击检测与防御方法,能够准确检测出区块链网络的分隔攻击并进行有效防御,进一步地,本发明的检测及防御方法是根据区块链网络的特性以及分隔攻击的攻击原理进行设计,本发明通过将攻击检测与防御整合统一,形成了完备的针对区块链网络分隔攻击的应对方案,具有高精度检测和自适应防御的特性。
附图说明
20.图1是本发明的实施例中一种基于自治系统的区块链网络分隔攻击检测与防御方法的流程图;
21.图2是本发明的实施例中节点正常运行时,节点路由到达传出连接地址经过相同自治系统的传出连接数频数及占比图;
22.图3是本发明的实施例中节点正常运行时,节点路由到达ip表中储存地址经过相同自治系统的地址数占比;
23.图4是本发明的实施例中节点遭受分隔攻击时添加了检测与防御方法的检测效果图;
24.图5是本发明的实施例中节点遭受分隔攻击时未添加检测与防御方法的攻击成功天数直方图;
25.图6是本发明的实施例中节点遭受分隔攻击时添加了检测与防御方法的攻击天数直方图;
26.图7是本发明的实施例中节点遭受分隔攻击时添加与未添加检测与防御方法的攻击天数对比折线图。
具体实施方式
27.为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施例结合附图对本发明的一种基于自治系统的区块链网络分隔攻击检测与防御方法作具体阐述。
28.《实施例》
29.本实施例中,搭建仿真实验环境进行仿真实验,上述仿真实验环境可实现三方面功能包括:(1)没有发动分隔攻击时,节点能够正常运行;(2)对正常运行的节点发动分隔攻击;(3)节点添加本发明的基于自治系统的区块链网络分隔攻击检测与防御方法来抵御分隔攻击。为保证仿真实验更加符合实际区块链网络环境,仿真实验严格执行以下两点:一是实验所使用的ip地址数据集来自托管于真实区块链网络的节点接收储存的地址数据集。二是根据区块链网络的源码,复刻了节点关于地址管理模块的功能,包括接收地址、地址冲
突、驱逐地址以及存储地址等操作,从而确保仿真实验的结果真实可靠。
30.图1是本发明的实施例中的一种基于自治系统的区块链网络分隔攻击检测与防御方法的流程图。
31.如图1所示,本实施例的一种基于自治系统的区块链网络分隔攻击检测与防御方法,用于对区块链网络的节点受到的分隔攻击进行检测与防御,包括以下步骤:
32.步骤s1,当节点发生重启时,进入步骤s2。
33.在分隔攻击中,让受害者节点重启是非常重要且必要的,因此本实施例中,将节点重启作为检测触发条件。
34.步骤s1中,在节点的运行过程中设置重启触发标志,节点在正常运行情况下,重启触发标志默认设置为假,当节点发生重启时,重启触发标志赋值为真,并进入步骤s2。
35.步骤s2,节点对节点路由到达传出连接地址经过的自治系统以及到达ip表中储存地址经过的自治系统进行检测,判断是否正在遭受分隔攻击,如果判断为没有遭受分隔攻击,节点正常运行,如果判断为正在遭受分隔攻击,则进入步骤s3。
36.步骤s2中,包括以下子步骤:
37.步骤s2-1,节点先逐个查出节点路由到达传出连接地址所经过的自治系统,整理经过的自治系统中相同自治系统的个数,得到节点路由经过相同自治系统的传出连接个数,并与预设的第一阈值进行对比,当小于第一阈值时,判断节点为正常运行,停止检测,当大于等于第一阈值时,进入步骤s2-2。
38.步骤s2-2,节点逐个查出节点路由到达ip表中储存地址所经过的自治系统,整理经过的自治系统中相同自治系统的个数,得到节点路由经过相同自治系统的地址个数占ip表总地址数的占比,并与预设的第二阈值进行对比,当小于第二阈值时,判断节点为正常运行,停止检测,当大于等于第二阈值时,进入步骤s2-3。
39.第一阈值根据节点在正常运行情况下,节点路由到达传出连接地址时,节点路由经过相同自治系统的传出连接个数的最大值进行设置,
40.第二阈值根据节点在正常运行情况下,节点路由到达ip表中储存地址时,节点路由经过相同自治系统的地址个数占ip表总地址数的最大占比进行设置。
41.本实施例中,第一阈值和第二阈值根据节点的具体情况进行对应调整。在节点正常运行的情况下,统计相关实验数据为检测阈值的设置提供数据支撑。
42.图2是本发明的实施例中节点正常运行时,节点路由到达传出连接地址经过相同自治系统的传出连接数频数及占比图。
43.如图2所示,节点在正常运行的情况下,节点路由到达传出连接地址中经过相同自治系统的连接数量不超过6个,且数量为6的情况仅占4%。所以,当节点的传出连接中路由经过相同自治系统的连接数量大于等于6时,有理由合理怀疑节点的传出连接不正常。因此本实施例中,将第一阈值设置为6。
44.图3是本发明的实施例中节点正常运行时,节点路由到达ip表中储存地址经过相同自治系统的地址数占比。
45.如图3所示,节点在正常运行的情况下,节点路由到ip表中储存地址经过相同自治系统的地址数量占总体数量的最大比值是0.0928。理论上,当这个占比的阈值超过10%时有可能出现问题,但为了保证不会误判,将这个阈值提升到了20%。因此本实施例中,将第
一阈值设置为20%。
46.步骤s2-3,判断步骤s2-1和步骤s2-2中查出的自治系统是否相同,当查出的自治系统不同时,判断节点为正常运行,停止检测,当查出的自治系统相同时,判断为正在遭受分隔攻击,进入步骤s3。
47.步骤s2-3中,当查出的自治系统相同时,将查出的相同自治系统判断为攻击者,将节点路由经过相同自治系统的地址确定为恶意地址,并通过步骤s3的防御措施对恶意地址进行处理。
48.步骤s2中,通过使用路由视图(routeviews)前缀到自治系统的映射来将传出连接地址和储存地址映射到自治系统,节点路由到达传出连接地址和储存地址所经过的自治系统路径通过路由视图进行查阅。
49.步骤s2中共有三个独立的检测,并且只有在前一个检测满足条件的情况下才会进入下一个检测项,上述的检测步骤能够减少算力资源,尽可能的避免不必要的资源浪费。
50.步骤s3,节点生成正在遭受分隔攻击的报警信息,停止一切信息交互并启动防御措施,防御完成后正常运行节点。
51.步骤s3中,防御措施为:立即断开与恶意地址的全部传出连接,清除ip表中的恶意地址,并向dns种子重新申请健康地址。
52.步骤s3中的防御措施根据区块链网络的结构以及分隔攻击的原理进行设计,主要目的就是让受害者节点快速摆脱被分隔的状态,并且尽快重新进入到正常健康的区块链网络中,三个防御措施的作用分别如下:通过立即断开与恶意地址的全部传出连接,能够让受害者节点立即从分隔攻击中脱离;
53.通过清除ip表中的恶意地址,能够让攻击者输入的恶意地址作废,加大攻击者的攻击资源,同时也让受害者节点的ip表恢复到健康状态;
54.通过向dns种子重新申请健康合法的地址,能够让受害者节点的ip表更加稳定,更具有鲁棒性。从而在经过三个防御措施后能够使得节点可以继续正常运行。
55.本实施例中,为了验证本发明的基于自治系统的区块链网络分隔攻击检测与防御方法的使用效果,在上述仿真实验环境下对正常运行的节点发动分隔攻击,并对节点未添加本发明的攻击检测与防御方法时的运行情况以及添加有本发明的基于自治系统的区块链网络分隔攻击检测与防御方法时的运行情况进行对比。实验结果如下:
56.图4是本发明的实施例中节点遭受分隔攻击时添加了检测与防御方法的检测效果图。
57.如图4所示,添加了本发明的检测与防御方法的节点在遭受分隔攻击时,能够有效检测出分隔攻击并启动对应防御措施。
58.图5是本发明的实施例中节点遭受分隔攻击时未添加检测与防御方法的攻击成功天数直方图。
59.如图5所示,未添加本发明的检测与防御方法的节点在遭受分隔攻击时,攻击成功的平均天数是47.56天。
60.图6是本发明的实施例中节点遭受分隔攻击时添加了检测与防御方法的攻击天数直方图。
61.如图6所示,添加了本发明的检测与防御方法的节点在遭受分隔攻击时,攻击成功
的平均天数是181.6天,抑制增幅281%。与图5相比,添加了本发明基于自治系统的区块链网络分隔攻击检测与防御方法的节点有效抑制和延缓了分隔攻击。
62.图7是本发明的实施例中节点遭受分隔攻击时添加与未添加检测与防御方法的攻击天数对比折线图。
63.如图7所示,能够更为直观的看出本发明的基于自治系统的区块链网络分隔攻击检测与防御方法能够有效检测出并防御区块链网络的分隔攻击。
64.实施例的作用与效果
65.根据本实施例所涉及的基于自治系统的区块链网络分隔攻击检测与防御方法,通过仿真实验对比可知,相比于未添加本发明的检测与防御方法,添加了本发明的检测与防御方法的节点在遭受分隔攻击时,攻击成功的平均天数是181.6天,抑制增幅达到281%,因此本发明的基于自治系统的区块链网络分隔攻击检测与防御方法的节点能够准确检测出分隔攻击,并有效抑制和延缓分隔攻击,解决了目前区块链网络中针对分隔攻击的检测与防御不足的问题。
66.综上,本实施例的一种基于自治系统的区块链网络分隔攻击检测与防御方法,将节点重启作为触发条件,在节点发生重启后,对自身的传出连接地址以及ip表中的储存地址进行检测,检测本节点路由到达这些地址中经过相同自治系统的地址数量占比是否超过设置的阈值,并对比到达传出连接地址和ip表中的储存地址经过的自治系统是否相同,当超出阈值且经过的自治系统相同时,节点将生成正在遭受分隔攻击的报警信息并启动防御措施来保证节点正常运行,通过本实施例的检测和防御流程,能够受害者节点快速摆脱遭受分隔攻击的状态,并且尽快重新进入到正常健康的区块链网络中。因此,本实施例的基于自治系统的区块链网络分隔攻击检测与防御方法,能够准确检测出区块链网络的分隔攻击并进行有效防御,进一步地,本实施例的检测及防御方法是根据区块链网络的特性以及分隔攻击的攻击原理进行设计,本实施例通过将攻击检测与防御整合统一,形成了完备的针对区块链网络分隔攻击的应对方案,具有高精度检测和自适应防御的特性。
67.上述实施方式为本发明的优选案例,并不用来限制本发明的保护范围。

技术特征:
1.一种基于自治系统的区块链网络分隔攻击检测与防御方法,用于对区块链网络的节点受到的分隔攻击进行检测与防御,其特征在于,包括以下步骤:步骤s1,当所述节点发生重启时,进入步骤s2;步骤s2,所述节点对节点路由到达传出连接地址经过的自治系统以及到达ip表中储存地址经过的自治系统进行检测,判断是否正在遭受分隔攻击,如果判断为没有遭受分隔攻击,所述节点正常运行,如果判断为正在遭受分隔攻击,则进入步骤s3;步骤s3,所述节点生成正在遭受分隔攻击的报警信息,停止一切信息交互并启动防御措施,防御完成后正常运行所述节点,其中,步骤s3中,所述防御措施为:立即断开与恶意地址的全部传出连接,清除所述ip表中的恶意地址,并向dns种子重新申请健康地址。2.根据权利要求1所述的基于自治系统的区块链网络分隔攻击检测与防御方法,其特征在于:其中,步骤s1中,在所述节点的运行过程中设置重启触发标志,所述节点在正常运行情况下,所述重启触发标志默认设置为假,当所述节点发生重启时,所述重启触发标志赋值为真,并进入步骤s2。3.根据权利要求1所述的基于自治系统的区块链网络分隔攻击检测与防御方法,其特征在于:其中,步骤s2中,包括以下子步骤:步骤s2-1,所述节点先逐个查出所述节点路由到达传出连接地址所经过的自治系统,整理经过的自治系统中相同自治系统的个数,得到所述节点路由经过相同自治系统的传出连接个数,并与预设的第一阈值进行对比,当小于所述第一阈值时,判断所述节点为正常运行,停止检测,当大于等于所述第一阈值时,进入步骤s2-2;步骤s2-2,所述节点逐个查出所述节点路由到达ip表中储存地址所经过的自治系统,整理经过的自治系统中相同自治系统的个数,得到所述节点路由经过相同自治系统的地址个数占ip表总地址数的占比,并与预设的第二阈值进行对比,当小于所述第二阈值时,判断所述节点为正常运行,停止检测,当大于等于所述第二阈值时,进入步骤s2-3;步骤s2-3,判断步骤s2-1和步骤s2-2中查出的所述自治系统是否相同,当查出的所述自治系统不同时,判断所述节点为正常运行,停止检测,当查出的所述自治系统相同时,判断为正在遭受分隔攻击,进入步骤s3。4.根据权利要求3所述的基于自治系统的区块链网络分隔攻击检测与防御方法,其特征在于:其中,步骤s2-3中,当查出的所述自治系统相同时,将查出的相同自治系统判断为攻击者,将所述节点路由经过所述相同自治系统的地址确定为所述恶意地址,并通过步骤s3的所述防御措施对所述恶意地址进行处理。5.根据权利要求3所述的基于自治系统的区块链网络分隔攻击检测与防御方法,其特征在于:其中,所述第一阈值根据所述节点在正常运行情况下,所述节点路由到达所述传出连接地址时,所述节点路由经过相同自治系统的传出连接个数的最大值进行设置,所述第二阈值根据所述节点在正常运行情况下,所述节点路由到达所述ip表中所述储
存地址时,所述节点路由经过相同自治系统的地址个数占ip表总地址数的最大占比进行设置。6.根据权利要求1所述的基于自治系统的区块链网络分隔攻击检测与防御方法,其特征在于:其中,步骤s2中,通过使用路由视图前缀到所述自治系统的映射来将所述传出连接地址和所述储存地址映射到所述自治系统,所述节点路由到达所述传出连接地址和所述储存地址所经过的自治系统路径通过所述路由视图进行查阅。

技术总结
本发明提供了一种基于自治系统的区块链网络分隔攻击检测与防御方法,用于对区块链网络的节点受到的分隔攻击进行检测与防御,包括以下步骤:步骤S1,当节点发生重启时,进入步骤S2;步骤S2,节点对节点路由到达传出连接地址经过的自治系统以及到达IP表中储存地址经过的自治系统进行检测,判断是否正在遭受分隔攻击,如果判断为没有遭受分隔攻击,节点正常运行,如果判断为正在遭受分隔攻击,则进入步骤S3;步骤S3,节点生成正在遭受分隔攻击的报警信息,停止一切信息交互并启动防御措施,防御完成后正常运行节点,其中,步骤S3中,防御措施为:立即断开与恶意地址的全部传出连接,清除IP表中的恶意地址,并向DNS种子重新申请健康地址。地址。地址。


技术研发人员:李家航 何肽威
受保护的技术使用者:复旦大学
技术研发日:2023.04.03
技术公布日:2023/7/28
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐