发明内容
有鉴于此,本发明提供一种网络告警数据处理方法及装置,以解决目前网络管理员几乎不能在短时间内完成安全事件的识别并部署防御工作,从而给网络系统的正常运行带来隐患的问题。技术方案如下:
一种网络告警数据处理方法,包括:
根据预设标准属性对收集到的各个原始网络告警数据进行预处理,得到包含标准属性信息的候选网络告警数据,所述标准属性包括告警时间、攻击源IP、攻击目的IP、告警名称、源端口以及目的端口;
对全部所述候选网络告警数据进行去重处理,得到至少一个当前网络告警数据;
根据各个所述当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列,并按照告警时间信息对各个所述初始告警序列中的全部所述当前网络告警数据进行排序,得到相应告警序列;
对于各个所述告警序列,提取该告警序列中各个所述当前网络告警数据的攻击源IP信息和攻击目的IP信息,并生成IP序列;
对于各个所述IP序列,根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则。
优选的,所述对全部所述候选网络告警数据进行去重处理,得到至少一个当前网络告警数据,包括:
对全部所述候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组;
对于各个所述告警数据组中的每一个所述候选网络告警数据,分别选取组内其他所述候选网络告警数据作为比较网络告警数据;
根据告警时间信息、攻击源IP信息、攻击目的IP信息、告警名称信息、源端口信息、目的端口信息及其各自对应的权重值,计算该候选网络告警数据与所述比较网络告警数据的相似度值;
判断所述相似度值是否大于相似度阈值;
若是,删除所述候选网络告警数据。
优选的,所述对全部所述候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组,包括:
将原始网络告警数据的收集时长划分为至少一个子时段,并为每一个所述子时段分配唯一的时段标识;
对于各个所述候选网络告警数据,根据该候选网络告警数据的告警时间信息确定所属子时段,并为该候选网络告警数据添加所属子时段的时段标识;
对时段标识相同的各个所述候选网络告警数据进行聚类,得到至少一个告警数据组。
优选的,所述根据各个所述当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列,包括:
选取一个所述当前网络告警数据,并生成一个包含有该当前网络告警数据的初始告警序列;
依次从剩余的全部所述当前网络告警数据中选取一个作为待处理当前网络告警数据;
判断检测到的全部所述初始告警序列中是否存在攻击源IP信息或者攻击目的IP信息与所述待处理当前网络告警数据的攻击源IP信息相同的初始告警序列;
若是,将所述待处理当前网络告警数据添加至相应所述初始告警序列中;
若否,生成一个包含有所述待处理当前网络告警数据的初始告警序列。
优选的,所述根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则,包括:
生成该IP序列的至少一个连续的子序列;
对于各个所述子序列,计算该子序列的支持度并判断所述支持度是否大于支持度阈值;
若是,提取所述子序列;
根据提取到的全部所述子序列重新生成IP序列,并返回执行所述生成该IP序列的至少一个连续的子序列,这一步骤;
若否,计算该子序列的置信度;
判断计算得到的全部所述置信度是否都大于置信度阈值;
若是,根据各个所述子序列生成相应IP时序关联规则。
一种网络告警数据处理装置,包括:预处理模块、去重处理模块、告警序列生成模块、IP序列生成模块和关联分析模块;
所述预处理模块,用于根据预设标准属性对收集到的各个原始网络告警数据进行预处理,得到包含标准属性信息的候选网络告警数据,所述标准属性包括告警时间、攻击源IP、攻击目的IP、告警名称、源端口以及目的端口;
所述去重处理模块,用于对全部所述候选网络告警数据进行去重处理,得到至少一个当前网络告警数据;
所述告警序列生成模块,用于根据各个所述当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列,并按照告警时间信息对各个所述初始告警序列中的全部所述当前网络告警数据进行排序,得到相应告警序列;
所述IP序列生成模块,用于对于各个所述告警序列,提取该告警序列中各个所述当前网络告警数据的攻击源IP信息和攻击目的IP信息,并生成IP序列;
所述关联分析模块,用于对于各个所述IP序列,根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则。
优选的,用于对全部所述候选网络告警数据进行去重处理,得到至少一个当前网络告警数据的所述去重处理模块,具体用于:
对全部所述候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组;对于各个所述告警数据组中的每一个所述候选网络告警数据,分别选取组内其他所述候选网络告警数据作为比较网络告警数据;根据告警时间信息、攻击源IP信息、攻击目的IP信息、告警名称信息、源端口信息、目的端口信息及其各自对应的权重值,计算该候选网络告警数据与所述比较网络告警数据的相似度值;判断所述相似度值是否大于相似度阈值;若是,删除所述候选网络告警数据。
优选的,用于对全部所述候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组的所述去重处理模块,具体用于:
将原始网络告警数据的收集时长划分为至少一个子时段,并为每一个所述子时段分配唯一的时段标识;对于各个所述候选网络告警数据,根据该候选网络告警数据的告警时间信息确定所属子时段,并为该候选网络告警数据添加所属子时段的时段标识;对时段标识相同的各个所述候选网络告警数据进行聚类,得到至少一个告警数据组。
优选的,用于根据各个所述当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列的所述告警序列生成模块,具体用于:
选取一个所述当前网络告警数据,并生成一个包含有该当前网络告警数据的初始告警序列;选取一个所述当前网络告警数据,并生成一个包含有该当前网络告警数据的初始告警序列;依次从剩余的全部所述当前网络告警数据中选取一个作为待处理当前网络告警数据;判断检测到的全部所述初始告警序列中是否存在攻击源IP信息或者攻击目的IP信息与所述待处理当前网络告警数据的攻击源IP信息相同的初始告警序列;若是,将所述待处理当前网络告警数据添加至相应所述初始告警序列中;若否,生成一个包含有所述待处理当前网络告警数据的初始告警序列。
优选的,用于对于各个所述IP序列,根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则的所述关联分析模块,具体用于:
生成该IP序列的至少一个连续的子序列;对于各个所述子序列,计算该子序列的支持度并判断所述支持度是否大于支持度阈值;若是,提取所述子序列;根据提取到的全部所述子序列重新生成IP序列,并返回执行所述生成该IP序列的至少一个连续的子序列,这一步骤;若否,计算该子序列的置信度;判断计算得到的全部所述置信度是否都大于置信度阈值;若是,根据各个所述子序列生成相应IP时序关联规则。
基于本发明公开的方法,在关注网络告警数据之间关联度基础上,还实现对网络告警数据中隐藏的IP时序关联规则的挖掘。由于IP序列中包含有多个网络节点的IP地址,因此通过挖掘IP时序关联规则即可实现对攻击过程以及攻击目的的挖掘,这也就减少了网络管理员的工作量,从而达到快速部署防御工作的目的,进一步提高了网络系统的安全性。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开一种网络告警数据处理方法,方法流程图如图1所示,包括如下步骤:
S101,根据预设标准属性对收集到的各个原始网络告警数据进行预处理,得到包含标准属性信息的候选网络告警数据,所述标准属性包括告警时间、攻击源IP、攻击目的IP、告警名称、源端口以及目的端口;
在执行步骤S101的过程中,由于不同网络安全工具产生的数据格式不同,即使针对同一安全事件,不同的网络安全工具都会产生网络告警数据,并且可能存在误报和虚报的问题,因此可首先对收集到的原始网络告警数据进行数据预处理,目前可采用数据清洗、数据集成或数据规约的方式对不同数据格式的原始网络告警数据进行提取、分解以及合并等规范化处理,以提高数据的质量,同时提高后续网络告警数据处理的准确性和效率;
进一步,利用预设标准属性对进行完数据预处理后的原始网络告警数据进行筛选预处理,得到包含有标准属性信息的候选网络告警数据。
S102,对全部候选网络告警数据进行去重处理,得到至少一个当前网络告警数据;
在具体实现过程中,步骤S102“对全部候选网络告警数据进行去重处理,得到至少一个当前网络告警数据”可以具体采用以下步骤,方法流程图如图2所示:
S1001,对全部候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组;
在执行步骤S1001的过程中,由于时间属性是影响聚类的关键影响因素,因此可首先根据告警时间对候选网络告警数据进行分组;
在具体实现过程中,步骤S1001“对全部候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组”可以具体采用以下步骤,方法流程图如图3所示:
S10001,将原始网络告警数据的收集时长划分为至少一个子时段,并为每一个子时段分配唯一的时段标识;
S10002,对于各个候选网络告警数据,根据该候选网络告警数据的告警时间信息确定所属子时段,并为该候选网络告警数据添加所属子时段的时段标识;
S10003,对时段标识相同的各个候选网络告警数据进行聚类,得到至少一个告警数据组。
S1002,对于各个告警数据组中的每一个候选网络告警数据,分别选取组内其他候选网络告警数据作为比较网络告警数据;
S1003,根据告警时间信息、攻击源IP信息、攻击目的IP信息、告警名称信息、源端口信息目的端口信息及其各自对应的权重值,计算该候选网络告警数据与比较网络告警数据的相似度值;
在执行步骤S1003的过程中,首先确定各个标准属性对应的计算函数,然后利用确定的比较函数计算各个标准属性下的比较值,进一步根据各个标准属性的比较值及其对应的权重值计算候选网络告警数据与比较网络告警数据的相似度值,其中,告警时间、攻击源IP、攻击目的IP、告警名称、源端口和目的端口的比较函数可分别选取如下示出的公式,用户也可根据实际需要具体设置比较函数,本实施例不做任何限定;
对于告警时间这一标准属性,首先将原始网络告警数据的收集时长划分为至少一个子时段,告警时间的比较函数可采用如下公式(1)表示:
其中,τ为候选网络告警数据和比较网络告警数据所属子时段CWi的时长,T1为候选网络告警数据中的告警时间,T2为比较网络告警数据中的告警时间;
对于攻击源IP和攻击目的IP这两个标准属性,由于不管攻击源IP还是攻击目的IP,均是由4部分的IPV4或者6部分的IPV6构成的,因此,可按结构进行分段比较,攻击源IP的比较函数和攻击目的IP的比较函数均可采用如下公式(2)表示:
其中,IP1和IP2分别表示攻击源IP和攻击目的IP这两个标准属性中对应的IP,IP1i和IP2i分别表示对应IP1和IP2的各个部分,i为正整数,且i的取值范围为1≤i≤4或者1≤i≤8;
对于告警名称这一标准属性,由于告警名称的数据格式为字符串,因此,比较结果要么相同,要么不同,告警名称的比较函数,可采用如下公式(3)表示:
其中,AT1为候选网络告警数据的告警名称,AT2为比较网络告警数据的告警名称;
对于源端口和目的端口这两个标准属性,比较函数均可采用如下公式(4)表示:
其中,Port1为源端口或者目的端口的端口序列;
进一步,假设告警时间、攻击源IP、攻击目的IP、告警名称、源端口和目的端口每一个标准属性对应的权重值分别为ω、μ1、μ2、ε、σ1、σ2,则候选网络告警数据alert1与比较网络告警数据alert2的相似度值为P(Alert1,Alert2)=ω·P(Time)+μ1·P1(IP)+μ2·P2(IP)+ε·P(Name)+σ1·P1(Port)+σ2·P2(Port),其中,ω+μ1+μx+ε+σ1+σ2=1。
S1004,判断相似度值是否大于相似度阈值;若是,执行步骤S1005;
在执行步骤S1004的过程中,比较相似度值与相似度阈值;如果比较值大于相似度值,则表征候选网络告警数据与比较网络告警数据为相同的网络告警数据;如果比较值不大于相似度值,则表征候选网络告警数据与比较网络告警数据为不同的网络告警数据。
S1005,删除候选网络告警数据。
S103,根据各个当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列,并按照告警时间信息对各个初始告警序列中的全部当前网络告警数据进行排序,得到相应告警序列;
在具体实现过程中,步骤S103中“根据各个当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列”可以具体采用以下步骤,方法流程图如图4所示:
S1006,选取一个当前网络告警数据,并生成一个包含有该当前网络告警数据的初始告警序列;
S1007,依次从剩余的全部当前网络告警数据中选取一个作为待处理当前网络告警数据;
S1008,判断检测到的全部初始告警序列中是否存在攻击源IP信息或者攻击目的IP信息与待处理当前网络告警数据的攻击源IP信息相同的初始告警序列;若是,执行步骤S1009;若否,执行步骤S1010;
S1009,将待处理当前网络告警数据添加至相应初始告警序列中;
S1010,生成一个包含有待处理当前网络告警数据的初始告警序列。
S104,对于各个告警序列,提取该告警序列中各个当前网络告警数据的攻击源IP信息和攻击目的IP信息,并生成IP序列;
在执行步骤S104的过程中,假设存在一条告警序列Seq1=<Alert1,Alert2,…Alerti,…Alertn>,其中,Alerti表示该告警序列中第i个当前网络告警数据,提取该告警序列中每个当前网络告警数据的攻击源IP信息和攻击目的IP信息,并按照该告警序列Seq1中各个当前网络告警数据的排序依次组成一个新的有序序列,记为IP序列,该IP序列可表示为Sq_IP=<Alert1.Scr_IP,Alert1.Dst_IP,…Alerti.Scr_IP,Alerti.Dst_IP,…>。
S105,据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则;
在具体实现过程中,步骤S105中“根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则”可以具体采用以下步骤,方法流程图如图5所示:
S1011,生成该IP序列的至少一个连续的子序列;
S1012,对于各个子序列,计算该子序列的支持度并判断支持度是否大于支持度阈值;若是,执行步骤S1013;若是,执行步骤S1015;
S1013,提取子序列;
S1014,根据提取到的全部子序列重新生成IP序列,并返回步骤S1011;
S1015,计算该子序列的置信度;
S1016,判断计算得到的全部置信度是否都大于置信度阈值;若是,执行步骤S1017;
S1017,根据各个子序列生成相应IP时序关联规则。
以上步骤S1001~步骤S1005仅仅是本申请实施例公开的步骤S102“对全部候选网络告警数据进行去重处理,得到至少一个当前网络告警数据”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
以上步骤S10001~步骤S10003仅仅是本申请实施例公开的步骤S1001“对全部候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
以上步骤S1006~步骤S1010仅仅是本申请实施例公开的步骤S103中“根据各个当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
以上步骤S1011~步骤S1017仅仅是本申请实施例公开的步骤S105“根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则”过程的一种优选的实现方式,有关此过程的具体实现方式可根据自己的需求任意设置,在此不做限定。
本实施例公开的网络告警数据处理方法,在关注网络告警数据之间关联度基础上,还实现对网络告警数据中隐藏的IP时序关联规则的挖掘。由于IP序列中包含有多个网络节点的IP地址,因此通过挖掘IP时序关联规则即可实现对攻击过程以及攻击目的的挖掘,这也就减少了网络管理员的工作量,从而达到快速部署防御工作的目的,进一步提高了网络系统的安全性。
基于上述实施例公开的网络告警数据处理方法,本发明又一实施例公开一种网络告警数据处理装置,其结构示意图如图6所示,包括:预处理模块101、去重处理模块102、告警序列生成模块103、IP序列生成模块104和关联分析模块105;
预处理模块101,用于根据预设标准属性对收集到的各个原始网络告警数据进行预处理,得到包含标准属性信息的候选网络告警数据,所述标准属性包括告警时间、攻击源IP、攻击目的IP、告警名称、源端口以及目的端口;
去重处理模块102,用于对全部候选网络告警数据进行去重处理,得到至少一个当前网络告警数据;
告警序列生成模块103,用于根据各个当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列,并按照告警时间信息对各个初始告警序列中的全部当前网络告警数据进行排序,得到相应告警序列;
IP序列生成模块104,用于对于各个告警序列,提取该告警序列中各个当前网络告警数据的攻击源IP信息和攻击目的IP信息,并生成IP序列;
关联分析模块105,用于对于各个IP序列,根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则。
可选的,用于对全部所述候选网络告警数据进行去重处理,得到至少一个当前网络告警数据的去重处理模块102,具体用于:
对全部候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组;对于各个告警数据组中的每一个候选网络告警数据,分别选取组内其他候选网络告警数据作为比较网络告警数据;根据告警时间信息、攻击源IP信息、攻击目的IP信息、告警名称信息、源端口信息、目的端口信息及其各自对应的权重值,计算该候选网络告警数据与比较网络告警数据的相似度值;判断相似度值是否大于相似度阈值;若是,删除候选网络告警数据。
可选的,用于对全部候选网络告警数据按照告警时间进行分组,得到至少一个告警数据组的去重处理模块102,具体用于:
将原始网络告警数据的收集时长划分为至少一个子时段,并为每一个子时段分配唯一的时段标识;对于各个候选网络告警数据,根据该候选网络告警数据的告警时间信息确定所属子时段,并为该候选网络告警数据添加所属子时段的时段标识;对时段标识相同的各个候选网络告警数据进行聚类,得到至少一个告警数据组。
可选的,用于根据各个当前网络告警数据的攻击源IP信息以及攻击目的IP信息生成至少一个初始告警序列的告警序列生成模块103,具体用于:
选取一个当前网络告警数据,并生成一个包含有该当前网络告警数据的初始告警序列;选取一个当前网络告警数据,并生成一个包含有该当前网络告警数据的初始告警序列;依次从剩余的全部当前网络告警数据中选取一个作为待处理当前网络告警数据;判断检测到的全部初始告警序列中是否存在攻击源IP信息或者攻击目的IP信息与待处理当前网络告警数据的攻击源IP信息相同的初始告警序列;若是,将待处理当前网络告警数据添加至相应初始告警序列中;若否,生成一个包含有待处理当前网络告警数据的初始告警序列。
可选的,用于对于各个IP序列,根据Apriori算法对该IP序列进行关联分析,得到相应的IP时序关联规则的关联分析模块105,具体用于:
生成该IP序列的至少一个连续的子序列;对于各个子序列,计算该子序列的支持度并判断支持度是否大于支持度阈值;若是,提取子序列;根据提取到的全部子序列重新生成IP序列,并返回执行所述生成该IP序列的至少一个连续的子序列,这一步骤;若否,计算该子序列的置信度;判断计算得到的全部置信度是否都大于置信度阈值;若是,根据各个子序列生成相应IP时序关联规则。
本实施例公开的网络告警数据处理装置,在关注网络告警数据之间关联度基础上,还实现对网络告警数据中隐藏的IP时序关联规则的挖掘。由于IP序列中包含有多个网络节点的IP地址,因此通过挖掘IP时序关联规则即可实现对攻击过程以及攻击目的的挖掘,这也就减少了网络管理员的工作量,从而达到快速部署防御工作的目的,进一步提高了网络系统的安全性。
以上对本发明所提供的一种网络告警数据处理方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。