CN115589362A - 设备类型指纹的生成方法及识别方法、设备及介质 - Google Patents
设备类型指纹的生成方法及识别方法、设备及介质 Download PDFInfo
- Publication number
- CN115589362A CN115589362A CN202211568272.2A CN202211568272A CN115589362A CN 115589362 A CN115589362 A CN 115589362A CN 202211568272 A CN202211568272 A CN 202211568272A CN 115589362 A CN115589362 A CN 115589362A
- Authority
- CN
- China
- Prior art keywords
- stream
- device type
- fingerprint
- equipment
- type fingerprint
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/085—Retrieval of network configuration; Tracking network configuration history
- H04L41/0853—Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
- H04L61/3015—Name registration, generation or assignment
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种设备类型指纹的生成方法及识别方法、设备及介质,属于网络空间资产探测领域,包括:提取原始通信流量中的包字段,根据五元组创建流;将信息从原始通信流量提取到流中;在流中的包头共享相同的字段,或在流中的包头的字段以能够预测的方式更改;生成流特征,包括直接提取的流的基本信息,以及需要计算生成的衍生信息,五元组中的源IP地址信息不计入流的特征字段;将流作为基本元素,一个流对应一个标签,生成流特征,将所有带标签的流特征集合作为数据集;流基本元素按照设备类型使用决策树进行分类;根据决策树的每一条判定路径得到设备类型指纹。本发明具有兼顾准确性、可解释性和灵活性,易读易用性和场景适应性较强的优点。
Description
技术领域
本发明涉及网络空间资产探测领域,更为具体的,涉及一种设备类型指纹的生成方法及识别方法、设备及介质。
背景技术
在过去的几十年里,网络地址转换(Network Address Translation,NAT)技术的使用呈指数级增长。它允许局域网中的多个设备共享有限数量的公网IP(InternetProtocol)地址。比如在家庭网络中,大多数ISP(Internet Service provider)为用户提供支持WI-FI的NAT家庭网关。当用户将他们的设备通过NAT网关接入互联网时,这些设备的私有IP地址是隐藏的,因为当数据报文在通过NAT设备向外发送时,会被映射到统一的公网IP地址。这种技术不仅为解决IPv4公网地址的短缺提供了一种廉价的解决方案,而且出于安全和隐私的原因大受欢迎,因为NAT设备为其内侧的一组计算机提供了匿名性。然而,同样的原因也吸引了那些想要隐藏真实身份的恶意用户,使得NAT的使用在合法和恶意环境中都大为增加。因此,对NAT内侧的设备进行资产探测识别有助于正确地理解场景中互联网设备的性质,掌握网络的负载情况,有利于指导互联网安全配置和管控。
网络空间资产探测根据探测方式主要分为主动探测、被动探测和基于搜索引擎的非侵入式探测。主动探测是指主动向目标主机发送数据包,目标主机收到数据后返回响应数据包,通过分析响应数据包获取目标主机信息的探测方式;被动探测是指利用网络嗅探工具获取目标网络的数据报文,通过分析报文数据得到网络资产信息;基于搜索引擎的非侵入式探测是指利用Shodan、Censys、ZoomEye等专用的网络安全搜索引擎获取网络资产信息。其中,主动探测和基于搜索引擎的非侵入式探测需要输入主机的IP地址作为探测目标,而NAT内侧设备的私有IP地址是被隐藏的,且NAT设备不会向内转发由外侧设备主动发起的数据包,因此这两种探测方式对NAT环境下的设备无效,对NAT内侧设备的探测方式主要采用被动探测。
被动探测的主要操作流程是流量监测设备放置、流量获取、特征提取和设备识别。
在典型场景中,流量监测设备被放置于NAT设备的外侧,探测目标位于NAT设备内侧,对被NAT覆盖的设备的探测方法同样适用于外网设备,因此场景中局域网设备和外网设备能够同时存在,如图1所示。
流量获取一般使用Wireshark、Zeek等现有网络流量数据采集工具,这些工具能够将采集的通信流量以流为单位进行分组,并具备一定的流量分析功能。
特征提取和设备识别是资产探测工作的核心部分,其中设备类型作为主要的识别对象之一受到广泛关注。近年来,研究人员针对设备类型识别提出了各种各样的解决方案,它们的普遍共性特点是在通信流量中提取流量报文特征,通过特征选择以及对特征数据进行数据建模从而形成固定格式的设备指纹,将设备指纹输入机器学习判别模型,进行指纹识别进而输出设备类型或其他判定信息,如图2所示。
现有这种指纹生成和识别方式无法满足如下方面的现实需求:1. 由取自具体时刻的通信流量特征计算生成设备指纹,指纹无法刻画一类设备的共性特征。2. 同一设备在不同时刻生成的设备指纹数据不同,指纹之间难以比对。3. 指纹格式固定,所有被选择的特征字段都会被计算生成和存储,无论它在后期匹配时是否实际用到,造成计算时间和存储空间的浪费。4. 部分设备指纹识别算法可读性弱、或不具备可解释性。
发明内容
本发明的目的在于克服现有技术的不足,提供一种设备类型指纹的生成方法及识别方法、设备及介质,适用于NAT和非NAT环境,可以刻画一类设备的共性特征,同时兼顾了指纹识别的准确性、可解释性和灵活性,具备易读易用性,场景适应性较强等。
本发明的目的是通过以下方案实现的:
一种设备类型指纹的生成方法,包括步骤:
提取原始通信流量中的包字段,然后根据五元组创建流;将信息从原始通信流量提取到所述流中;在流中的包头共享相同的字段,或者在流中的包头的字段以能够预测的方式更改;生成流特征,流的特征字段包括直接提取的流的基本信息,以及需要计算生成的衍生信息,五元组中的源IP地址信息不计入所述流的特征字段;将流作为基本元素,一个流对应一个标签,所有带标签的流特征集合作为数据集;
所有流基本元素按照设备类型使用决策树进行分类;
将决策树的每一条判定路径进行输出,得到字符串,该字符串即为设备类型指纹。
进一步地,在提取原始通信流量中的包字段之前,包括步骤:搭建目标设备已知的数据真值采集环境,将一部分目标设备通过NAT设备接入互联网,另一部分目标设备直接接入互联网,将流量监测采集设备置于NAT外侧的互联网端。
进一步地,在提取原始通信流量中的包字段之前,包括步骤:使用网络流量数据采集工具通过流量监听的方式获取原始通信数据报文,并进行存储以作为原始通信流量数据。
进一步地,所述对所有流基本元素按照设备类型使用决策树进行分类,包括步骤:以有放回抽样的方式取样N次,N为正整数,形成训练集,并用未抽到的用例做测试,评估其误差,将误差控制在设定阈值以内,从而得到分类模型。
进一步地,所述通信流量包括加密通信流量。
一种设备类型指纹的识别方法,包括:
步骤一,按照如上任一项所述设备类型指纹的生成方法生成设备类型指纹;
步骤二,将流作为用于比对设备类型指纹的单位元素,具体包括步骤:
S1,提取一条待识别的所述流;
S2,对所有设备类型指纹进行排序;在设备类型指纹比对时,只有在待比对的当前设备类型指纹中所需流特征还不具备时,才会计算这些特征;一条流信息按顺序逐一比对设备类型指纹集中的设备类型指纹元素,一旦比对成功,则无需计算排序靠后的设备类型指纹元素中需要的更多更复杂的特征信息;
S3,取一条待比对的设备类型指纹;
S4,增量生成设备类型指纹比对到的下一项特征,流特征生成过程中,只有在待比对的当前设备类型指纹的待比对的当前特征还不具备时,才会计算这项流特征,已经计算的特征将保存至该流比对完毕;
S5,将计算出的流特征与设备类型指纹特征比对,若不成功,则回到步骤S3;若成功,则进入步骤S6;
S6,获得该流的设备类型比对结果,判断是否已经比对成功当前设备类型指纹的所有特征,如果是,则获得该设备类型指纹对应的设备类型作为比对结果,如果否,则回到步骤S4执行该设备类型指纹下一项特征的比对;
S7,重复回到步骤S1直到所有流匹配完成,判断待识别数据集中的流是否都匹配完毕,若尚未完成,则回到步骤S1,执行下一条流的指纹匹配,若完成,则结束整个匹配过程。
进一步地,在步骤S2中,当设备类型指纹集不变时,使用固定排序。
进一步地,在步骤S5中若不成功的情形下,在执行回到步骤S3之前,包括子步骤:标记指纹集中的具有相同特征要求的设备类型指纹元素,用于在流的匹配过程中,不再比对这些指纹。
一种计算机设备,包括程序指令运行单元和程序指令存储单元,当程序指令由程序指令运行单元加载运行时执行如上任一所述的设备类型指纹的生成方法。
一种可读存储介质,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如上任一项所述的方法。
本发明的有益效果包括:
本发明技术方案提出了一种基于隐含特征的设备类型指纹生成和识别方法。放弃选择被NAT设备同化的通信流量特征,适用于NAT和非NAT环境;使用决策树的分类路径信息生成设备指纹,可以刻画一类设备的共性特征,同时兼顾了指纹识别的准确性、可解释性和灵活性;流量特征与设备指纹之间、指纹和指纹之间能够直接比对,具备易读易用性;并且提出了相应的轻量化的指纹匹配过程,可以弥补现有指纹生成和识别方式的不足,场景适应性较强。
本发明技术方案更容易抽取网络的行为特征,实现更高的设备类型识别的准确率。
本发明技术方案提高了识别效率,能够显著减少运算量,提高了比对效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为流量监测设备的典型部署场景;
图2为目前的被动设备类型识别典型流程;
图3为本发明实施例的设备指纹生成流程图;
图4为本发明实施例的设备指纹生成示例;
图5为本发明实施例的设备指纹匹配流程图。
具体实施方式
本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。鉴于背景技术中的现有方案无法满足现实需求,本发明的发明人经过创造性思考后,提出了相应的解决方案,至少解决了现有设备类型指纹生成方法的如下技术问题:1)由取自具体时刻的通信流量特征计算生成设备指纹,指纹无法刻画一类设备的共性特征。2)同一设备在不同时刻生成的设备指纹数据不同,指纹之间难以比对。3)指纹格式固定,所有被选择的特征字段都会被计算生成和存储,无论它在后期匹配时是否实际用到,造成计算时间和存储空间的浪费。4)部分设备指纹识别算法可读性弱、或不具备可解释性。
在本发明实施例技术方案中,首先提出了一种NAT环境下基于隐含特征的设备类型指纹生成和识别方法,具体包括如下发明构思:放弃选择被NAT设备同化的通信流量特征,从而适用于NAT和非NAT环境;使用决策树的分类路径信息生成设备指纹,可以刻画一类设备的共性特征,同时兼顾了指纹识别的准确性、可解释性和灵活性;流量特征与设备指纹之间、指纹和指纹之间能够直接比对,具备易读易用性;并且提出了相应的轻量化的指纹匹配过程。本发明技术方案可以弥补现有指纹生成和识别方式的不足,场景适应性较强。
在具体实施过程中,包括设备类型指纹生成技术方案和设备指纹匹配技术方案两个方面。作为本发明技术方案的一个方面,提供一种设备类型指纹生成技术方案,如图3所示,在具体实施过程中,包括如下步骤:
1)搭建目标设备已知的数据真值采集环境
由于本发明技术方案中采用有监督的决策树机器学习算法生成分类模型,所以需要生成带标签的特征数据集,因而在数据采集环境中,配置多种已知的互联网设备作为探测目标。为了使生成的设备类型指纹能够适用于NAT环境和非NAT环境,将一部分设备通过NAT设备接入互联网,另一部分设备直接接入互联网。流量监测采集设备置于NAT外侧的互联网端。如图1所示。
2)被动方式监听捕获通信流量
使用Wireshark等网络流量数据采集工具通过流量监听的方式获取原始通信数据报文,用例如PCAP格式进行存储以作为原始流量数据。
3)将通信流量按流分组,生成流特征
使用Wireshark、tshark等网络流量分析工具提取包字段,然后根据5元组(网络协议,源IP地址、目IP地址、源端口、目端口)创建流,将信息从原始捕获提取到流中。流中的包头共享相同的字段,或者它们的字段以可预测的方式(如计数器)更改。使用流作为系统的基本元素,而不是网络报文,更容易抽取网络的行为特征,实现更高的设备类型识别的准确率。由于本发明技术方案所关注的大多数网络流量都是加密的,本发明技术方案中所提取的信息不依赖于数据包的内容,因此对于报文加密的情况也能提取特征并进行最终的识别。
流特征字段包括几乎可直接提取的流的基本信息,包括但不限于表1所示,以及需要计算生成的衍生信息,包括但不限于表2所示。源IP地址信息不计入流特征字段,因为它们已经被NAT设备映射到统一的地址上了,去除不具备区分性的特征,使得本发明技术方案适用于NAT环境。
表1 流基本信息
流信息 | 说明 |
start_time | 流起始时间 |
end_time | 流结束时间 |
AtoB_packets | 从A到B(向外发送)的数据包的个数 |
BtoA_packets | 从B到A(向内发送)的数据包的个数 |
AtoB_bytes | 从A到B的数据包的总字节数 |
BtoA_bytes | 从B到A的数据包的总字节数 |
B_ip_host | B(外端)的IP地址 |
B_port | B的端口号 |
TTL | IP包头中的time_to_live值 |
tcp_ts | tcp时间戳 |
user_agent | http协议中的user_agent字段 |
http_cookie | http协议中的cookie |
X509sat | 数字证书 |
表2 计算生成的流衍生信息
衍生特征 | 说明 | 计算方法 |
time_duration | 流持续时间 | -end_time |
time_elapsed_sec | 相比于第一个流的时延(秒) | |
log_tcp_ts | tcp_ts的对数 | |
normalized_tcp_ts | 按时间对tcp_ts进行规范化 | |
recommended-ts-group | 一组相近的tcp_ts值 | |
B-ip-class-A | B(外端)是A类IP地址 | |
BtoA_packet_size_max | 从B到A最大的数据包大小 | |
BtoA_window_size_min | 从B到A的tcp窗口最小值 | |
AtoB_window_size_max | 从A到B的tcp窗口最大值 |
4)生成以流为基本元素,带标签的流特征数据集
将流作为基本元素,一个流对应一个标签,将所有带标签的流特征集合作为数据集。
5)针对所有流元素按照设备类型使用决策树进行分类
通过有放回抽样的方式取样N次,形成训练集,并用未抽到的用例做测试,评估其误差。将误差控制在设定阈值以内,以此方法针对所有流元素按照设备类型使用决策树进行分类,得到分类模型。
6)将决策树分类模型的每一条判定路径作为设备类型指纹进行格式化输出和存储
提取决策树路径,格式化输出成如下型式:(特征1条件)(分隔符)(特征2条件)(分隔符)...(分隔符)(特征n条件)。将这个型式的字符串作为对应设备类型的一条指纹进行存储。生成示例如图4。
作为本发明技术方案的另一个方面,提供一种设备指纹匹配技术方案中,如图5所示,在具体实施过程中,包括如下步骤:
1)被动方式截获通信流量
按图1所示方式部署流量监测设备,使用被动探测方式监听获取通信流量。
2)根据协议、源目IP、源目端口将流量按流分组
为了使用本发明技术方案中的设备类型指纹进行设备类型识别,需以同样的模式划分原始通信流量。将原始流量根据协议、源目IP、源目端口按流分组,将流作为用于比对指纹的单位元素。
3)取一条待识别的流
取出下一条待识别的流。
4)指纹排序
对所有指纹按照涉及的特征数量由少到多、计算复杂度由小到大进行排序。排序的目的在于减少指纹比对时的运算量。当指纹集不变时,可以使用固定排序。在本发明技术方案中,指纹比对时流的特征生成遵循“懒模式”,只有在待比对的当前指纹中所需流特征还不具备时,才会计算这些特征。因此,一条流信息按顺序逐一比对指纹集中的指纹元素,一旦比对成功,则无需计算排序靠后的指纹元素中需要的更多更复杂的特征信息,提高识别效率。
5)取一条待比对的指纹
将下一条指纹作为待比对的当前指纹。
6)增量生成指纹比对到的下一项特征
本发明技术方案中,流信息中的特征生成遵循“懒模式”,只有在待比对的当前指纹的待比对的当前特征还不具备时,才会计算这项流特征,已经计算的特征将保存至该流比对完毕。这与现有普遍的先将识别目标的所有特征都计算出来不同,能够显著减少运算量,提高比对效率。
7)比对该项指纹特征
将算出的流特征与指纹特征比对,若不成功,则回到步骤5)。在执行步骤5)之前,会标记指纹集中的具有相同特征要求的指纹元素,在该流的匹配过程中,不再比对这些指纹,进一步提高比对效率。
8)获得该流的设备类型比对结果
判断是否已经比对成功当前指纹的所有特征,如果是,则获得该指纹对应的设备类型作为比对结果,如果否,则回到步骤6)执行该指纹下一项特征的比对。
9)重复回到步骤3)直到所有流匹配完成
判断待识别数据集中的流是否都匹配完毕,若尚未完成,则回到步骤3),执行下一条流的指纹匹配,若完成,则结束整个匹配过程。
实施例1
一种设备类型指纹的生成方法,包括步骤:
提取原始通信流量中的包字段,然后根据五元组创建流;将信息从原始通信流量提取到所述流中;在流中的包头共享相同的字段,或者在流中的包头的字段以能够预测的方式更改;生成流特征,流的特征字段包括直接提取的流的基本信息,以及需要计算生成的衍生信息,五元组中的源IP地址信息不计入所述流的特征字段;将流作为基本元素,一个流对应一个标签,所有带标签的流特征集合作为数据集;
所有流基本元素按照设备类型使用决策树进行分类;
将决策树的每一条判定路径进行输出,得到字符串,该字符串即为设备类型指纹。
实施例2
在实施例1的基础上,在提取原始通信流量中的包字段之前,包括步骤:搭建目标设备已知的数据真值采集环境,将一部分目标设备通过NAT设备接入互联网,另一部分目标设备直接接入互联网,将流量监测采集设备置于NAT外侧的互联网端。
实施例3
在实施例1的基础上,在提取原始通信流量中的包字段之前,包括步骤:使用网络流量数据采集工具通过流量监听的方式获取原始通信数据报文,并进行存储以作为原始通信流量数据。
实施例4
在实施例1的基础上,所述对所有流基本元素按照设备类型使用决策树进行分类,包括步骤:以有放回抽样的方式取样N次,N为正整数,形成训练集,并用未抽到的用例做测试,评估其误差,将误差控制在设定阈值以内,从而得到分类模型。
实施例5
在实施例1的基础上,所述通信流量包括加密通信流量。
实施例6
一种设备类型指纹的识别方法,包括:
步骤一,按照如实施例1~实施例5中任一项所述设备类型指纹的生成方法生成设备类型指纹;
步骤二,将流作为用于比对设备类型指纹的单位元素,具体包括步骤:
S1,提取一条待识别的所述流;
S2,对所有设备类型指纹进行排序;在设备类型指纹比对时,只有在待比对的当前设备类型指纹中所需流特征还不具备时,才会计算这些特征;一条流信息按顺序逐一比对设备类型指纹集中的设备类型指纹元素,一旦比对成功,则无需计算排序靠后的设备类型指纹元素中需要的更多更复杂的特征信息;
S3,取一条待比对的设备类型指纹;
S4,增量生成设备类型指纹比对到的下一项特征,流特征生成过程中,只有在待比对的当前设备类型指纹的待比对的当前特征还不具备时,才会计算这项流特征,已经计算的特征将保存至该流比对完毕;
S5,将计算出的流特征与设备类型指纹特征比对,若不成功,则回到步骤S3;若成功,则进入步骤S6;
S6,获得该流的设备类型比对结果,判断是否已经比对成功当前设备类型指纹的所有特征,如果是,则获得该设备类型指纹对应的设备类型作为比对结果,如果否,则回到步骤S4执行该设备类型指纹下一项特征的比对;
S7,重复回到步骤S1直到所有流匹配完成,判断待识别数据集中的流是否都匹配完毕,若尚未完成,则回到步骤S1,执行下一条流的指纹匹配,若完成,则结束整个匹配过程。
实施例7
在实施例6的基础上,在步骤S2中,当设备类型指纹集不变时,使用固定排序。
实施例8
在实施例6的基础上,在步骤S5中若不成功的情形下,在执行回到步骤S3之前,包括子步骤:标记指纹集中的具有相同特征要求的设备类型指纹元素,用于在流的匹配过程中,不再比对这些指纹。
实施例9
一种计算机设备,包括程序指令运行单元和程序指令存储单元,当程序指令由程序指令运行单元加载运行时执行如实施例1~实施例5任一所述的设备类型指纹的生成方法。
实施例10
一种可读存储介质,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如实施例1~实施例5任一项所述的方法。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
本发明未涉及部分均与现有技术相同或可采用现有技术加以实现。
上述技术方案只是本发明的一种实施方式,对于本领域内的技术人员而言,在本发明公开了应用方法和原理的基础上,很容易做出各种类型的改进或变形,而不仅限于本发明上述具体实施方式所描述的方法,因此前面描述的方式只是优选的,而并不具有限制性的意义。
除以上实例以外,本领域技术人员根据上述公开内容获得启示或利用相关领域的知识或技术进行改动获得其他实施例,各个实施例的特征可以互换或替换,本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (10)
1.一种设备类型指纹的生成方法,其特征在于,包括步骤:
提取原始通信流量中的包字段,然后根据五元组创建流;将信息从原始通信流量提取到所述流中;在流中的包头共享相同的字段,或者在流中的包头的字段以能够预测的方式更改;生成流特征,流的特征字段包括直接提取的流的基本信息,以及需要计算生成的衍生信息,五元组中的源IP地址信息不计入所述流的特征字段;将流作为基本元素,一个流对应一个标签,所有带标签的流特征集合作为数据集;
所有流基本元素按照设备类型使用决策树进行分类;
将决策树的每一条判定路径进行输出,得到字符串,该字符串即为设备类型指纹。
2.根据权利要求1所述的设备类型指纹的生成方法,其特征在于,在提取原始通信流量中的包字段之前,包括步骤:搭建目标设备已知的数据真值采集环境,将一部分目标设备通过NAT设备接入互联网,另一部分目标设备直接接入互联网,将流量监测采集设备置于NAT外侧的互联网端。
3.根据权利要求1所述的设备类型指纹的生成方法,其特征在于,在提取原始通信流量中的包字段之前,包括步骤:使用网络流量数据采集工具通过流量监听的方式获取原始通信数据报文,并进行存储以作为原始通信流量数据。
4.根据权利要求1所述的设备类型指纹的生成方法,其特征在于,所述所有流基本元素按照设备类型使用决策树进行分类,包括步骤:以有放回抽样的方式取样N次,N为正整数,形成训练集,并用未抽到的用例做测试,评估其误差,将误差控制在设定阈值以内,从而得到分类模型。
5.根据权利要求1所述的设备类型指纹的生成方法,其特征在于,所述通信流量包括加密通信流量。
6.一种设备类型指纹的识别方法,其特征在于,包括:
步骤一,按照如权利要求1~5中任一项所述设备类型指纹的生成方法生成设备类型指纹;
步骤二,将流作为用于比对设备类型指纹的单位元素,具体包括步骤:
S1,提取一条待识别的所述流;
S2,对所有设备类型指纹进行排序;在设备类型指纹比对时,只有在待比对的当前设备类型指纹中所需流特征还不具备时,才会计算这些特征;一条流信息按顺序逐一比对设备类型指纹集中的设备类型指纹元素,一旦比对成功,则无需计算排序靠后的设备类型指纹元素中需要的更多更复杂的特征信息;
S3,取一条待比对的设备类型指纹;
S4,增量生成设备类型指纹比对到的下一项特征,流特征生成过程中,只有在待比对的当前设备类型指纹的待比对的当前特征还不具备时,才会计算这项流特征,已经计算的特征将保存至该流比对完毕;
S5,将计算出的流特征与设备类型指纹特征比对,若不成功,则回到步骤S3;若成功,则进入步骤S6;
S6,获得该流的设备类型比对结果,判断是否已经比对成功当前设备类型指纹的所有特征,如果是,则获得该设备类型指纹对应的设备类型作为比对结果,如果否,则回到步骤S4执行该设备类型指纹下一项特征的比对;
S7,重复回到步骤S1直到所有流匹配完成,判断待识别数据集中的流是否都匹配完毕,若尚未完成,则回到步骤S1,执行下一条流的指纹匹配,若完成,则结束整个匹配过程。
7.根据权利要求6所述的设备类型指纹的识别方法,其特征在于,在步骤S2中,当设备类型指纹集不变时,使用固定排序。
8.根据权利要求6所述的设备类型指纹的识别方法,其特征在于,在步骤S5中若不成功的情形下,在执行所述回到步骤S3之前,包括子步骤:标记指纹集中的具有相同特征要求的设备类型指纹元素,用于在流的匹配过程中,不再比对这些指纹。
9.一种计算机设备,其特征在于,包括程序指令运行单元和程序指令存储单元,当程序指令由程序指令运行单元加载运行时执行如权利要求1~5任一所述的设备类型指纹的生成方法。
10.一种可读存储介质,其特征在于,在可读存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行如权利要求1~5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211568272.2A CN115589362B (zh) | 2022-12-08 | 2022-12-08 | 设备类型指纹的生成方法及识别方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211568272.2A CN115589362B (zh) | 2022-12-08 | 2022-12-08 | 设备类型指纹的生成方法及识别方法、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115589362A true CN115589362A (zh) | 2023-01-10 |
CN115589362B CN115589362B (zh) | 2023-03-14 |
Family
ID=84783600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211568272.2A Active CN115589362B (zh) | 2022-12-08 | 2022-12-08 | 设备类型指纹的生成方法及识别方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115589362B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060295A1 (en) * | 2003-09-12 | 2005-03-17 | Sensory Networks, Inc. | Statistical classification of high-speed network data through content inspection |
US8418249B1 (en) * | 2011-11-10 | 2013-04-09 | Narus, Inc. | Class discovery for automated discovery, attribution, analysis, and risk assessment of security threats |
CN113743542A (zh) * | 2021-11-05 | 2021-12-03 | 北京广通优云科技股份有限公司 | 一种基于加密流量的网络资产识别方法与系统 |
CN114611576A (zh) * | 2021-11-26 | 2022-06-10 | 国网辽宁省电力有限公司大连供电公司 | 电网中终端设备的精准识别技术 |
-
2022
- 2022-12-08 CN CN202211568272.2A patent/CN115589362B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060295A1 (en) * | 2003-09-12 | 2005-03-17 | Sensory Networks, Inc. | Statistical classification of high-speed network data through content inspection |
US8418249B1 (en) * | 2011-11-10 | 2013-04-09 | Narus, Inc. | Class discovery for automated discovery, attribution, analysis, and risk assessment of security threats |
CN113743542A (zh) * | 2021-11-05 | 2021-12-03 | 北京广通优云科技股份有限公司 | 一种基于加密流量的网络资产识别方法与系统 |
CN114611576A (zh) * | 2021-11-26 | 2022-06-10 | 国网辽宁省电力有限公司大连供电公司 | 电网中终端设备的精准识别技术 |
Non-Patent Citations (2)
Title |
---|
AHMET AKSOY,SUSHIL LOUIS,MEHMET HADI GUNES: "Operating system fingerprinting via automated network traffic analysis", 《2017 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION (CEC)》 * |
宋长平: "基于DPDK平台的系统指纹识别研究", 《中国优秀硕士学位论文全文数据库》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115589362B (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111865815B (zh) | 一种基于联邦学习的流量分类方法及系统 | |
US11399288B2 (en) | Method for HTTP-based access point fingerprint and classification using machine learning | |
US8180892B2 (en) | Apparatus and method for multi-user NAT session identification and tracking | |
CN102739457B (zh) | 一种基于dpi和svm技术的网络流量识别方法 | |
CN104506484A (zh) | 一种私有协议分析与识别方法 | |
CN113206860B (zh) | 一种基于机器学习和特征选择的DRDoS攻击检测方法 | |
EP3905597B1 (en) | Data stream classification method and message forwarding device | |
CN110868409A (zh) | 一种基于tcp/ip协议栈指纹的操作系统被动识别方法及系统 | |
CN104639391A (zh) | 一种生成网络流量记录的方法及相应的流量检测设备 | |
US20240064107A1 (en) | System for classifying encrypted traffic based on data packet | |
CN111222019B (zh) | 特征提取的方法和装置 | |
CN109450733A (zh) | 一种基于机器学习的网络终端设备识别方法及系统 | |
CN113283498A (zh) | 一种面向高速网络的vpn流量快速识别方法 | |
CN111131070B (zh) | 一种基于端口时间序列的网络流量分类方法、装置及存储介质 | |
CN111935185A (zh) | 基于云计算构建大规模诱捕场景的方法及系统 | |
KR101210622B1 (ko) | Ip 공유기를 검출하는 방법 및 이를 수행하는 시스템 | |
van De Wiel et al. | Enabling non-expert analysis of large volumes of intercepted network traffic | |
CN115589362B (zh) | 设备类型指纹的生成方法及识别方法、设备及介质 | |
Luo et al. | Behavior-based method for real-time identification of encrypted proxy traffic | |
Fan et al. | Identify OS from encrypted traffic with TCP/IP stack fingerprinting | |
CN111200543A (zh) | 一种基于主动服务探测引擎技术的加密协议识别方法 | |
CN113726809B (zh) | 基于流量数据的物联网设备识别方法 | |
Schwartzenberg | Using machine learning techniques for advanced passive operating system fingerprinting | |
Zhou et al. | Classification of botnet families based on features self-learning under network traffic censorship | |
CN113949653A (zh) | 一种基于深度学习的加密协议识别方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |