本技术涉及安全,具体而言,涉及一种拟态防御方法、装置、电子设备及存储介质。
背景技术:
1、在当前的信息化时代,数据存储系统具有至关重要的价值。数据存储系统负责存储和处理大量的业务数据、用户数据和个人数据。数据存储系统面临着各种安全威胁,针对数据存储系统常见的攻击有数据篡改、插入虚假记录、窃取数据、破坏数据系统、利用数据系统植入漏洞。拟态防御技术是以动态异构冗余构造为核心的内生安全理论,能够防范基于未知和已知漏洞后门等的安全威胁,大幅增强了关键业务网络应对外部入侵和内部渗透的能力。
2、拟态产品是在现有的网络设备基础上,融合拟态防御技术,在其架构中引入多个异构处理引擎作为异构执行体,并包含硬件实现的拟态调度器等部件实现的拟态网络基础设施设备,能有效应对未知漏洞后门病毒木马等不确定性威胁,极大提高攻击难度和攻击代价,保证网络空间的安全性。
3、拟态防御的核心是动态异构冗余(dynamic heterogeneous redundancy,dhr)构造,各个异构执行体之间功能等价,但受到攻击后的行为表现各异,表决器通过对比各执行体之间的行为是否一致来判断是否遭到攻击,一旦表决器判定为遭到攻击,则拟态调度器可从离线的异构执行体中挑选合适的执行体对在线遭受攻击的执行体进行替换。
4、现有拟态防御技术的数据存储系统只是在最终执行结果层面进行表决,而新型攻击或未知的安全漏洞可能突破现有的防御手段,导致网络设备中的关键数据受到攻击。
技术实现思路
1、本技术实施例的目的在于提供一种拟态防御方法、装置、电子设备及存储介质,用以改善现有方法的拟态防御能力弱的问题。
2、第一维度,本技术实施例提供了一种拟态防御方法,所述方法包括:
3、获取输入信息,所述输入信息用于指示对数据库的操作;
4、通过多个异构执行体从多个维度对所述输入信息进行处理,获得相应的处理结果,所述处理结果包括输入参数匹配结果、sql命令构造结果、操作预处理结果以及数据库执行结果中的至少一种;
5、对所述多个异构执行体的处理结果进行裁决。
6、在上述实现过程中,通过多个异构执行体从多个维度对输入信息进行处理,获得相应的处理结果,处理结果包括输入参数匹配结果、sql命令构造结果、操作预处理结果以及数据库执行结果中的至少一种,然后对多个异构执行体的处理结果进行裁决,如此可从多个方面来进行拟态防御,进而可有效提高拟态防御能力,确保数据安全。
7、可选地,所述通过多个异构执行体从多个维度对所述输入信息进行处理,获得相应的处理结果,包括:
8、通过多个异构执行体按照设定的顺序从多个维度对所述输入信息进行处理,获得相应的处理结果。这样可以按照顺序来对输入信息进行处理,以避免处理过程并行而导致裁决有误的问题。
9、可选地,所述通过多个异构执行体按照设定的顺序从多个维度对所述输入信息进行处理,获得相应的处理结果,包括:
10、在对所述多个异构执行体的第一处理结果裁决通过时,通过所述多个异构执行体按照设定的顺序从第二维度对所述输入信息进行处理,获得相应的第二处理结果,其中,所述第一处理结果为所述多个异构执行体从第一维度对所述输入信息进行处理获得的,所述第一维度和所述第二维度为按照设定的顺序排序的相邻两个维度。
11、在上述实现过程中,在一个处理结果裁决通过时,才进行后续的处理和裁决,如此可优先将效率较高的处理结果进行裁决,提高对数据库攻击的检查效率,避免资源浪费。
12、可选地,若所述处理结果包括输入参数匹配结果,则所述多个维度包括输入参数匹配维度,所述通过多个异构执行体从多个维度对所述输入信息进行处理,获得相应的处理结果,包括:
13、通过多个异构执行体对所述输入信息进行相关参数的匹配,获得对应的输入参数匹配结果,所述相关参数包括关键字、关键符号、敏感字符串和自定义字符中的至少一种。
14、在上述实现过程中,通过对输入信息的相关参数进行匹配,并对输入参数匹配结果进行裁决,如此可对恶意用户的非法输入进行检测。
15、可选地,若所述处理结果包括sql命令构造结果,则所述多个维度包括sql命令构造维度,所述通过多个异构执行体从多个维度对所述输入信息进行处理,获得相应的处理结果,包括:
16、通过多个异构执行体根据所述输入信息构造对应的sql命令,获得相应的sql命令构造结果。如此可检测异构执行体在参数接收处理过程中所包含的漏洞攻击。
17、可选地,所述对所述多个异构执行体的处理结果进行裁决,包括:
18、若所述多个异构执行体中采用的数据库相同时,对所述多个异构执行体的sql命令构造结果进行预处理,并对预处理后的sql命令构造结果进行裁决,其中,所述预处理包括提取空格、转换大小写中的至少一种;
19、若所述多个异构执行体中采用的数据库不同时,提取所述多个异构执行体的sql命令构造结果中的关键参数,并对所述关键参数进行裁决。
20、在上述实现过程中,在多个异构执行体采用的数据库相同或不同时,分别对sql命令构造结果进行不同处理后才进行裁决,如此可适应不同的场景,提高裁决的准确性。
21、可选地,若所述处理结果包括操作预处理结果,则多个维度包括操作预处理维度,所述通过多个异构执行体从多个维度对所述输入信息进行处理,获得相应的处理结果,包括:
22、通过多个异构执行体根据所述输入信息构造对应的sql命令;
23、在各个异构执行体的数据库中建立相应的事务,并通过所述事务执行对应的sql命令,获得操作预处理结果。
24、在上述实现过程中,通过事务执行对应的sql命令,以对操作预处理结果进行裁决,从而能够准确地检测出异常的异构执行体,便于维护人员对裁决事件进行分析定位。
25、可选地,所述对所述多个异构执行体的处理结果进行裁决,包括:
26、若所述操作预处理结果的字符长度小于或等于设定阈值,则对所述多个异构执行体的操作预处理结果进行裁决;
27、若所述操作预处理结果的字符长度大于设定阈值,则采用模糊匹配方式对所述多个异构执行体的操作预处理结果进行裁决。
28、在上述实现过程中,根据操作预处理结果的字符长度来采用不同的裁决方式,如此可提高数据比对的效率,即提高裁决效率。
29、可选地,若所述处理结果包括数据库执行结果,则所述多个维度包括数据执行维度,所述通过多个异构执行体从多个维度对所述输入信息进行处理,获得相应的处理结果,包括:
30、通过多个异构执行体根据所述输入信息构造对应的sql命令;
31、通过所述多个异构执行体中的数据库执行对应的sql命令,获得数据库执行结果。
32、在上述实现过程中,对数据库执行结果进行裁决,如此可检测数据库的攻击行为。
33、第二维度,本技术实施例提供了一种拟态防御装置,所述装置包括:
34、信息获取模块,用于获取输入信息,所述输入信息用于指示对数据库的操作;
35、信息处理模块,用于通过多个异构执行体从多个维度对所述输入信息进行处理,获得相应的处理结果,所述处理结果包括输入参数匹配结果、sql命令构造结果、操作预处理结果以及数据库执行结果中的至少一种;
36、裁决模块,用于对所述多个异构执行体的处理结果进行裁决。
37、第三维度,本技术实施例提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一维度提供的所述方法中的步骤。
38、第四维度,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一维度提供的所述方法中的步骤。
39、本技术的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术实施例了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。