一种变长时间窗口下复杂图网络的聚类方法与流程

文档序号:23175068发布日期:2020-12-04 14:06阅读:78来源:国知局

本发明涉及一种网络安全领域的网络安全方法及装置,特别是涉及一种变长时间窗口下复杂图网络的聚类方法。



背景技术:

基于图网络的聚类算法有k-means、标签传播、infomap和louvain等。

申请号为201510052965.x,发明名称为:网络攻击源组织检测方法,使用马尔可夫快速图形聚类方法,对关联图进行检测。没有时间维度的信息,无法考察一个聚类结果在一定时间内的变化情况,缺乏实际应用价值。

申请号为201911423368.8,发明名称为日志聚类方法、装置、设备及存储介质,该专利使用传统的机器学习方法模型,提取ip、url等日志实体进行聚类。没有时间维度的信息,无法考察一个聚类结果在一定时间内的变化情况,缺乏实际应用价值。

上述算法通过随机游走、概率转移矩阵等方法能够较好地对输入数据中的相似样本聚集成簇,形成有研究价值的社区。然而,绝大多数图网络聚类算法缺少时间维度的度量,尤其是变长时间窗口下的聚类生成与持续跟踪方法。在网络安全实践中,一个攻击组织的活动情况是离散、非连续的,即分布在多个时间段内。又因为现有算法给定的簇编号是随机生成的,导致了同一攻击组织在不同时间段内无法统一标定,无法对攻击组织的产生、扩张、缩减以及消亡进行跟踪,所以并不适用于网络安全事件与日志分析,以及黑客攻击组织跟踪场景,缺少实际应用价值。

随着网络攻防对抗的深化和不断演变,网络攻击呈现分布化和规模化的趋势,由此产生了海量的、无序的和无语义的网络安全事件。显然现有的对网络攻击和防护的方法不适应目前网络攻防对抗的形势的需要。

除此之外,业界对网络攻击的防护不单满足于成功阻断,更关注对于攻击者的刻画和溯源,从而评估威胁等级,采取妥善的应对措施。因此,如何在一定时间内对具有相对独占攻击资源、基于一定手法进行规模化攻击的组织进行持续追踪,是解决上述问题的重要基础。

有鉴于上述现有的图聚类算法存在的缺陷,本发明人经反复试作及改进后,终于创设出确具实用价值的本发明。



技术实现要素:

本发明的主要目的在于,克服现有的聚类方法存在的缺陷,而提供一种新的一种变长时间窗口下复杂图网络的聚类方法,所要解决现有图聚类算法缺少时间维度考量的问题,使其应用在网络安全事件与日志分析,以及黑客攻击组织跟踪场景,对重点攻击者和攻击组织进行持续跟踪,指导采取安全处置措施,非常适于实用。

本发明的另一目的在于,克服现有的海量日志分析不能计算长时间全部数据的问题,而提供一种变长时间窗口下复杂图网络的聚类方法,所要解决的技术问题是使其分块分区化,所提供的新型的计算数据的方式,先计算少量小部分的数据,再将其依据相似度度量方法按时间先后顺序进行拼接,从而更加适于实用。

本发明的还一目的在于,克服现有的组织命名方法无法自动化生成和追踪存在的缺陷,而提供一种新的一种变长时间窗口下复杂图网络的聚类方法,所提供的攻击组织自动化命名和追踪的方式,使其随机生成的组织编号持久化,并能在不同时间窗口中就创生和湮灭等情况进行分析刻画,从而更加适于实用。

本发明的目的及解决其技术问题是采用以下技术方案来实现的。依据本发明提出的一种变长时间窗口下复杂图网络的聚类方法,其包括以下步骤:

步骤1;选定单位时间窗口,将日志数据按照单位时间窗口划分,从而将变长时间窗口下的数据分析问题转化为多个固定单位时间窗口内的数据分析;

步骤2:计算笛卡尔积,计算聚类的簇的距离,依据距离划分攻击组织,实现了对变长时间窗口下的攻击组织进行了持续跟踪,并可从单位时间窗口角度对攻击组织的成员增加、减少等变化进行刻画,满足了对攻击组织变迁的了解需求。

本发明的目的及解决其技术问题还可采用以下技术措施进一步实现。

前述的一种变长时间窗口下复杂图网络的聚类方法,其中所述的选定单位时间窗口,将日志数据按照单位时间窗口划分的具体步骤是:

首先接入网络安全日志数据,抽取实体信息,抽取的实体信息包括:从ddos攻击日志中抽取时间、c&c、bot和被攻击者的ip地址;

然后,依照全部日志l时间跨度,选定单位时间窗口t,包括一年的数据,选定t为1个月,日志数据l依据时间窗口分为lt,t∈{t1,t2,...,tn}。

前述的一种变长时间窗口下复杂图网络的聚类方法,其中所述的计算笛卡尔积计算聚类的簇的距离,依据距离划分攻击组织的具体步骤是:

先按lt,t∈{t1,t2,...,tn}构建以关键实体为中心的无向图v0是图的初始顶点,即实体,e0是图的初始边,表示c&c控制bot或bot对被攻击者发起攻击;

再定义社区模块度其中,aij是顶点i和顶点j之间的权重,在此恒定为1;

ki和kj表示顶点的度数;

m表示所有边的数量;

ci表示顶点所属的社区;

δ是克罗内克函数;

让后初始化循环迭代次数记录器k为0,进行以下循环迭代:

将图中的每个点i∈vk看作一个社区。

尝试将每个顶点i,依次将其分配到相邻顶点j所在社区,计算其模块度变化量δm;

取本次循环δm最大值δmmax,若δmmax>0,则保留δmmax所对应的顶点分配尝试;

若循环不再发生顶点的实际社区重分配,循环终止,记此时图聚类结果为ct,t∈{t1,t2,...,tn};

对于上述单位时间窗口聚类计算结果ct,t∈{t1,t2,...,tn},记录各聚类结果内不同簇的关键实体集合,如表示在内编号为n的簇含有的关键实体集合;

对于两个相邻时间窗口内的关键实体集合做笛卡尔积运算,可得形如的集合运算结果;

对于r中每个数对计算其距离

若一个数对中两个元素距离大于阈值,则认为两元素具有演进关系,即二者同属一个攻击组织。若已有唯一攻击组织编号gid,id为随机产生且唯一的值,则将其归入该攻击组织中。若没有已知的攻击组织编号关联,则新建一个编号;

最终可得攻击组织它包含在不同时间窗口(ta,tb,tc,td...)内的聚类结果,从而实现对变长窗口的图网络聚类。

本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,其至少具有下列优点:

1、本发明选定单位时间窗口,将日志数据按照单位时间窗口划分,不同于现有的将全部数据进行计算的方法,从而将变长时间窗口下的数据分析问题转化为多个固定单位时间窗口内的数据分析问题。此步骤采取化整为零的思想,解决了原始数据过大导致的存储和计算难题,提升了大量日志数据的计算效率。

2、本发明计算笛卡尔积,计算聚类的簇的距离,依据距离划分攻击组织,实现了对变长时间窗口下的攻击组织进行了持续跟踪,并可从单位时间窗口角度对攻击组织的成员增加、减少等变化进行刻画,满足了对攻击组织变迁的了解需求。现有技术能够发现以攻击组织为代表的社区,但做不到其在不同时间段内的标定和持续跟踪。

3、本发明在计算组织相似度的同时,有机引入了威胁情报等交叉对比数据,实现了攻击组织的多源多结构对比,提高了语义度量含义的熵值,使计算结果更具处置上的参考意义。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,详细说明如下。

具体实施方式

为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合较佳实施例,对依据本发明提出的一种变长时间窗口下复杂图网络的聚类方法其具体实施步骤及其功效,详细说明如后。

本发明较佳实施的一种变长时间窗口下复杂图网络的聚类方法,包括以下步骤:

步骤1;选定单位时间窗口,将日志数据按照单位时间窗口划分,从而将变长时间窗口下的数据分析问题转化为多个固定单位时间窗口内的数据分析;其具体步骤是:

首先接入网络安全日志数据,抽取实体信息,抽取的实体信息包括:从ddos攻击日志中抽取时间、c&c、bot和被攻击者的ip地址;

然后,依照全部日志l时间跨度,选定单位时间窗口t,包括一年的数据,选定t为1个月,日志数据l依据时间窗口分为lt,t∈{t1,t2,...,tn}。

步骤2:计算笛卡尔积,计算聚类的簇的距离,依据距离划分攻击组织,实现了对变长时间窗口下的攻击组织进行了持续跟踪,并可从单位时间窗口角度对攻击组织的成员增加、减少等变化进行刻画,满足了对攻击组织变迁的了解需求。其具体步骤是:

先按lt,t∈{t1,t2,...,tn}构建以关键实体为中心的无向图v0是图的初始顶点,即实体,e0是图的初始边,表示c&c控制bot或bot对被攻击者发起攻击;

再定义社区模块度其中,aij是顶点i和顶点j之间的权重,在此恒定为1;

ki和kj表示顶点的度数;

m表示所有边的数量;

ci表示顶点所属的社区;

δ是克罗内克函数;

让后初始化循环迭代次数记录器k为0,进行以下循环迭代:

将图中的每个点i∈vk看作一个社区。

尝试将每个顶点i,依次将其分配到相邻顶点j所在社区,计算其模块度变化量δm;

取本次循环δm最大值δmmax,若δmmax>0,则保留δmmax所对应的顶点分配尝试;

若循环不再发生顶点的实际社区重分配,循环终止,记此时图聚类结果为ct,t∈{t1,t2,...,tn};

对于上述单位时间窗口聚类计算结果ct,t∈{t1,t2,...,tn},记录各聚类结果内不同簇的关键实体集合,如表示在内编号为n的簇含有的关键实体集合;

对于两个相邻时间窗口内的关键实体集合做笛卡尔积运算,可得形如的集合运算结果;

对于r中每个数对计算其距离

若一个数对中两个元素距离大于阈值,则认为两元素具有演进关系,即二者同属一个攻击组织。若已有唯一攻击组织编号gid,id为随机产生且唯一的值,则将其归入该攻击组织中。若没有已知的攻击组织编号关联,则新建一个编号;

最终可得攻击组织它包含在不同时间窗口(ta,tb,tc,td...)内的聚类结果,从而实现对变长窗口的图网络聚类。

具体应用实施例1:本发明可在抗ddos攻击设备日志中发现具有高度调查和追踪意义的攻击组织。此场景具体应用实施步骤如下:

首先接入安全日志数据,抽取ddos攻击实体,如bot和被攻击者的ip地址,将其存储到本地磁介质中。

其次选定单位时间窗口,此处选择自然月作为单位时间窗口,将日志数据依时间窗口划分为第一个月的日志、第二个月的日志,以此类推。

之后,开始建立以bot和被攻击者为顶点的无向图,二者的边表示bot存在攻击被攻击者的行为。

然后,定义社区模块度m,初始化循环迭代次数记录器k,开始迭代循环,依次将每个顶点i分配到其相邻顶点j所在的社区,计算模块度变化量。若此次循环模块度变化量最大值大于0,则保留此次顶点分配尝试,直到不再发生顶点的实际社区重分配。得到每个单位时间窗口内的攻击组织划分。

紧接着,对每两个相邻时间窗口内簇包含的关键实体计算笛卡尔积,计算两个簇之间的距离。若距离大于阈值0.8,则将二者划为同一个攻击组织。

最终,计算得到了在变长时间窗口下的攻击组织分类。

经过专家审查,确认上述组织具有高危害性,其攻击工具链具有创新性。本发明使拥护可以在不同时间段内对攻击组织进行观察,从而确定其影响范围、组织规模,为运维人员处置风险提供了实际可靠的建议和具体举措。

具体应用实施例2:本发明可用于在基于骨干网的流量分析中发现具有较大影响范围的ddos攻击组织。此场景具体应用实施步骤如下:

首先接入骨干网流量数据,在ddos攻击告警中抽取ddos攻击实体,如c&c、bot和被攻击者的ip地址,将其存储到本地磁介质中。

其次选定单位时间窗口,此处选择自然月作为单位时间窗口,将日志数据依时间窗口划分为第一个月的日志、第二个月的日志,以此类推。

之后,开始建立以c&c、bot和被攻击者为顶点的无向图,c&c和bot的边表示c&c控制bot,bot和被攻击者的边表示bot的攻击行为。

然后,定义社区模块度m,初始化循环迭代次数记录器k,开始迭代循环,依次将每个顶点i分配到其相邻顶点j所在的社区,计算模块度变化量。若此次循环模块度变化量最大值大于0,则保留此次顶点分配尝试,直到不再发生顶点的实际社区重分配。得到每个单位时间窗口内的攻击组织划分。

紧接着,对每两个相邻时间窗口内簇包含的关键实体计算笛卡尔积,计算两个簇之间的距离。若距离大于阈值0.7,则将二者划为同一个攻击组织。

最终,计算得到了在变长时间窗口下的攻击组织分类,从一年的周期维度内对攻击组织进行观察和刻画,支撑了若干份年度网络安全报告的撰写,为网络空间安全治理提供依据和抓手。

以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1