一种基于概念格的网络资产相似性度量方法与流程

文档序号:18108614发布日期:2019-07-06 11:50阅读:279来源:国知局
一种基于概念格的网络资产相似性度量方法与流程

本发明涉及相似性度量领域,尤其是一种基于概念格的网络资产相似性度量方法。



背景技术:

如今是一个信息技术高速发展的时代,网络早已渗透于当今社会各行各业,随着用户数量的持续增长,社交网络、网上购物、互联网金融等多元应用服务逐渐被人们所熟知和接受,人们也逐渐意识到网络资产发现与识别的重要性。网络资产发现与识别和网络拓扑分析是计算机网络研究的热点。网络资产发现主要手段是针对网络节点开放端口的探测。探测获取的信息是一类典型大数据,其概念繁多、变化迅速,非常难以度量,这为网络资产识别带来了较大困难。因此,迫切需要一种能够度量网络资产相似性的有效方法。



技术实现要素:

基于现有技术的上述缺陷,本发明实施例提供一种可以显著简化网络资产识别过程,能够有效解决网络资产识别过程中差异程度难以量化问题的基于概念格的网络资产相似性度量方法。

本发明能够以多种方式实现,包括方法、系统、设备、装置或计算机可读介质,在下面论述本发明的几个实施例。

作为一种基于概念格的网络资产相似性度量方法,本发明的一个实施例包括步骤:

(1)获取目标ip的存活端口记录;

(2)探测存活端口记录,建立网络资产属性的形式化背景;

(3)构造网络资产属性概念格;

(4)计算网络资产属性的概念格相似度,输出网络资产相似度矩阵。

进一步地,探测存活端口记录包括:

(2-1)探测部分存活端口记录,获取描述资产属性相关字;

(2-2)探测部分存活端口记录,解析端口banner信息;

(2-3)探测剩余存活端口记录,建立端口与协议的二元组关系。

进一步地,探测存活端口记录获取的资产属性相关字、端口banner信息、端口与协议的二元组关系构成网络资产属性。

进一步地,网络资产属性的形式化背景为(u,a,i),其中u={x1,x2,…,xn}为对象集合,xi表示网络资产对象;a={a1,a2,…,am}为网络资产属性集合,ai表示网络资产的某个属性;i表示u、a之间的二元关系,对象x∈u,属性a∈a,xia表示对象x具有属性a。

进一步地,构造网络资产属性概念格的方法包括步骤:

(3-1)利用形式化背景生成网络资产的二值特征向量;

(3-2)将二值特征向量分解为包含网络资产对象、关系和属性的三元组<a,i,b>;

(3-3)利用所述三元组建立网络资产属性概念格。

进一步地,步骤(3-3)中利用快速正则化逼近算法建立网络资产属性概念格,具体包括步骤:

(a)输入参数,参数包括首个待处理的概念<a,b>、首个待处理的属性y∈y,以及属性集合y的子集用于存储处理过的属性;

(b)判断快速正则化逼近是否达到停止条件,是中止算法并输出网络资产属性概念格,否则继续;

(c)设定概念信息指针mj指向待处理属性集合nj,计算概念<c,d>

<c,d>=<a∩{j}>,(b∪{j})>

(d)判断概念<c,d>是否为新概念,是则将(<c,d>,j)加入队列中,否则更新概念信息指针mj指向d,

(e)判断队列是否为空,是则输出建格结果,否则保存概念;

(f)重复b、c、d、e步骤,直至达到中止条件退出算法。

进一步地,步骤(4)包括:

(4-1)计算步骤3建立的概念格中概念的相似度;

(4-2)计算网络资产的概念格相似度;

(4-3)重复上述步骤,直至完成网络资产两两概念格相似度计算,将计算结果输出为网络资产的相似度矩阵。

本发明实施例可实现的积极有益技术效果包括:通过扫描目标ip常用端口获取目标ip的存活端口记录,将探测到的协议与banner信息转换为形式化背景,利用形式化背景生成网络资产属性概念格,通过概念格计算网络资产相似性,该过程通过准确描述网络资产属性特征,可以显著简化网络资产识别过程,能够有效解决网络资产识别过程中差异程度难以量化的问题。

本发明的其他方面和优点根据下面结合附图的详细的描述而变得明显,所述附图通过示例说明本发明的原理。

附图说明

本发明将通过例子并参照附图的方式说明,其中:

图1为本发明实施例提供的基于概念格的网络资产相似性度量方法流程图。

具体实施方式

本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。

图1为本发明实施例提供的基于概念格的网络资产相似性度量方法流程图,如图1所示,包括步骤:

(1)获取目标ip的存活端口记录;

(2)探测存活端口记录,建立网络资产属性的形式化背景;

(3)构造网络资产属性概念格;

(4)计算网络资产属性的概念格相似度,输出网络资相似度矩阵。

探测存活端口记录具体包括:

(2-1)探测部分存活端口记录,获取描述资产属性相关字;

(2-2)探测部分存活端口记录,解析端口banner信息(banner信息是配置给外部接入的提示信息或者欢迎信息);

(2-3)探测剩余存活端口记录,建立端口与协议的二元组关系。

作为实施例,根据探测计划选取探测源,扫描目标ip常用n个端口的存活性,将目标ip的存活端口记录至集合port中,从存活端口集合port中选取端口子集portsp,利用爬虫对开放了http/https协议的portsp端口进行依次爬取,获取描述资产属性的相关字;从存活端口集合port中选取端口子集portba,利用应用层扫描器抓取portba端口的banner信息,分析banner原始数据,增加数据注释并转换记录为json格式;其余端口采取分布式协议探测,得到端口与协议的二元组关系(port',protocol),重复以上步骤,直至完成本次探测计划。探测存活端口记录获取的资产属性相关字、端口banner信息、端口与协议的二元组关系构成ip地址对应的网络资产的属性值。

网络资产属性的形式化背景可表示为(u,a,i),其中u={x1,x2,…,xn}为对象集合,xi表示网络资产对象;a={a1,a2,…,am}为网络资产属性集合,ai代表网络资产的某个属性;i为u和a的之间的二元关系,对于一个对象x∈u,属性a∈a,则xia表示对象x具有属性x。

构造网络资产属性概念格的方法包括步骤:

(3-1)利用形式化背景生成网络资产的二值特征向量;

(3-2)将二值特征向量分解为包含网络资产对象、关系和属性的三元组;

(3-3)利用所述三元组建立网络资产属性概念格。

步骤(3-3)中利用快速正则化逼近算法建立网络资产属性概念格,具体包括步骤:

(a)输入参数,参数包括首个待处理的概念<a,b>、首个待处理的属性y∈y,以及属性集合y的子集用于存储处理过的属性;

(b)判断快速正则化逼近是否达到停止条件,是中止算法并输出建格结果,否则继续;

(c)设定概念信息指针mj指向nj,计算概念<c,d>

<c,d>=<a∩{j}>,(b∪{j})>

(d)判断概念<c,d>是否为新概念,新概念是指未出现过的概念,是则将(<c,d>,j)加入新概念队列中,否则更新概念信息指针mj指向d,

(e)判断队列是否为空,是则输出建格结果,否则保存概念;

(f)重复b、c、d、e步骤,直至达到中止条件退出算法。

步骤(4)计算网络资产属性的概念格相似度,输出网络资相似度矩阵包括:

(4-1)计算步骤3建立的概念格中概念的相似度;

(4-2)计算网络资产的概念格相似度;

(4-3)重复上述步骤,直至完成网络资产两两概念格相似度计算,将计算结果输出为网络资产的相似度矩阵。

作为具体实施例

步骤(1)获取目标ip的存活端口记录具体包括:

(1-1)制定合理的探测策略集合st;

(1-2)使用开源扫描工具zmap对目标ip的n个端口进行无状态端口存活性扫描,示例性地,扫描目标ip最常用的1000个端口的存活性,具体选取21,22,23,25,110,143,80,81,82,83,88,443,445,512,513,514,1433,1521,2082,2083,2181,2601,2604,3128,3690,4848,8088,8086,8081,8080,3306,5432,3389,5984,6379,7001,7002,8069,9200端口,使用扫描工具zmap对目标ip的以上端口进行无状态端口存活性扫描,以字典的形式将目标ip的存活端口记录到集合{ip:port}中。因为采取的扫描方式是无状态扫描,没有进行完整的tcp三次握手,因此扫描速度较有状态扫描有极大提升。

步骤(2)探测存活端口记录,建立网络资产属性的形式化背景,具体包括:

(2-1)探测部分存活端口记录,获取描述资产属性相关字;

从目标ip的存活端口集合port中选取开放了http/https协议的端口子集portsp(常选取80、8080、8088、443等),利用爬虫工具对portsp端口进行网页爬取,将爬取到的页面中的文字和图像进行半自动分析,提取出包含设备类型、厂商等资产属性的关键字。

(2-2)探测部分存活端口记录,解析端口banner信息;

从目标ip的存活端口集合port选取端口子集portba集(例如选取21、22、23、25、102、110、443、1911、20000、2323、443、465、47808、502、53、7547、80、8080、8888、993、995等),利用开源扫描工具zgrab按照端口协议格式进行发包,解析目标ip返回的字符串,获取端口banner信息,给每条banner数据增加注释,并转换记录为json格式。

(2-3)探测剩余存活端口记录,建立端口与协议的二元组关系,具体包括:

分布式部署端口扫描工具nmap,向目标ip的剩余端口发送tcp、udp探测报文。目标ip端口是tcp端口,则尝试建立tcp连接,尝试等待片刻,等待时间内通常会接收到目标机发送的信息,如果无法确定端口协议,nmap再次尝试发送其他探测包(从nmap服务探测库中挑选合适的probe),然后将得到的回复包与数据库中的签名进行对比,如果反复探测都无法得出具体应用,记录应用返回报文,以便进行进一步人工判断;目标ip端口是udp端口,则直接使用nmap服务探测库中的探测包进行探测匹配,对比分析匹配结果得出udp应用服务类型。

探测存活端口记录获取的资产属性相关字、端口banner信息、端口与协议的二元组关系构成ip地址对应的网络资产的属性值。示例性地,网络资产的归属城市、isp、所属机构、型号、重量、连接方式、对外服务、ip地址、mac地址、操作系统等属性是能够被探测到的属性,这些属性构成网络资产特征属性关键字,其二元组关系构成网络资产的属性值。

网络资产属性的形式化背景为(u,a,i),其中u={x1,x2,…,xn}为对象集合,xi表示网络资产对象;a={a1,a2,…,am}为网络资产属性集合,ai表示网络资产的某个属性;i表示u、a之间的二元关系,对于对象x∈u,属性a∈a,xia表示对象x具有属性a。

构建网络资产属性形式化背景的步骤包括:构建一张网络资产形式化背景表格,表格行表示探测到的网络资产,列表示网络资产属性值;分析探测存活端口记录获得的数据,得到网络资产对应的属性值;将属性值插入形式化背景表格中,重复上述步骤,直至插入完成网络资产的所有属性值,保存文件为csv格式。

步骤(3)构造网络资产属性概念格,具体包括:

(3-1)利用形式化背景生成网络资产的二值特征向量;

将网络资产的所有特征属性集成到一个树型结构中,构成网络资产属性特征树。特征树中每一个叶子节点代表一个属性,表示网络资产中至少一个设备具有该特征属性。通过特征树可以把网络资产的特征信息表示为一个二值特征向量,向量的个数为特征树中叶子节点的数目,网络资产具有的特征在向量中标为1,不具有的特征在向量中标为0,如(1,0,0,1,0,1,1)。

(3-2)将二值特征向量分解为包含网络资产对象、关系和属性的三元组<a,i,b>;

形式化背景表示为(u,a,i)时,定义两种运算x*,b*

式中,x*为x中所有对象的属性集合,b*为b中所有对象的属性集合。如果二元组(x,b)满足x*=b且b*=x,则称(x,b)是一个形式概念,其中x称为概念的外延,b称为概念的内涵。

(3-3)利用所述三元组建立网络资产属性概念格,

步骤(3-3)中利用快速正则化逼近算法建立网络资产属性概念格,快速正则化逼近(fastclose-by-one,简称fcbo)算法通过减少重复计算的概念格的总数来获取更高的效率,可以解决其它广泛应用的建格算法如cbo、nextclosure等算法时间开销大的问题。利用快速正则化逼近算法建立网络资产属性概念格的过程包括:

(a)输入参数,参数包括首个待处理的概念<a,b>、首个待处理的属性y∈y,以及属性集合y的子集用于存储处理过的属性;

(b)判断快速正则化逼近是否达到停止条件,是中止算法并输出建格结果,否则继续;

(c)设定概念信息指针mj指向nj,nj表示待处理属性集合,计算概念<c,d>

<c,d>=<a∩{j}>,(b∪{j})>

(d)判断概念<c,d>是否为新概念,是则将(<c,d>,j)加入新概念队列中,否则更新概念信息指针mj指向d,

(e)判断队列是否为空,是则输出建格结果,否则保存概念;

(f)重复b、c、d、e步骤,直至达到中止条件退出算法。

步骤(4)计算网络资产属性的概念格相似度,输出网络资相似度矩阵包括:

(4-1)计算步骤3建立的概念格中概念的相似度;

(4-2)计算网络资产的概念格相似度;

(4-3)重复上述步骤,直至完成网络资产两两概念相似度计算,将计算结果输出为网络资产的相似度。

步骤3建立的概念格l(u,a,i)中两个概念(x1,b1)和(x2,b2)的相似度为:

其中α,β表示对象与属性的权重参数,满足α+β=1,通常设置α=β=0.5。

步骤(3)建立的概念格l(u,a,i)中,设网络资产x1涉及的概念集合定义为c,网络资产x2涉及的概念集合定义为d,则网络资产x1和x2的概念格相似度为:

其中概念集合c中的每个概念的外延都包含网络资产x1,概念集合d中的每个概念的外延都包含网络资产x2。|c|为概念集合c中概念的个数,|d|为概念集合d中概念的个数。网络资产的概念格相似度等于网络资产的相似度。

本发明的不同方面、实施例、实施方式或特征能够单独使用或任意组合使用。

本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。

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