本技术涉及网络安全,尤其涉及僵尸网络检测方法、装置、设备、存储介质及程序产品。
背景技术:
1、目前,为防止黑客利用僵尸网络发起分布式拒绝服务攻击、窃取用户数据、隐私信息,导致网站或者服务器瘫痪和财产损失,相关技术中主要是基于网络流量异常或者网络行为特征异常来检测僵尸网络。
2、其中,利用网络流量进行检测时,有些正常的网络流量模式可能与僵尸网络活动类似,例如某些软件更新或远程管理工具的通信模式,容易将其误判为僵尸网络活动,从而导致对僵尸网络的检测准确性较低。
技术实现思路
1、本技术的主要目的在于提供一种僵尸网络检测方法、装置、设备、存储介质及程序产品,旨在解决僵尸网络的检测准确性较低的技术问题。
2、为实现上述目的,本技术提出一种僵尸网络检测方法,包括:
3、获取目标网络群体的多条网络告警记录;
4、根据多条网络告警记录,构建第一有向图;其中,第一有向图的节点为网络告警记录中的通信对象,任意两个通信对象之间存在至少一条网络告警记录时生成对应两个节点之间的边;
5、针对第一有向图的任一边,计算边的目标节点的出边与边之间的攻击相似度;
6、保留第一有向图中攻击相似度大于预设攻击相似度的目标边以及与目标边相关联的节点,获得第二有向图;
7、计算得到与第二有向图中各连通子图分别相对应的僵尸网络概率,获得僵尸网络检测结果。
8、在一实施例中,计算得到与第二有向图中各连通子图分别相对应的僵尸网络概率,获得僵尸网络检测结果的步骤包括:
9、根据连通子图中的攻击路径总数,得到连通子图的相似攻击含量;
10、根据连通子图中的节点总数与目标边总数之间的数值关系,得到连通子图的网络群体连通度;
11、根据连通子图中的攻击种类数与目标边总数之间的数值关系,得到连通子图的网络群体攻击复杂度;其中,每条目标边所属的攻击种类根据对应的网络告警记录中的告警种类得到;
12、根据连通子图中的告警记录数量与目标边总数之间的数值关系,得到连通子图的网络群体攻击波动程度;
13、根据相似攻击含量、网络群体连通度、网络群体攻击复杂度以及网络群体攻击波动程度,计算得到僵尸网络概率,获得僵尸网络检测结果。
14、在一实施例中,相似攻击含量利用公式一得到,公式一包括:s1=log10(x1+1),其中,s1表示相似攻击含量,x1表示攻击路径总数;和/或
15、网络群体连通度利用公式二得到,公式二包括:其中,s2表示网络群体连通度,x2表示节点总数,x3表示目标边总数;和/或
16、网络群体攻击复杂度利用公式三得到,公式三包括:其中,s3表示网络群体攻击复杂度,x4表示攻击种类数;和/或
17、网络群体攻击波动程度利用公式四得到,公式四包括:其中,s4表示网络群体攻击波动程度,x5表示告警记录数量。
18、在一实施例中,根据相似攻击含量、网络群体连通度、网络群体攻击复杂度以及网络群体攻击波动程度,计算得到僵尸网络概率,获得僵尸网络检测结果的步骤包括:
19、将相似攻击含量、网络群体连通度、网络群体攻击复杂度以及网络群体攻击波动程度中,大于预设阈值的特征个数与特征总数的比值,作为僵尸网络的概率;
20、若概率不小于预设概率,则确定目标网络群体的僵尸网络检测结果为僵尸网络。
21、在一实施例中,针对第一有向图的任一边,计算边的目标节点的出边与边之间的攻击相似度的步骤包括:
22、根据多条网络告警记录,获取边对应的所有第一告警名称以及边的目标节点的出边对应的所有第二告警名称;
23、根据所有第一告警名称与所有第二告警名称之间的相似度,获得出边与边之间的攻击相似度。
24、在一实施例中,根据所有第一告警名称与所有第二告警名称之间的相似度,获得出边与边之间的攻击相似度的步骤包括:
25、将所有第一告警名称作为第一告警名称集合,将所有第二告警名称作为第二告警名称集合;
26、将第一告警名称集合与第二告警名称集合取并集,得到参考名称集合;
27、根据所述参考名称集合中各元素在所述第一告警名称集合中是否存在,在所述参考名称集合对应的空间向量中生成第一向量;
28、根据所述参考名称集合中各元素在所述第二告警名称集合中是否存在,在所述参考名称集合对应的空间向量中生成第二向量;
29、计算第一向量与第二向量的余弦相似度,并将余弦相似度作为攻击相似度。
30、此外,为实现上述目的,本技术还提出一种僵尸网络检测装置,僵尸网络检测装置包括:
31、获取模块,用于获取目标网络群体的多条网络告警记录;
32、构建模块,用于根据多条网络告警记录,构建第一有向图;其中,第一有向图的节点为网络告警记录中的通信对象,任意两个通信对象之间存在至少一条网络告警记录时生成对应两个节点之间的边;
33、第一计算模块,用于针对第一有向图的任一边,计算边的目标节点的出边与边之间的攻击相似度;
34、保留模块,用于保留第一有向图中攻击相似度大于预设攻击相似度的目标边以及与目标边相关联的节点,获得第二有向图;
35、第二计算模块,用于计算得到与第二有向图中各连通子图分别相对应的僵尸网络概率,获得僵尸网络检测结果。
36、此外,为实现上述目的,本技术还提出一种僵尸网络检测设备,设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序配置为实现如上文的僵尸网络检测方法的步骤。
37、此外,为实现上述目的,本技术还提出一种存储介质,存储介质为计算机可读存储介质,存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上文的僵尸网络检测方法的步骤。
38、此外,为实现上述目的,本技术还提供一种计算机程序产品,计算机程序产品包括计算机程序,计算机程序被处理器执行时实现如上文的僵尸网络检测方法的步骤。
39、本技术提出的一个或多个技术方案,至少具有以下技术效果:
40、在本技术中,获取目标网络群体的多条网络告警记录;根据多条网络告警记录,构建第一有向图;其中,第一有向图的节点为网络告警记录中的通信对象,任意两个通信对象之间存在至少一条网络告警记录时生成对应两个节点之间的边;针对第一有向图的任一边,计算边的目标节点的出边与边之间的攻击相似度;保留第一有向图中攻击相似度大于预设攻击相似度的目标边以及与目标边相关联的节点,获得第二有向图;计算得到与第二有向图中各连通子图分别相对应的僵尸网络概率,获得僵尸网络检测结果。
41、相较于相关技术中利用流量进行僵尸网络的检测,本实施例可以在检测僵尸网络的过程中,利用数据价值更高的网络告警记录构建第一有向图后,再计算第一有向图中目标节点的边与出边之间的攻击相似度,通过攻击相似度将第一有向图中攻击相似度小于预设攻击相似度的边以及相关的节点剔除的方式,将包含有僵尸网络的网络群体与其他群体划分开,减少了特征维度的干扰的方式,提高了对僵尸网络的检测的准确率。
1.一种僵尸网络检测方法,其特征在于,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述计算得到与第二有向图中各连通子图分别相对应的僵尸网络概率,获得僵尸网络检测结果的步骤包括:
3.如权利要求2所述的方法,其特征在于,所述相似攻击含量利用公式一得到,公式一包括:s1=log10(x1+1),其中,s1表示所述相似攻击含量,x1表示所述攻击路径总数;和/或
4.如权利要求2所述的方法,其特征在于,所述根据所述相似攻击含量、所述网络群体连通度、所述网络群体攻击复杂度以及所述网络群体攻击波动程度,计算得到僵尸网络概率,获得僵尸网络检测结果的步骤包括:
5.如权利要求1所述的方法,其特征在于,所述针对所述第一有向图的任一所述边,计算所述边的目标节点的出边与所述边之间的攻击相似度的步骤包括:
6.如权利要求5所述的方法,其特征在于,所述根据所述所有第一告警名称与所述所有第二告警名称之间的相似度,获得所述出边与所述边之间的攻击相似度的步骤包括:
7.一种僵尸网络检测装置,其特征在于,所述装置包括:
8.一种僵尸网络检测设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序配置为实现如权利要求1至6中任一项所述的僵尸网络检测方法的步骤。
9.一种存储介质,其特征在于,所述存储介质为计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的僵尸网络检测方法的步骤。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的僵尸网络检测方法的步骤。
