基于图社区发现的活跃地址探测方法及装置转让专利
申请号 : CN202110458412.X
文献号 : CN113382092B
文献日 : 2022-05-20
发明人 : 杨家海 , 李果 , 王之梁 , 何林 , 宋光磊
申请人 : 清华大学
摘要 :
权利要求 :
1.一种基于图社区发现的活跃地址探测方法,其特征在于,包括以下步骤:获取IPv6种子地址集合,对所述IPv6种子地址集合进行处理得到无向图;
通过图社区发现算法对所述无向图进行处理得到多个社区,对多个社区进行平均加权度计算,根据设定的平均加权阈值对社区采用全交集合并或全并集合并的方式进行过滤,利用过滤后的社区中的模式字符串集合组成模式库;
采用组织关联的方式从所述模式库中筛选与目标BGP前缀对应的模式字符串;
对所述IPv6种子地址进行处理得到无向图,包括:对所述IPv6种子地址集合进行划分;
对划分后的每个地址集合用地址结构模式表示;
使用并查集对地址结构模式进行预处理,合并相似度高于预设阈值的地址结构模式字符串;
根据合并后的地址结构模式构建无向图。
2.根据权利要求1所述的方法,其特征在于,通过杰卡德相似度计算方法对地址结构模式间的相似度进行计算。
3.根据权利要求1所述的方法,其特征在于,对于任一个社区,平均加权等于社区内每个顶点的加权度总和除以社区内部的顶点数量,其中每个顶点的加权度等于该顶点的在社区内的所有边的权重之和;
如果平均加权度大于所述平均加权阈值,对社区采用全交集合并方式,将社区内所有顶点的模式字符串按照交集合并;
如果平均加权度小于等于述平均加权阈值,对社区采用全并集合并方式,将社区内所有顶点的模式字符串按照并集合并。
4.根据权利要求1所述的方法,其特征在于,采用组织关联的方式从所述模式库中筛选与目标BGP前缀对应的模式字符串,包括:对每个模式字符串所属的BGP前缀查询其组织标签,获得每个BGP前缀对应的多个英文单词;
查询目标BGP前缀的组织标签,获得目标BGP前缀的英文单词列表;
将英文单词转换为向量,计算任意两个BGP前缀组织标签之间的相似程度;
根据计算的任意两个BGP前缀标签之间的相似程度,排序筛选出最相似的k个模式字符串列表;
利用候选模式生成新的IPv6地址,再将目标BGP前缀换替IPv6地址的前缀。
5.一种基于图社区发现的活跃地址探测装置,其特征在于,包括:无向图构建模块,用于获取IPv6种子地址集合,对所述IPv6种子地址集合进行处理得到无向图;
图算法应用模块,用于通过图社区发现算法对所述无向图进行处理得到多个社区,对多个社区进行平均加权度计算,根据设定的平均加权阈值对社区采用全交集合并或全并集合并的方式进行过滤,利用过滤后的社区中的模式字符串集合组成模式库;
地址探测模块,用于采用组织关联的方式从所述模式库中筛选与目标BGP前缀对应的模式字符串;
对所述IPv6种子地址进行处理得到无向图,包括:对所述IPv6种子地址集合进行划分;
对划分后的每个地址集合用地址结构模式表示;
使用并查集对地址结构模式进行预处理,合并相似度高于预设阈值的地址结构模式字符串;
根据合并后的地址结构模式构建无向图。
6.根据权利要求5所述的装置,其特征在于,通过杰卡德相似度计算方法对地址结构模式间的相似度进行计算。
7.根据权利要求5所述的装置,其特征在于,对于任一个社区,平均加权等于社区内每个顶点的加权度总和除以社区内部的顶点数量,其中每个顶点的加权度等于该顶点的在社区内的所有边的权重之和;
如果平均加权度大于所述平均加权阈值,对社区采用全交集合并方式,将社区内所有顶点的模式字符串按照交集合并;
如果平均加权度小于等于述平均加权阈值,对社区采用全并集合并方式,将社区内所有顶点的模式字符串按照并集合并。
8.根据权利要求5所述的装置,其特征在于,所述地址探测模块,进一步用于,对每个模式字符串所属的BGP前缀查询其组织标签,获得每个BGP前缀对应的多个英文单词;
查询目标BGP前缀的组织标签,获得目标BGP前缀的英文单词列表;
将英文单词转换为向量,计算任意两个BGP前缀组织标签之间的相似程度;
根据计算的任意两个BGP前缀标签之间的相似程度,排序筛选出最相似的k个模式字符串列表;
利用候选模式生成新的IPv6地址,再将目标BGP前缀换替IPv6地址的前缀。
说明书 :
基于图社区发现的活跃地址探测方法及装置
技术领域
背景技术
络管理员就研究重点转移到对IPv6的空间测绘、拓扑发现和安全审计。这些工作的重点涉
及网络测量技术,庞大的IPv6地址空间使得传统的暴力探测技术很难用于IPv6空间的地址
发现。在万兆链路条件下,ZMAPv6采用最高的配置模式进行IPv6全网空间扫描,也至少需要
上亿年的时间,这是无法实现的事情。
探测方法都很难解决全球IPv6单播地址探测面临的一个重要挑战——如何在只有无种子
地址的BGP前缀下进行活跃地址发现。
地址的质量和分布规律,这会导致两个方面的缺陷:一是无法在没有种子地址的BGP前缀下
发现新的IPv6活跃地址;二是种子地址在BGP前缀分布不均衡的现象会使得这类探测方法
生成的候选地址也在BGP前缀上分布不均衡,甚至只会生成高密度区域的种子地址,从而忽
略种子地址数量较少的BGP前缀下可能存在的活跃地址。
陷:一是对用户权限要求较高,需要研究人员有权限获取许多核心服务日志数据,或者在重
要的网关出口进行流量抓取;二是地址发现的数量有限,即这些服务数据能够提供的地址
数量存在上界;三是地址发现的目标不可控,研究者能够获取哪些BGP前缀下的IPV6活跃地
址完全取决于服务记录的日志数据内容,很难保证一定发现指定前缀下的IPv6活跃地址。
跃地址数量也非常有限,难以进一步扩展。
发明内容
些通用的IPv6地址结构规律迁移到任意BGP前缀下进行地址生成。
过滤,利用过滤后的社区中的模式字符串集合组成模式库;
或全并集合并的方式进行过滤,利用过滤后的社区中的模式字符串集合组成模式库;
体现在该技术可以用于任意BGP前缀下的地址发现,自动化体现在该技术能够处理任意数
量、任意类型和任意分布的种子地址集合,高命中率体现在比暴力探测、随机探测和
Random‑Bytes方法具有更高的探测命中率。本技术会首先对IPv6种子地址(收集的曾经或
者一直存活的IPv6地址)处理并建立无向图,然后运用图社区发现算法挖掘常见的地址结
构模式,之后这些模式能够被直接用于任意BGP前缀下的活跃地址发现。此外,本发明为了
解决工程实现中图处理效率较低的问题,引入了并查集对图结构进行预处理。
附图说明
具体实施方式
图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
种子地址集合。建图阶段主要由四个步骤组成:
(Interface Identifier,接口标识符)用于指明主机或路由器单个的网络接口,通常是
IPv6后64比特位,即最后16个半字节位。IPv6活跃地址生成算法最重要的就是对IID部分进
行预测和生成。为了量化IPv6地址的IID半字节取值情况,用xi表示IPv6地址第i个半字节
的取值(标准的IPv6地址有32个半字节),其取值范围是16进制[0,f];对于IID部分,i的取
值范围是[17,32];符号r表示IID部分取值种类;这样用于刻画IID取值情况的量化指标Q计
算公式如下:
因此分子是1。为了让Q取值更加均匀并且避免取对数后出现负数,使用式(3)作为刻画IID
取值情况的最终指标LOG_Q。
于表示输入的地址集合中没有取值变化的半字节位置。4种策略的取值来源如下:
字节位的表示策略。3种统计量属于较大还是较小分别由极差阈值range_t,熵值阈值
entropy_t和取值种类数阈值type_t决定。
相似度计算方法来获取任意两个pattern的相似度——杰卡德相似度。相似度计算策略如
下:
及两种操作——合并和查找。执行步骤如下:初始化每一个pattern都是一个单独的集合,
其Find操作的父节点都是自己本身;依次遍历所有还是初始化的pattern节点并和其余未
被比较过得pattern节点计算相似度分数,如果超过人为设定的较高阈值,则进行Union操
作。
常小的边去除,在经过并查集处理后的pattern节点之间建立无向边得到无向图。
进行过滤,利用过滤后的社区中的模式字符串集合组成模式库。
向图节点聚类的经典方法就是图社区发现算法,包括基于分裂的方法、基于模块度的方法、
基于随机游走的方法、基于信息熵的方法这四类。
模式字符串之间有较高的相似度,最终会导致图社区发现算法将这些节点聚类为一个地址
空间范围非常大的社区,称这种社区为“差社区”。
顶点的策略。对于任何一个社区,平均加权等于每个顶点的加权度总和除以社区内部的顶
点数量,其中每个顶点的加权度等于该顶点的在社区内的所有边的权重之和。
采用全交集合并方式,如果平均少量和无种子地址场景下的活跃地址探测加权度过小,采
用全并集合并方式,如下:
的模式字符串。将最终得到的模式字符串集合称为模式库。
BGP前缀,提出采用组织关联的方式从模式库筛选更可能适合用于该目标BGP前缀的模式字
符串。图4展示了利用组织标签筛选模式库的实现原理。
32的组织标签是由两个英文单词组成的"Tsinghua Universty"。我们采用目前自然语言处
理领域热门的Word2Vec预训练模型(比如fastText)直接将这些英文单词转换为向量。组织
关联策略详细步骤如下:
有名词的组织标签,我们手动通过Google或Baidu查询专有名词的含义,然后使用通用的英
文单词代替专用名词,比如2a03:4000::/32前缀经过查询得到DE‑NETCUP,是德国的老牌主
机商,因此在该前缀的组织标签里添加"hosting provider"这两个英文单词;
询专有名词的含义,然后使用通用的英文单词代替专用名词。
组织标签,这样在执行GAG方法的过程中就无需任何人为干预。
中率。在生成候选地址数量较多的情况下,GAG方法使用的组织关联策略具备最高的命中
率,并且能够发现最多的IPv6活跃地址,这表明本发明提出的GAG方法具有更好的大规模探
测能力。本发明作为一种新型的基于图社区发现的活跃地址探测算法,在探测效率、自动化
水平和可拓展性这几个方面均优于已有的用于同一任务的方法。
性体现在该技术可以用于任意BGP前缀下的地址发现,自动化体现在该技术能够处理任意
数量、任意类型和任意分布的种子地址集合,高命中率体现在比暴力探测、随机探测和
Random‑Bytes方法具有更高的探测命中率。本技术会首先对IPv6种子地址(收集的曾经或
者一直存活的IPv6地址)处理并建立无向图,然后运用图社区发现算法挖掘常见的地址结
构模式,之后这些模式能够被直接用于任意BGP前缀下的活跃地址发现。此外,本发明为了
解决工程实现中图处理效率较低的问题,引入了并查集对图结构进行预处理。
并集合并的方式进行过滤,利用过滤后的社区中的模式字符串集合组成模式库。
所有边的权重之和;
性体现在该技术可以用于任意BGP前缀下的地址发现,自动化体现在该技术能够处理任意
数量、任意类型和任意分布的种子地址集合,高命中率体现在比暴力探测、随机探测和
Random‑Bytes方法具有更高的探测命中率。本技术会首先对IPv6种子地址(收集的曾经或
者一直存活的IPv6地址)处理并建立无向图,然后运用图社区发现算法挖掘常见的地址结
构模式,之后这些模式能够被直接用于任意BGP前缀下的活跃地址发现。此外,本发明为了
解决工程实现中图处理效率较低的问题,引入了并查集对图结构进行预处理。
隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三
个等,除非另有明确具体的限定。
点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不
必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任
一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技
术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结
合和组合。
实施例进行变化、修改、替换和变型。