1.本公开涉及互联网技术领域,更具体地,涉及一种侧信道攻击防御方法、侧信道攻击防御系统、存储介质和电子设备。
背景技术:2.边信道攻击(side channel attack简称sca),又称侧信道攻击,核心思想是通过加密软件或硬件运行时产生的各种泄露信息获取密文信息。随着互联网技术领域的发展,在容器使用过程中,非法用户通过发送大量恶意数据包的方式寻求侧信道攻击机会。
3.但是,相关技术中通过态势感知系统无法准确感知危险数据,难以主动抵御非法攻击,容易引起容器信息暴露。
4.需要说明的是,在上述背景技术部分发明的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现要素:5.本公开的目的在于提供一种侧信道攻击防御方法及系统、计算机存储介质和电子设备,进而提高侧信道的攻击防御能力。
6.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
7.根据本公开的一个方面,提供一种侧信道攻击防御方法,包括:
8.根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包;
9.根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息;
10.基于所述目标时延信息,对所述攻击数据包进行转发。
11.在本公开的一种示例性实施例中,所述根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包,包括:
12.从所述描述信息中获取所述通信数据包的描述信息特征;
13.将所述描述信息特征输入至预先训练的数据包识别模型进行预测,得到预测结果;
14.根据所述预测结果从所述通信数据包中确定所述攻击数据包;
15.其中,所述数据包识别模型是根据对应于不同数据包类型的描述信息特征样本训练得到,所述描述信息特征样本根据访问容器服务的不同上网行为所对应的通信数据包样本得到。
16.在本公开的一种示例性实施例中,所述根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息,包括:
17.从时延生成策略集中随机选择目标时延生成策略,作为所述预设的时延生成策略;
18.根据所述当前数据并发量,按照所述预设的时延生成策略,计算时延偏移量;
19.基于所述时延偏移量和所述实际时延信息,生成所述目标时延信息。
20.在本公开的一种示例性实施例中,所述根据所述当前数据并发量,按照所述预设的时延生成策略,计算时延偏移量,包括:
21.基于所述当前数据并发量,按照所述预设的时延生成策略,计算初始时延偏移量;
22.对所述初始时延偏移量进行归一化处理,得到所述时延偏移量。
23.在本公开的一种示例性实施例中,所述实际时延信息为接收所述攻击数据包时所述攻击数据包对应的当前网络时延;
24.所述基于所述时延偏移量和所述实际时延信息,生成所述目标时延信息,包括:
25.将所述时延偏移量融合至所述当前网络时延,生成所述目标时延信息。
26.在本公开的一种示例性实施例中,在所述根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包之后,在所述攻击数据包中添加攻击标记;
27.在所述基于所述目标时延信息,对所述攻击数据包进行转发之前,所述方法还包括:
28.在所述攻击数据包括中取消所述攻击标记。
29.在本公开的一种示例性实施例中,在所述基于所述目标时延信息,对所述攻击数据包进行转发之前,所述方法还包括:
30.获取所述容器的通信数据包按照实际网络时延信息进行传输时,所述实际网络时延信息随对应的数据并发量的第一分布结果;
31.获取所述容器的通信数据包的网络时延信息随对应的数据并发量的第二分布结果,所述网络时延信息中包括所述目标时延信息;
32.若所述第二分布结果与所述第一分布结果的分布趋势差异性符合时延修饰条件,则确定基于所述目标时延信息,对所述攻击数据包进行转发。
33.在本公开的一种示例性实施例中,所述描述信息至少包括所述攻击数据包的源端口信息、所述攻击数据包的源互联网协议ip地址、所述攻击数据包的协议号、所述攻击数据包的目标ip地址、所述攻击数据包的目标端口信息、传输控制协议tcp握手时延信息以及入侵检测系统对载荷数据的匹配结果信息。
34.根据本公开的一个方面,提供一种侧信道攻击防御系统,所述系统包括:
35.检测模块,用于根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包;
36.时延处理模块,用于根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息;
37.信息处理模块,用于基于所述目标时延信息,对所述攻击数据包进行转发。
38.根据本公开的一个方面,提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的方法。
39.根据本公开的一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储
所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的方法。
40.本公开的示例性实施例中的侧信道攻击防御方法,根据与容器进行通信的通信数据包的描述信息,对通信数据包进行检测,确定攻击数据包,根据攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成攻击数据包的目标时延信息,以基于目标时延信息对攻击数据包进行转发。一方面,作为对侧信道未知风险的有效补充,通过对容器的往来通信数据包进行检测,以识别可能存在恶意风险的攻击数据包,弥补态势感知系统对危险数据的感知能力,提高对攻击数据包的感知准确性;另一方面,生成攻击数据包的目标时延信息,使得攻击数据包以目标时延信息进行转发,混淆容器在使用过程中的通信数据包的时延信息,降低时延信息与并发量的相关性,以降低基于时延信息对容器信息的暴露风险,缩小容器使用过程中的风险暴露面,保护用户使用容器过程中的信息安全。
41.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
42.通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
43.图1示出了根据本公开示例性实施例所涉及的一种应用场景图;
44.图2示出了根据本公开示例性实施例的一种侧信道攻击防御方法的流程图;
45.图3示出了根据本公开示例性实施例的一种根据通信数据包的描述信息对通信数据包进行检测的流程图;
46.图4示出了根据本公开示例性实施例的一种生成目标时延信息的实现方式的流程图;
47.图5示出了根据本公开示例性实施例的一种标记攻击数据包的示意图;
48.图6示出了根据本公开示例性实施例的一种取消标记攻击数据包的示意图;
49.图7示出了根据本公开示例性实施例的一种基于容器性能曲线的数据包处理方法的流程图;
50.图8示出了根据本公开示例性实施例的一种根据实际网络时延信息与数据并发量生成的容器性能曲线的示意图;
51.图9示出了根据本公开示例性实施例的一种根据网络时延信息与数据并发量生成的容器性能曲线的示意图;
52.图10示出了根据本公开示例性实施例的应用场景下使用本公开实施例的侧信道攻击防御方法的流程示意图;
53.图11示出了根据本公开示例性实施例的一种侧信道攻击防御系统的架构示意图;
54.图12示出了根据本公开示例性实施例的电子设备的框图。
55.在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
56.现在将参考附图更全面地描述示例性实施方式。然而,示例性实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施例使得本公开将更加全面和完整,并将示例性实施方式的构思全面地传达给本领域的技术人员。图中相同的附图标记表示相同或类似的结构,因而将省略它们的详细描述。
57.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现或者操作以避免模糊本公开的各方面。
58.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个软件硬化的模块中实现这些功能实体或功能实体的一部分,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
59.在本领域的相关技术中,在容器的使用过程中,不同版本信息的容器存在性能表现上的差异,因此通过大量的性能检测数据观测,能得到反映容器性能的趋势图,例如绘制不同容器的网络开销随着数据并发量的开销曲线。由此能通过侧信道的方式暴露正在使用的容器版本信息,增加风险暴露面,为非法用户提供恶意攻击的契机进行有针对性的恶意攻击。
60.但是,相关技术中通过态势感知系统无法准确感知危险数据,进而也无法提供主动的侧信道攻击防御策略,难以保障用户在使用容器过程中的信息安全。
61.基于此,在本公开示例性实施例中,首先提供了一种侧信道攻击防御方法。参考图1为本公开示例性实施例所涉及的一种应用场景图。如图1所示,容器在使用过程中,由于网络映射nat(network address translation,网络地址转换)、磁盘i/o、cpu(central processing unit,中央处理器)内存等因素,容易增加时延rtt(round trip time,往返时间)。其中,终端设备101的数量可以为一个或多个,终端设备可以为智能手机、平板电脑、台式电脑、可穿戴电子设备等,在此不做限定。
62.值得说明的是,图1中的容器102的数目仅仅是示意性的,根据实际实施需要,可以具有任意数量的容器,例如可以为容器集群。本公开对此不做特殊限定。
63.如图2示出了根据本公开实施例的一种侧信道攻击防御方法的流程图,如图2所示,本公开实施例的侧信道攻击防御方法可以包括步骤s210至步骤s230:
64.步骤s210:根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包;
65.步骤s220:根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息;
66.步骤s230:基于所述目标时延信息,对所述攻击数据包进行转发。
67.根据本公开实施例的侧信道攻击防御方法,作为对侧信道未知风险的有效补充,通过对容器的往来通信数据包进行检测,以识别可能存在恶意风险的攻击数据包,弥补态势感知系统对危险数据的感知能力,提高对攻击数据包的感知准确性;生成攻击数据包的
目标时延信息,使得攻击数据包以目标时延信息进行转发,混淆容器在使用过程中的通信数据包的时延信息,降低时延信息与并发量的相关性,以降低基于时延信息对容器信息的暴露风险,缩小容器使用过程中的风险暴露面,保护用户使用容器过程中的信息安全。
68.下面结合图2对本公开实施例的侧信道攻击防御方法进行详细阐述。
69.在步骤s210中,根据容器对应的通信数据包的描述信息,对通信数据包进行检测,以确定攻击数据包。
70.在本公开示例性实施例中,通信数据包为容器在使用过程中,用户访问容器服务时与容器通信的数据包,描述信息是对数据包内容的描述,包括但不限于攻击数据包的源端口信息、攻击数据包的源互联网协议ip地址、攻击数据包的协议号、攻击数据包的目标ip地址、攻击数据包的目标端口信息、传输控制协议tcp握手时延信息以及入侵检测系统对载荷数据的匹配结果信息等。
71.其中,根据通信数据包的描述信息对通信数据包进行检测可以包括以下步骤s310至步骤s330:
72.步骤s310,从描述信息中获取通信数据包的描述信息特征。
73.在用户访问容器服务时,提取通信数据包中的描述信息特征,如攻击数据包的源端口信息、攻击数据包的源互联网协议ip地址、攻击数据包的协议号、攻击数据包的目标ip地址等,该些描述信息特征能反映通信数据包的实际内容。当然,本公开实施例可根据实际的侧信道攻击防御场景,以及通信数据包的实际情况,提取各通信数据包的描述信息特征。
74.步骤s320,将描述信息特征输入至预先训练的数据包识别模型进行预测,得到预测结果。
75.预先训练的数据包识别模型是根据对应于不同数据包类型的描述信息特征样本训练得到,描述信息特征样本根据访问容器服务的不同上网行为所对应的通信数据包样本得到。
76.其中,可以收集不同上网行为所对应的通信数据包,不同上网行为可以包括合规上网行为和恶意攻击上网行为,通过收集到的通信数据包构建通信数据包样本。在一些可能的实施方式中,若收集到的恶意攻击上网行为所对应的通信数据包样本较少,还可以构建恶意攻击上网行为,以得到构建恶意上网行为的通信数据包样本;相应的,为了避免构建样本影响模型训练和预测效果,也可以同时构建合规上网行为,以得到构建合规上网行为的通信数据包样本。
77.进一步的,基于得到的通信数据包样本训练数据包识别模型,以用于通信数据包的检测。其中,数据包识别模型可以为随机森林模型,随机森林模型可以包括对应于不同上网行为以及不同描述信息特征的多个决策树。
78.本公开实施例可以根据通信数据包样本训练用于进行数据包识别的随机森林分类模型。当获取到容器对应的通信数据包的描述信息时,提取描述信息特征并输入至预先训练得到的随机森林分类模型。随机森林分类模型包括多个决策树,每个决策树对应的数据包类型可以相同,也可以不同,每个决策树对应的描述信息特征可以相同也可以不同。例如,决策树a对应的数据包类型为攻击数据包,决策树b对应的数据包类型为正常数据包,决策树c对应的数据包类型为攻击数据包。其中,决策树a对应的描述信息特征包括a、b和c,决策树b对应的描述信息特征包括a、b和e,决策树c可以与决策树a具有相同的描述信息特征,
也可以对应于不同描述信息特征,决策树c可以与决策树b具有相同的描述信息特征,也可以不同。
79.在本公开实施例的随机森林分类模型中,每个决策树具有不完全相同的描述信息特征,通过充分组合各种描述信息特征,各决策树中的描述信息特征可以随机选取,可以获得具有不同关注点的决策树,以让每个决策树可以从不同分类角度对通信数据包进行识别分类。
80.步骤s330,根据预测结果从通信数据包中确定攻击数据包。
81.基于数据包识别模型的预测结果,可以从往来容器的通信数据包中识别出攻击数据包。以数据包识别模型为随机森林分类模型为例,随机森林分类模型的每个决策树得到一个子预测结果,单个决策树的预测结果可能存在偏差,所以在本公开实施例中,可以将各决策树的预测结果进行组合,得到每个通信数据包的预测结果,基于此可兼顾不同数据包类型的各种描述信息特征,提高预测准确率。
82.通过本公开示例性实施例,在侧信道攻击防御中,由于态势感知系统并不能准确感知危险数据,不可避免地遗漏风险项,引起用户的信息安全问题,本公开实施例通过对往来容器的通信数据包的描述信息进行检测,以捕获可能存在风险的攻击数据包,以便作进一步主动防御处理,是对侧信道未知风险识别和防御的有效补充,提高容器运行的安全性。
83.在步骤s220中,根据攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成攻击数据包的目标时延信息。
84.在本公开的示例性实施例中,时延信息,即rtt(round trip time,往返时延),用于表征从发送端发送数据开始,到发送端收到来自接收端的确认(接收端节后到数据后便立即发送确认),总共经历的时延。当前数据并发量是指接收到攻击数据包时所对应的数据并发量,实际时延信息是指从发送端发送数据开始,到侧信道攻击防御系统接收到供给数据包,总共经历的时延。
85.其中,目标时延信息是用于对通信数据包所附加的时延信息。例如,如通信数据包为非攻击数据包,则在检测该通信数据包为非攻击数据包时,不做任何处理,将该通信数据包按照正常路径转发即可。相反,若通信数据包为攻击数据包,则在检测该通信数据包为攻击数据包时,对该攻击数据包不直接进行转发,而是按照目标时延信息,延长转发时机,即等待目标时延信息对应的时长后,再将该攻击数据包进行转发。
86.基于此,对于恶意发出攻击数据包的用户来说,获知的时延信息是经过修饰混淆过的时延,对于其寻求时延与数据并发量之间的关系造成干扰作用,进而避免了容器信息的暴露。
87.在捕获攻击数据包后,可以根据攻击数据包的当前数据并发量和是时延信息,按照预设的时延生成策略,生成目标时延信息,以将目标时延信息附加至该攻击数据包。
88.在步骤230中,基于目标时延信息,对攻击数据包进行转发。
89.在本公开的示例性实施例中,在获得各攻击数据包对应的目标时延信息后,按照目标时延信息对各攻击数据包进行转发。其中,可以调用时延服务器获得各攻击数据包的目标时延信息,并以目标时延信息控制各攻击数据包的转发。
90.通过本公开示例性实施例,生成攻击数据包的目标时延信息,使得攻击数据包以目标时延信息进行转发,混淆容器在使用过程中的通信数据包的时延信息,降低时延信息
与并发量的相关性,以降低基于时延信息对容器信息的暴露风险,缩小容器使用过程中的风险暴露面,保护用户使用容器过程中的信息安全。
91.在本公开一示例性实施例中,提供一种生成目标时延信息的实现方式。根据攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成攻击数据包的目标时延信息可以包括步骤s410至步骤s430:
92.步骤s410:从时延生成策略集中随机选择目标时延生成策略,作为预设的时延生成策略。
93.在本公开的示例性实施例中,可以预先设置时延生成策略集,该时延生成策略集中包括不同的时延生成策略,按照不同的时延生成策略可以随机化地生成无规律性的时延偏移量。
94.示例性的,时延生成策略集可以包括以下几种时延生成策略:
95.策略1)
96.策略2)
97.策略3)f(x)=x(x-1)(x-a)
98.其中,x为攻击数据包对应的当前数据并发量,f(x)为时延偏移量,a,b,n以及l为预设的计算因子,可根据实际需求设定,本公开实施例对此不做特殊限定。值得说明的是,以上几种时延生成策略仅是示例性的,本公开实施例可以根据实际应用需求,对时延生成策略集中增加或删除时延生成策略,实现时延生成策略集的更新维护。
99.本公开的示例性实施例中,在确定通信数据包为攻击数据包后,可以从时延生成策略集中随机选择目标时延生成策略作为预设的时延生成策略,通过随机选择目标时延生成策略,增加计算时延偏移量的随机性,进而提高时延信息的生成随机性。
100.步骤s420:根据当前数据并发量,按照预设的时延生成策略,计算时延偏移量。
101.在本示例性实施例中,在获取预设的时延生成策略后,以当前数据并发量作为自变量入参,按照预设的时延生成策略计算时延偏移量。
102.其中,可以先基于当前数据并发量,按照预设的时延生成策略,计算初始时延偏移量,然后对初始时延偏移量进行归一化处理,得到时延偏移量。其中,可以按照以下公式对初始时延偏移量进行归一化处理:
103.其中,γ
scale
时延偏移量,γ为初始时延偏移量,γ
min
和γ
max
是与实际应用场景的正常时延的指定范围相关的参数,通过对按照预设的时延生成策略得到的初始时延偏移量进行归一化处理,使得到的时延偏移量控制在正常时延的指定范围内,从而避免因对时延信息的调整修饰影响实际应用工程的正常进行。
104.步骤s430:基于时延偏移量和实际时延信息,生成目标时延信息。
105.在本示例性实施例中,实际时延信息为接收攻击数据包时,攻击数据包对应的当前网络时延,亦即从发送端发送数据开始,到侧信道攻击防御系统接收到供给数据包,总共经历的时延。基于时延偏移量和实际时延信息,生成目标时延信息可以将时延偏移量融合至当前网络时延,生成目标时延信息。
106.其中,可以采用以下公式将时延偏移量融合至当前网络时延:
107.公式
△
rtt=rtt
×
γ
scale
×
c%其中,
△
rtt为目标时延信息,γ
scale
为时延偏移量,c是与实际应用场景的正常时延的指定范围相关的参数,根据实际应用场景确定,例如为10%。
108.本公开实施例通过将时延偏移量附加至攻击数据包对应的当前网络时延,以改变攻击数据包所对应的时延信息的实际分布,减少因时延信息引起的暴露面。
109.在本公开一示例性实施例中,还提供一种对攻击数据包进行标记的实现方式。本公开实施例在根据容器对应的通信数据包的描述信息,对通信数据包进行检测,以确定攻击数据包之后,在攻击数据包中添加攻击标记。
110.如图5示出了根据本公开实施例的一种标记攻击数据包的示意图。如图5所示,通过在传输协议控制tcp包(攻击数据包)中的预留的可选字段进行编辑(方框框选区域),例如将可以字段置为0x01,反之为0x00,从而可以对攻击数据包进行标记。相应的,在基于目标时延信息,对攻击数据包进行转发之前,还可以将tcp数据包中相应的可选字段恢复为0x00,使攻击数据包与接收数据包一致,如图6所示,在通过tcp时延服务器转发攻击数据包之前,取消tcp数据包的攻击标记。
111.本公开实施例通过将攻击数据包进行标记,可以通过侧信道攻击防御系统对攻击数据包的时延信息进行修饰,得到目标时延信息,而在转发攻击数据包之前,取消攻击数据包中的攻击标记,以避免暴露本公开实施例的侧信道攻击防御系统对攻击数据包的时延信息的修饰操作,降低被再次攻击的风险。
112.在本公开一示例性实施例中,为了进一步确保通过本公开实施例生成的目标时延信息的防御有效性,还提供一种基于容器性能曲线的数据包处理方法。在基于目标时延信息,对攻击数据包进行转发之前,还可以通过以下步骤s710至步骤s730:
113.步骤s710,获取容器的通信数据包按照实际网络时延信息进行传输时,实际网络时延信息随对应的数据并发量的第一分布结果。
114.其中,当对于容器的通信数据包的时延信息不进行附加修饰,则容器的通信数据包按照实际网络时延进行传输时,可以获取实际网络时延信息随对应的数据并发量的第一分布结果,如图8所示为根据本公开示例性实施例的一种根据实际网络时延信息与数据并发量生成的容器性能曲线的示意图。由图8可知,对于不同版本的容器可以得到对应的网络时延开销曲线,从而可以根据该网络时延开销曲线容易获知各曲线实际对应的容器版本信息。
115.步骤s720,获取容器的通信数据包的网络时延信息随对应的数据并发量的第二分布结果,网络时延信息中包括目标时延信息。
116.其中,可以获取包括目标时延信息的网络时延信息与对应的数据并发量的第二分布结果,如图9所示为根据本公开示例性实施例的一种根据网络时延信息(包括目标时延信息)与数据并发量生成的容器性能曲线的示意图。由图9可知,通过对时延进行附件修饰,使得时延信息与数据并发量呈现随机分布,降低二者的相关性,以降低时延信息暴露容器版本信息的风险,缩小容器使用过程中的风险暴露面,保护用户在使用容器过程中的信息安全。
117.步骤s730,若第二分布结果与第一分布结果的分布趋势差异性符合时延修饰条
件,则确定基于目标时延信息,对攻击数据包进行转发。
118.在本示例性实施例中,可以在基于目标时延信息,对攻击数据包进行转发之前,确定第二分布结果与第一分布结果的分布趋势差异性符合时延修饰条件。
119.其中,时延修饰条件可以为第二分布结果与第一分布结果的分布趋势差异性较大,例如通过第二分布结果无法拟合得到第一分布结果的分布趋势,则认为第二分布结果与第一分布结果的分布趋势差异性较大,也就是说,通过第二分布结果不能得到时延信息与数据并发量的相关性。
120.本公开实施例通过在基于目标时延信息,对攻击数据包进行转发之前,确定第二分布结果与第一分布结果的分布趋势差异性较大,进一步确保目标时延信息能降低暴露容器版本几率。相反,若第二分布结果与第一分布结果的分布趋势差异性不符合时延修饰条件,例如通过第二分布结果能够拟合得到第一分布结果,即得到时延信息与数据并发量之间的相关性,则还可以重新选择目标时延生成策略,生成计算目标时延信息,使得最终的第二分布结果与第一分布结果的分布趋势差异性较大。
121.图10示出了应用场景下使用本公开实施例的侧信道攻击防御方法的流程示意图,如图10所示,通过攻击数据包需要大量访问才能收集到足够的容器信息,本公开实施例通过侧信道攻击防御系统对访问容器服务的容器对应的通信数据包进行检测。
122.若通过通信数据包的描述信息检测到攻击数据包,则可以从时延生成策略集中随机选择目标时延生成策略,作为预设的时延生成策略;
123.根据当前数据并发量,按照预设的时延生成策略,计算时延偏移量;将时延偏移量融合至当前网络时延,生成目标时延信息。其中,目标时延信息通常不超过实际工程要求的正常时延的指定范围,例如目标时延信息通常不超过实际工程要求的正常时延的10%。
124.最后,基于目标时延信息,对攻击数据包进行转发。其中,转发层可以以使攻击数据包的实际时延上增加目标时延信息,以增大时延信息的随机性,降低侧信道暴露风险。
125.由以上可知,本公开实施例的侧信道攻击防御方法,根据与容器进行通信的通信数据包的描述信息,对通信数据包进行检测,确定攻击数据包,根据攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成攻击数据包的目标时延信息,以基于目标时延信息对攻击数据包进行转发。作为对侧信道未知风险的有效补充,通过对容器的往来通信数据包进行检测,以识别可能存在恶意风险的攻击数据包,弥补态势感知系统对危险数据的感知能力,提高对攻击数据包的感知准确性;生成攻击数据包的目标时延信息,使得攻击数据包以目标时延信息进行转发,混淆容器在使用过程中的通信数据包的时延信息,降低时延信息与并发量的相关性,以降低基于时延信息对容器信息的暴露风险,缩小容器使用过程中的风险暴露面,保护用户使用容器过程中的信息安全。
126.此外,根据本公开的示例性实施例,还提供一种侧信道攻击防御系统,如图11所示,该系统1100包括:
127.检测模块1110,用于根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包;
128.时延处理模块1120,用于根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息;
129.信息处理模块1130,用于基于所述目标时延信息,对所述攻击数据包进行转发。
130.在本公开一示例性实施例中,检测模块1110可以包括:
131.信息提取单元,用于从所述描述信息中获取所述通信数据包的描述信息特征;
132.信息预测单元,用于将所述描述信息特征输入至预先训练的数据包识别模型进行预测,得到预测结果;
133.信息确定单元,用于根据所述预测结果从所述通信数据包中确定所述攻击数据包;
134.其中,所述数据包识别模型是根据对应于不同数据包类型的描述信息特征样本训练得到,所述描述信息特征样本根据访问容器服务的不同上网行为所对应的通信数据包样本得到。
135.在本公开一示例性实施例中,时延处理模块1120可以包括:
136.策略确定单元,用于从时延生成策略集中随机选择目标时延生成策略,作为所述预设的时延生成策略;
137.计算单元,用于根据所述当前数据并发量,按照所述预设的时延生成策略,计算时延偏移量;
138.信息生成单元,用于基于所述时延偏移量和所述实际时延信息,生成所述目标时延信息。
139.在本公开一示例性实施例中,计算单元可以包括:
140.第一计算单元,用于基于所述当前数据并发量,按照所述预设的时延生成策略,计算初始时延偏移量;
141.归一化处理单元,用于对所述初始时延偏移量进行归一化处理,得到所述时延偏移量。
142.在本公开一示例性实施例中,所述实际时延信息为接收所述攻击数据包时所述攻击数据包对应的当前网络时延;
143.信息生成单元被配置为:将所述时延偏移量融合至所述当前网络时延,生成所述目标时延信息。
144.在本公开一示例性实施例中,所述侧信道攻击防御系统1100还可以包括数据标记模块,用于在所述根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包之后,在所述攻击数据包中添加攻击标记;
145.以及数据标记模块还用于在所述基于所述目标时延信息,对所述攻击数据包进行转发之前,在所述攻击数据包括中取消所述攻击标记。
146.在本公开一示例性实施例中,侧信道攻击防御系统1100还可以包括:
147.第一分布获取模块,用于获取所述容器的通信数据包按照实际网络时延信息进行传输时,所述实际网络时延信息随对应的数据并发量的第一分布结果;
148.第二分布获取模块,用于获取所述容器的通信数据包的网络时延信息随对应的数据并发量的第二分布结果,所述网络时延信息中包括所述目标时延信息;
149.结果处理模块,用于若所述第二分布结果与所述第一分布结果的分布趋势差异性符合时延修饰条件,则确定基于所述目标时延信息,对所述攻击数据包进行转发。
150.在本公开一示例性实施例中,所述描述信息至少包括所述攻击数据包的源端口信息、所述攻击数据包的源互联网协议ip地址、所述攻击数据包的协议号、所述攻击数据包的
目标ip地址、所述攻击数据包的目标端口信息、传输控制协议tcp握手时延信息以及入侵检测系统对载荷数据的匹配结果信息。
151.由于本公开的示例性实施例的侧信道攻击防御系统的各个功能模块(单元)的具体细节在上述侧信道攻击防御方法的发明实施例中已经详细说明,因此不再赘述。
152.应当注意,尽管在上文详细描述中提及了侧信道攻击防御系统的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
153.此外,在本公开示例性实施方式中,还提供了一种能够实现上述方法的计算机存储介质。其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。
154.本公开实施例还提供用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
155.所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
156.计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
157.可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
158.可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
159.此外,在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。
160.下面参照图12来描述根据本公开的这种实施例的电子设备1200。图12显示的电子设备1200仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
161.如图12所示,电子设备1200以通用计算设备的形式表现。电子设备1200的组件可以包括但不限于:上述至少一个处理单元1210、上述至少一个存储单元1220、连接不同系统组件(包括存储单元1220和处理单元1210)的总线1230、显示单元1240。
162.其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1210执行,使得所述处理单元1210执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。
163.存储单元1220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)1221和/或高速缓存存储单元1222,还可以进一步包括只读存储单元(rom)1223。
164.存储单元1220还可以包括具有一组(至少一个)程序模块1225的程序/实用工具1224,这样的程序模块1225包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
165.总线1230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
166.电子设备1200也可以与一个或多个外部设备1300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1200交互的设备通信,和/或与使得该电子设备1200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1250进行。并且,电子设备1200还可以通过网络适配器1260与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1260通过总线1230与电子设备1200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
167.通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。
168.此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
169.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者
适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
技术特征:1.一种侧信道攻击防御方法,其特征在于,包括:根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包;根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息;基于所述目标时延信息,对所述攻击数据包进行转发。2.根据权利要求1所述的方法,其特征在于,所述根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包,包括:从所述描述信息中获取所述通信数据包的描述信息特征;将所述描述信息特征输入至预先训练的数据包识别模型进行预测,得到预测结果;根据所述预测结果从所述通信数据包中确定所述攻击数据包;其中,所述数据包识别模型是根据对应于不同数据包类型的描述信息特征样本训练得到,所述描述信息特征样本根据访问容器服务的不同上网行为所对应的通信数据包样本得到。3.根据权利要求1所述的方法,其特征在于,所述根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息,包括:从时延生成策略集中随机选择目标时延生成策略,作为所述预设的时延生成策略;根据所述当前数据并发量,按照所述预设的时延生成策略,计算时延偏移量;基于所述时延偏移量和所述实际时延信息,生成所述目标时延信息。4.根据权利要求3所述的方法,其特征在于,所述根据所述当前数据并发量,按照所述预设的时延生成策略,计算时延偏移量,包括:基于所述当前数据并发量,按照所述预设的时延生成策略,计算初始时延偏移量;对所述初始时延偏移量进行归一化处理,得到所述时延偏移量。5.根据权利要求3所述的方法,其特征在于,所述实际时延信息为接收所述攻击数据包时所述攻击数据包对应的当前网络时延;所述基于所述时延偏移量和所述实际时延信息,生成所述目标时延信息,包括:将所述时延偏移量融合至所述当前网络时延,生成所述目标时延信息。6.根据权利要求1至5中任一项所述的方法,其特征在于,在所述根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包之后,在所述攻击数据包中添加攻击标记;在所述基于所述目标时延信息,对所述攻击数据包进行转发之前,所述方法还包括:在所述攻击数据包括中取消所述攻击标记。7.根据权利要求1至5中任一项所述的方法,其特征在于,在所述基于所述目标时延信息,对所述攻击数据包进行转发之前,所述方法还包括:获取所述容器的通信数据包按照实际网络时延信息进行传输时,所述实际网络时延信息随对应的数据并发量的第一分布结果;获取所述容器的通信数据包的网络时延信息随对应的数据并发量的第二分布结果,所述网络时延信息中包括所述目标时延信息;
若所述第二分布结果与所述第一分布结果的分布趋势差异性符合时延修饰条件,则确定基于所述目标时延信息,对所述攻击数据包进行转发。8.根据权利要求1至5任一项所述的方法,其特征在于,所述描述信息至少包括所述攻击数据包的源端口信息、所述攻击数据包的源互联网协议ip地址、所述攻击数据包的协议号、所述攻击数据包的目标ip地址、所述攻击数据包的目标端口信息、传输控制协议tcp握手时延信息以及入侵检测系统对载荷数据的匹配结果信息。9.一种侧信道攻击防御系统,其特征在于,所述系统包括:检测模块,用于根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包;时延处理模块,用于根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息;信息处理模块,用于基于所述目标时延信息,对所述攻击数据包进行转发。10.一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至8中任一项所述的方法。
技术总结本公开涉及互联网技术领域,涉及侧信道攻击防御方法及系统、存储介质和电子设备,包括:根据容器对应的通信数据包的描述信息,对所述通信数据包进行检测,以确定攻击数据包;根据所述攻击数据包对应的当前数据并发量和实际时延信息,按照预设的时延生成策略,生成所述攻击数据包的目标时延信息;基于所述目标时延信息,对所述攻击数据包进行转发。本公开对攻击数据包的时延信息进行调整修饰,降低时延信息与数据并发量的相关性,以降低时延信息暴露容器信息的几率,提高侧信道的攻击防御能力。提高侧信道的攻击防御能力。提高侧信道的攻击防御能力。
技术研发人员:王鸿 葛帅 袁淑美
受保护的技术使用者:中国电信股份有限公司
技术研发日:2022.06.22
技术公布日:2022/11/1