一种追踪网络联通图中团体演化的方法及装置的制造方法

文档序号:10660862阅读:416来源:国知局
一种追踪网络联通图中团体演化的方法及装置的制造方法
【专利摘要】本发明公开了一种追踪网络联通图中community演化的方法及装置,包括:对网络联通图进行首次community划分,得到一个以上community;其中,不同的community对应不同的ID,且community中包含的所有节点均携带所述community的ID;对网络联通图进行第N次community划分,得到一个以上community;当所述community中包含的节点中有超过门限数量的节点携带了同一种ID时,将所述community的ID设置为所述同一种ID,并在所述community中包含的所有节点中携带所述同一种ID,N≥2。
【专利说明】
一种追踪网络联通图中团体演化的方法及装置
技术领域
[0001] 本发明涉及网络安全领域中的网络联通图技术,尤其涉及一种追踪网络联通图中 团体(commun i ty)演化的方法及装置。
【背景技术】
[0002] 当黑客入侵企业、学校和政府等组织的内部网络后,其后续的攻击行为会引起内 部主机之间通讯的变化。例如受黑客控制的主机会扫描其它主机,包括主机上开放的业务 端口,而在内部网络的正常通讯中是不存在这种行为的。因此分析组织内部网络的通讯是 发现异常主机,继而确认主机感染恶意软件的重要途径。
[0003] 分析内部网络通讯的常用方法是基于内网通讯将组织的内部网络拓扑抽象成联 通图,将内网主机抽象为联通图中的节点,将主机间的通讯抽象为联通图中的边。根据节点 间通讯的连接数、应用和数据量等信息可以为联通图中的边赋予权值。一方面通过计算图 中节点间边的变化和边上权值的变化,能够发现蠕虫、扫描等异常事件。另一方面联通图也 为安全分析人员提供了良好的可视化工具。
[0004] 尽管联通图的价值很高,但当组织内网中的主机数目较多,例如达到数千甚至上 万时,直接使用全网的联通图进行分析会遇到困难。安全分析人员很难对数万个内网节点 构成的联通图进行分析,同时当联通图规模过大时,一个节点引起的变化可能会被掩盖。
[0005] 解决这一问题的一种方法是根据节点之间的通讯特征将节点划分为不同的 community,再基于community进行进一步的分析。community是联通图的一个子图,处于同 一个community内部的节点,与community外部的节点相比,其相互间联通的边数较多,并且 边上的权重较高,相互间表现出了更强的关系。在真实网络中,处于同一个commun i ty内的 节点所代表的主机通常属于同一个业务部门,这些主机相互间交互频繁,并且业务相近。
[0006] 划分community依赖的是网络联通图中各个节点间的边和边的权重,当边以及边 的权重发生变化时,划分出的community就会不同。组织的内网中,主机的通讯沿着时间轴 往往会发生变化。例如内网中增加了新的业务服务器或者组织中有新的团队开始使用已有 业务服务器。因此根据不同时间段的通讯情况划分出来的community可能不同。
[0007] 使用community进行异常主机分析,最重要的需求就是跟踪和对比community沿着 时间轴的变化。例如当community的介数中心性((betweenness centrality)或接近中心性 (closeness centrality)发生重大变化时,网络中很可能出现了扫描行为、垃圾邮件行为 或者攻击行为。同时,当安全分析师通过可视化工具发现在community中,某个主机开始访 问很多之前不访问的其它主机,甚至主机从一个community迀移到另一个community时,这 个主机很可能已经被黑客攻陷。
[0008] 当网络联通图随着时间的推移发生变化时,在不同的时间点c 〇 mmu n i t y的划分出 现变化,在这些划分中建立关联的主要方法是不同划分中communi ty的相似性。例如,最简 单的情况,在第一次划分的community A1和第二次划分中的community B1,构成它们的节 点完全一致,可以认为B1是由A1演化而来。当然在实际的方法中,需要考虑比这更复杂的情 况,因为B1和A1的构成很可能并不完全一样。另一方面同时需要考虑特殊节点的地位。例如 一个部门拥有核心的内部业务服务器,则服务器所在的community在实际中对应着这个部 门的局域网络。在判定community相似性时需要给予这些特殊节点更高的权重。可见,如何 准确判定communi ty的相似性以追踪communi ty的演化是亟需解决的问题。

【发明内容】

[0009] 为解决上述技术问题,本发明实施例提供了一种追踪网络联通图中commun i ty演 化的方法及装置,当网络联通图沿着时间的推移变化时,能够在不同时间点划分出的 community中找到其中最为相似的一组community。
[0010] 本发明实施例提供的追踪网络联通图中communi ty演化的方法,包括:
[00?1 ] 对网络联通图进行首次commun i ty划分,得到一个以上commun ity;其中,不同的 communi ty对应不同的标识ID,且communi ty中包含的所有节点均携带所述communi ty的ID; [0012] 对网络联通图进行第N次community划分,得到一个以上community ;当所述 community中包含的节点中有超过门限数量的节点携带了同一种ID时,将所述community的 ID设置为所述同一种ID,并在所述community中包含的所有节点中携带所述同一种ID,N^ 2〇
[0013]本发明实施例中,所述方法还包括:
[0014]当所述community中包含的节点中没有超过门限数量的节点携带了同一种ID时, 为所述community分配唯一的ID,并在所述communi ty中包含的所有节点中携带分配的所述 唯一的ID。
[0015]本发明实施例中,所述方法还包括:
[0016]当两个以上community有超过门限数量的节点携带了同一种ID时,比较各个 community所包含的节点个数;
[0017]将包含节点个数最多的community的ID设置为所述同一种ID,并为除所述包含节 点个数最多的community以外的各个community分配唯一的ID;
[0018] 其中,每个community所包含的全部节点携有所述community的ID。
[0019] 本发明实施例中,所述方法还包括,
[0020] 当各个community所包含的节点个数相同时,为所述各个community分配唯一的 ID,其中,每个community所包含的全部节点携有所述community的ID。
[0021]本发明实施例中,比较各个community所包含的节点个数时,所述节点个数为节点 的加权个数;相应地,所述方法还包括:
[0022] 依据community中各个节点的权重,计算所述community所包含的节点的加权个 数。
[0023]本发明实施例提供的追踪网络联通图中community演化的装置,包括:
[0024] 第一划分单元,用于对网络联通图进行community划分,得到一个以上community; 其中,不同的community对应不同的ID,且community中包含的所有节点均携带所述 community的ID;
[0025] 第二划分单元,用于对网络联通图进行第N次community划分,得到一个以上 community;
[0026 ]追踪单元,用于当所述c ommun i ty中包含的节点中有超过门限数量的节点携带了 同一种ID时,将所述community的ID设置为所述同一种ID,并在所述community中包含的所 有节点中携带所述同一种ID,N彡2。
[0027]本发明实施例中,所述装置还包括:
[0028]分配单元,用于当所述commun i ty中包含的节点中没有超过门限数量的节点携带 了同一种ID时,为所述community分配唯一的ID,并在所述community中包含的所有节点中 携带分配的所述唯一的ID。
[0029]本发明实施例中,所述装置还包括:
[0030]比较单元,用于当两个以上community有超过门限数量的节点携带了同一种ID时, 比较各个community所包含的节点个数;
[0031]设置单元,用于将包含节点个数最多的community的ID设置为所述同一种ID;
[0032] 分配单元,用于为除所述包含节点个数最多的community以外的各个community分 配唯一的ID;
[0033] 其中,每个community所包含的全部节点携有所述community的ID。
[0034]本发明实施例中,所述分配单元,还用于当各个community所包含的节点个数相同 时,为所述各个community分配唯一的ID,其中,每个community所包含的全部节点携有所述 community的ID〇
[0035]本发明实施例中,比较各个community所包含的节点个数时,所述节点个数为节点 的加权个数;相应地,所述装置还包括:
[0036] 计算单元,用于依据community中各个节点的权重,计算所述community所包含的 节点的加权个数。
[0037]本发明实施例的技术方案中,对网络联通图进行首次community划分,得到一个以 上communi ty;其中,不同的communi ty对应不同的ID,且communi ty中包含的所有节点均携 带所述community的ID;对网络联通图进行第N次community划分,得到一个以上communi ty; 当所述community中包含的节点中有超过门限数量的节点携带了同一种ID时,将所述 community的ID设置为所述同一种ID,并在所述community中包含的所有节点中携带所述同 一种ID,N^: 2。如此,在进行新的community划分时,参考过往最近一次划分时各个节点的 ID,利用两次划分中communi ty内节点的相似性来建立起communi ty之间的继承关系。
【附图说明】
[0038]图1为本发明实施例的追踪网络联通图中communi ty演化的方法的流程示意图一; [0039]图2为本发明实施例的追踪网络联通图中community演化的装置的结构组成示意 图;
[0040] 图3为本发明实施例的追踪网络联通图中communi ty演化的方法的流程示意图二。
【具体实施方式】
[0041] 为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发 明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。
[0042] 本发明实施例的技术方案中,在进行新的community划分时,参考过往最近一次划 分的结果,利用两次划分中communi ty内节点的相似性来建立起communi ty之间的继承关 系。
[0043 ]图1为本发明实施例的追踪网络联通图中commun i ty演化的方法的流程示意图一, 如图1所示,所述追踪网络联通图中commun i ty演化的方法包括以下步骤:
[0044] 步骤101:对网络联通图进行community划分,得到一个以上community;其中,不同 的communi ty对应不同的ID,且communi ty中包含的所有节点均携带所述communi ty的ID。
[0045] 本发明实施例中,由于在第一次划分的时候没有任何之前的划分结果可以参考, 因此,为第一次进行community划分得到的所有community分配全局唯一的ID,即不同的 community对应不同的ID community中包含的所有节点获得其所属的community的ID作为 自己的属性并携带。可见,节点和community之间通过ID进行映射,具有相同ID的节点属于 同一个community 〇
[0046] 步骤102:对网络联通图进行第N次community划分,得到一个以上community;当所 述communi ty中包含的节点中有超过门限数量的节点携带了同一种ID时,将所述communi ty 的ID设置为所述同一种ID,并在所述community中包含的所有节点中携带所述同一种ID,N ^2〇
[0047]本发明实施例中,在对之后时间点的网络联通图进行community划分时,新的 community所包含的节点可能有以下两种情况:
[0048] 1、节点为出现在联通图中的新节点,并未携带任何ID。
[0049] 2、节点携带了上一次划分的community ID。
[0050]当community中包含的节点中,有超过门限数量(例如60% )的节点携带了同一种 ID,可以认为该community与上次划分中对应ID的community非常相似,因此可以继承上次 划分时分配的ID。之后该community中所有的节点,无论是否携带有ID、或者携带的ID具体 是什么,都获得当前所属的community的ID作为自己的属性,并携带当前所属的community 的ID。
[0051 ]此外,当所述communi ty中包含的节点中没有超过门限数量的节点携带了同一种 ID时,为所述community分配唯一的ID,并在所述community中包含的所有节点中携带分配 的所述唯一的ID。
[0052] 具体地,当community中包含的节点中,没有这样一组节点,其携带相同的ID,并且 这组节点的数量超过门限数量,贝认为这个community与上次划分中的任意一个community 都不相似。此时,为该commun i ty分配新的全局唯一的ID,之后,该commun i ty中所有的节点, 无论是否携带有ID、或者携带的ID具体是什么,都获得当前所属的community的ID作为自己 的属性,并携带当前所属的communi ty的ID。
[0053] 本发明实施例中,当两个以上community有超过门限数量的节点携带了同一种ID 时,比较各个community所包含的节点个数;
[0054]将包含节点个数最多的community的ID设置为所述同一种ID,并为除所述包含节 点个数最多的community以外的各个community分配唯一的ID;
[0055] 其中,每个community所包含的全部节点携有所述community的ID。
[0056]具体地,考虑到在新的划分中,可能有多个community,其中都含有携带相同ID的 节点,并且节点的数量都超过了门限数量。这种情况可以视作上次划分的某个community在 新的划分中分裂成了多个新的community,可以通过比较分裂后community中包含原有 community节点的个数来决定在新的community中,究竟哪个community继承分裂前 commun i ty的ID。未获得继承权的commun i ty需要分配新的全局唯一的ID。
[0057] 本发明实施例中,当各个community所包含的节点个数相同时,为所述各个 community分配唯一的ID,其中,每个community所包含的全部节点携有所述community的 ID〇
[0058] 具体地,如果所有community,其包含的原有community节点的个数都相同,贝lj认为 它们都无法继承原有communi ty的ID,都需要分配新的全局唯一的ID。
[0059] 本发明实施例中,比较各个community所包含的节点个数时,所述节点个数为节点 的加权个数;相应地,所述方法还包括:依据communi ty中各个节点的权重,计算所述 commun i ty所包含的节点的加权个数。
[0060] 具体地,考虑到特殊节点的贡献,在统计节点个数时,可以允许特殊节点贡献更大 的权重,例如一个特殊节点在统计节点数量时视作10个普通节点。因此计算节点个数时得 到的实际是加权个数而非节点的真实个数。
[0061 ]下面结合具体应用场景对本发明实施例的追踪网络联通图中community演化的方 法做进一步详细说明。
[0062]初始时联通图中有10个节点,其中有9个普通节点和1个特殊节点。节点的名称为: NO,N1,…,N8,S0。其中N0~N8为普通节点,S0为特殊节点。
[0063] 在第一次划分中,划分结果为{勵,附,呢,似},{财少5,册,阶,_,30}。划分出2个 community〇
[0064] 由于NO~N9,以及SO并未携带任何ID,因此划分出的community都需要申请全局唯 一的ID,2个community的ID分别为C1和C2。
[0065] 在第一次划分完成后,得到各个节点与ID的映射如表1所示。
[0067]表 1
[0068]在第二次划分中,出现了一个新的节点N9,同时节点N6由于在一段时间内都没有 被观察到,因此从联通图上消失。第二次划分的结果为{NO,Nl,N2,N3,N9},{N4,SO},{N5, N7,N8}〇
[0069] 在第一个community中,NO~N3携带的ID为Cl,N9不携带任何ID。由于携带有Cl的 节点数目超过了门限数量60%,并且第二个和第三个community中,没有超过门限数量的节 点携带有ID为C1,因此,第一个community获得了 ID为Cl,N9继而也获得了 ID为C1。
[0070] 第二个和第三个community,其节点都携带有ID为C2。第二个community中,S0为特 殊节点,该communi ty中携带有C2的节点的加权数量为11。第三个communi ty中,携带有C2的 节点的数量权重为3。经过比较,第二个community获得了 ID为C2,第三个community获得了 新的ID为C3。经过第二次划分后,得到的节点与ID间的映射如表2所示。
[0072]表 2
[0073]在第三次划分以及后续的划分中,均与上述第二次划分的过程同理,新划分的 c 〇 mmu n i t y中的节点携有的ID是上一次划分时该节点所属的c 〇 mmu n i t y的ID,在新划分之 后,该节点携有的ID会被更新为此次划分时该节点所属的新的community的ID。
[0074]图2为本发明实施例的追踪网络联通图中community演化的装置的结构组成示意 图,如图2所示,所述装置包括:
[0075] 第一划分单元2 1,用于对网络联通图进行communi ty划分,得到一个以上 commun i ty;其中,不同的commun i ty对应不同的ID,且commun i ty中包含的所有节点均携带 所述 community 的 ID;
[0076] 第二划分单元22,用于对网络联通图进行第N次community划分,得到一个以上 community;
[0077] 追踪单元23,用于当所述community中包含的节点中有超过门限数量的节点携带 了同一种ID时,将所述community的ID设置为所述同一种ID,并在所述community中包含的 所有节点中携带所述同一种ID,N多2。
[0078] 所述装置还包括:分配单元24,用于当所述communi ty中包含的节点中没有超过门 限数量的节点携带了同一种ID时,为所述community分配唯一的ID,并在所述community中 包含的所有节点中携带分配的所述唯一的ID。
[0079] 所述装置还包括:
[0080]比较单元25,用于当两个以上community有超过门限数量的节点携带了同一种ID 时,比较各个community所包含的节点个数;
[0081 ] 设置单元26,用于将包含节点个数最多的community的ID设置为所述同一种ID; [0082] 分配单元24,用于为除所述包含节点个数最多的community以外的各个community 分配唯一的ID;
[0083] 其中,每个community所包含的全部节点携有所述community的ID。
[0084]所述分配单元24,还用于当各个community所包含的节点个数相同时,为所述各个 community分配唯一的ID,其中,每个community所包含的全部节点携有所述community的 ID〇
[0085] 比较各个community所包含的节点个数时,所述节点个数为节点的加权个数;相应 地,所述装置还包括:
[0086] 计算单元27,用于依据community中各个节点的权重,计算所述community所包含 的节点的加权个数。
[0087]本领域技术人员应当理解,图2所示的追踪网络联通图中community演化的装置中 的各单元的实现功能可参照前述追踪网络联通图中community演化的方法的相关描述而理 解。图2所示的追踪网络联通图中community演化的装置中的各单元的功能可通过运行于处 理器上的程序而实现,也可通过具体的逻辑电路而实现。
[0088]图3为本发明实施例的追踪网络联通图中commun i ty演化的方法的流程示意图二, 如图3所示,所述追踪网络联通图中commun i ty演化的方法包括以下步骤:
[0089] 步骤301:获取网络联通图。
[0090] 这里,网络联通图所包括的信息至少有:节点、边、边权重。
[0091] 节点是指要分析的物体,每一个物体就是一个节点,比如主机。
[0092] 边是两个节点间的连线,用于表示两个节点的关系。
[0093]边的权重可以代表相似度,距离或者链接成本等。
[0094] 步骤302:对网络联通图进行community划分。
[0095] 步骤303:依次对新划分出的community进行处理,统计每个community内携带有相 同ID的节点的加权个数。
[0096] 步骤304:判断community中是否存在有一组节点,携带有相同的ID,并且节点数量 超过门限数量,是时,执行步骤305,否时,执行步骤。
[0097] 步骤305:为community申请所述相同的ID。
[0098] 步骤306:在所有申请所述相同的ID的community中,判断该community中的节点的 加权个数是否最大,是时,执行步骤307,否时,执行步骤308。
[00"] 步骤307:将所述相同的ID设置成该community的ID。
[0100] 步骤308:为community设置全局唯一的ID。
[0101] 本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
[0102] 在本发明所提供的几个实施例中,应该理解到,所揭露的方法和智能设备,可以通 过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅 仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结 合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组 成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接 耦合或通信连接,可以是电性的、机械的或其它形式的。
[0103] 上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显 示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单 元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0104] 另外,在本发明各实施例中的各功能单元可以全部集成在一个第二处理单元中, 也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中; 上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实 现。
[0105] 以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵 盖在本发明的保护范围之内。
【主权项】
1. 一种追踪网络联通图中团体community演化的方法,其特征在于,所述方法包括: 对网络联通图进行首次community划分,得到一个以上community ;其中,不同的 communi ty对应不同的标识ID,且communi ty中包含的所有节点均携带所述communi ty的ID; 对网络联通图进行第N次community划分,得到一个以上communi ty;当所述community 中包含的节点中有超过门限数量的节点携带了同一种ID时,将所述community的ID设置为 所述同一种ID,并在所述community中包含的所有节点中携带所述同一种ID,N彡2。2. 根据权利要求1所述的追踪网络联通图中团体community演化的方法,其特征在于, 所述方法还包括: 当所述c 〇mmun i t y中包含的节点中没有超过门限数量的节点携带了同一种ID时,为所 述community分配唯一的ID,并在所述community中包含的所有节点中携带分配的所述唯一 的ID。3. 根据权利要求1所述的追踪网络联通图中团体c 〇 mm u n i t y演化的方法,其特征在于, 所述方法还包括: 当两个以上community有超过门限数量的节点携带了同一种ID时,比较各个community 所包含的节点个数; 将包含节点个数最多的community的ID设置为所述同一种ID,并为除所述包含节点个 数最多的community以外的各个community分配唯一的ID; 其中,每个community所包含的全部节点携有所述community的ID。4. 根据权利要求3所述的追踪网络联通图中团体c 〇 mm u n i t y演化的方法,其特征在于, 所述方法还包括, 当各个community所包含的节点个数相同时,为所述各个community分配唯一的ID,其 中,每个community所包含的全部节点携有所述community的ID。5. 根据权利要求3所述的追踪网络联通图中团体c 〇 mm u n i t y演化的方法,其特征在于, 比较各个community所包含的节点个数时,所述节点个数为节点的加权个数;相应地,所述 方法还包括: 依据community中各个节点的权重,计算所述community所包含的节点的加权个数。6. -种追踪网络联通图中团体communi ty演化的装置,其特征在于,所述装置包括: 第一划分单元,用于对网络联通图进行community划分,得到一个以上community;其 中,不同的community对应不同的ID,且community中包含的所有节点均携带所述community 的ID; 第二划分单元,用于对网络联通图进行第N次community划分,得到一个以上 community; 追踪单元,用于当所述communi ty中包含的节点中有超过门限数量的节点携带了同一 种ID时,将所述community的ID设置为所述同一种ID,并在所述community中包含的所有节 点中携带所述同一种ID,N彡2。7. 根据权利要求6所述的追踪网络联通图中团体community演化的装置,其特征在于, 所述装置还包括: 分配单元,用于当所述commun i ty中包含的节点中没有超过门限数量的节点携带了同 一种ID时,为所述community分配唯一的ID,并在所述community中包含的所有节点中携带 分配的所述唯一的ID。8. 根据权利要求6所述的追踪网络联通图中团体community演化的装置,其特征在于, 所述装置还包括: 比较单元,用于当两个以上community有超过门限数量的节点携带了同一种ID时,比较 各个community所包含的节点个数; 设置单元,用于将包含节点个数最多的community的ID设置为所述同一种ID; 分配单元,用于为除所述包含节点个数最多的community以外的各个community分配唯 一的 ID; 其中,每个community所包含的全部节点携有所述community的ID。9. 根据权利要求8所述的追踪网络联通图中团体commun i ty演化的装置,其特征在于, 所述分配单元,还用于当各个community所包含的节点个数相同时,为所述各个 community分配唯一的ID,其中,每个community所包含的全部节点携有所述community的 ID〇10. 根据权利要求8所述的追踪网络联通图中团体community演化的装置,其特征在于, 比较各个community所包含的节点个数时,所述节点个数为节点的加权个数;相应地,所述 装置还包括: 计算单元,用于依据community中各个节点的权重,计算所述community所包含的节点 的加权个数。
【文档编号】H04L29/06GK106027526SQ201610344784
【公开日】2016年10月12日
【申请日】2016年5月23日
【发明人】才华, 刘昌浩
【申请人】北京网康科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1