CN116346326A - 一种网络设备固件指纹模型自动化生成方法及装置 - Google Patents
一种网络设备固件指纹模型自动化生成方法及装置 Download PDFInfo
- Publication number
- CN116346326A CN116346326A CN202310181636.XA CN202310181636A CN116346326A CN 116346326 A CN116346326 A CN 116346326A CN 202310181636 A CN202310181636 A CN 202310181636A CN 116346326 A CN116346326 A CN 116346326A
- Authority
- CN
- China
- Prior art keywords
- firmware
- data packet
- network device
- information
- returned
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 239000013598 vector Substances 0.000 claims abstract description 24
- 238000000605 extraction Methods 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 230000003068 static effect Effects 0.000 abstract description 9
- 238000001514 detection method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009193 crawling Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种网络设备固件指纹模型自动化生成方法及装置,具体包括:根据预定IP地址向第一服务端口发送第一请求;接收基于第一请求返回的第一数据包;基于返回的第一数据包提取网络设备固件的最新更新时间LMT信息;根据预定IP地址向第二服务端口发送第二请求;接收基于第二请求返回的第二数据包;基于返回的第二数据包提取网络设备固件版本信息;利用LMT信息、版本信息构建网络设备固件指纹模型。本发明采用网络设备Web服务的页面特征以及静态资源的LMT特征构建指纹特征向量,此两种特征均可远程获取,不需要登录设备或者解压固件,本发明还利用同源探测方法,获取设备的固件信息,用以标定指纹特征向量,实现了固件指纹的自动化生成。
Description
技术领域
本发明涉及物联网技术领域,尤其涉及一种网络设备固件指纹模型自动化生成方法及装置。
背景技术
随着物联网技术的快速普及以及万物互联智能场景的落地,接入到网络空间中的终端设备越来越多,海量的网络设备给人们的生活带来了巨大的便利,加速了信息化的建设。但是由于这些网络设备缺乏细粒度的安全防护措施或是设计上存在较多的安全缺陷,黑客便可以利用这些漏洞对网络设备进行攻击,从而给人们使用网络设备造成巨大影响。从漏洞公开报告中可以发现,漏洞往往与受影响设备的固件版本紧密相关,所以如果能远程识别出在线网络设备的固件版本,无论是对于网络测绘还是安全性分析都起到非常重要的作用。而建立网络设备固件指纹模型是一种常用的识别网络设备固件版本的方法。
2021年的IEEE Transactions on Dependable and Secure Computing出版的《Understanding Security Risks of Embedded Devices through Fine-grainedFirmware Fingerprinting》文献中所建立的指纹模型是以<请求,响应>作为其特征向量的,其方法是从厂商的官网中下载设备固件并解压提取固件的文件系统,首先获得固件文件系统中WWW目录中所有文件的“位置/文件名”构成原始列表,然后在虚拟环境中模拟固件,获取原始列表中可以远程访问的文件列表。以上过程获得的文件列表构成指纹模型中的请求,然后从本地文件中提取元素生成它们的DOM树作为指纹模型中的响应。特征向量构建完毕后,通过爬取厂商官网的支持页面获得设备类型、供应商名称和产品版本等元数据为固件指纹打标签,从而生成固件指纹模型。
上述的技术方案需要成功下载和解压固件,提取出相关的文件来构建指纹模型。但出于安全等因素考虑,一些供应商不提供研究所需的部分固件,或对固件进行加密等操作,而解压加密的固件映像是非常困难棘手的,这大大缩减了上述方法的适用范围;另外,上述方法也需要仿真模拟固件,但出于商业原因,一些制造商不提供有关固件映像的体系结构和字节序的信息,现有仿真器等工具难以模拟这些固件映像,这同样很大程度限制了该方法的适用范围。
发明内容
本发明提供一种网络设备固件指纹模型自动化生成方法及装置,用于远程识别网络设备的固件版本,本发明采用网络设备Web服务的页面特征以及静态资源的LMT特征构建指纹特征向量,此两种特征均可以通过Web服务远程获取,解决了现有技术在生成固件指纹模型时,需要登录设备或者解压固件的问题;本发明还利用同源探测方法,获取网络设备的固件信息,用以标定指纹特征向量,实现了固件指纹的自动化生成。
本发明提供的网络设备固件指纹模型自动化生成方法,包括:
根据预定IP地址向第一服务端口发送第一请求;
接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息;
基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;
根据所述预定IP地址向第二服务端口发送第二请求;
接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;
基于所述返回的第二数据包提取网络设备固件版本信息;
利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。
根据本发明提供的网络设备固件指纹模型自动化生成方法,所述第一服务端口为Web服务端口。
根据本发明提供的网络设备固件指纹模型自动化生成方法,在接收基于所述第一请求返回的第一数据包后,还包括:
步骤一、从返回的第一数据包的HTTP Banner头部中检查是否包含最新更新时间LMT信息;
步骤二、在包含LMT信息的情况下,执行步骤“基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息”。
根据本发明提供的网络设备固件指纹模型自动化生成方法,所述基于所述返回的第一数据包提取LMT信息,包括:
基于所述返回的第一数据包,提取出返回的第一数据包中所有的文件更新时间信息,并保存文件最新更新时间LMT信息。
根据本发明提供的一种网络设备固件指纹模型自动化生成方法,所述第二服务端口为除Web服务端口外的其他服务端口。
根据本发明提供的网络设备固件指纹模型自动化生成方法,在所述接收基于所述第二请求返回的第二数据包后,还包括:
步骤一、从返回的第二数据包的Banner头部中检查是否包含设备固件的版本信息;
步骤二、在包含设备固件的版本信息的情况下,执行步骤“基于所述返回的第二数据包提取网络设备固件版本信息”。
根据本发明提供的一种网络设备固件指纹模型自动化生成方法,在确定所述返回的第二数据包的Banner头部中包含设备固件的版本信息后,还包括:
步骤一、判断第一服务端口和第二服务端口是否同源,即是否对应同一网络设备;
步骤二、在第一服务端口和第二服务端口对应同一网络设备的情况下,执行步骤“利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型”。
根据本发明提供的一种网络设备固件指纹模型自动化生成方法,所述判断第一服务端口和第二服务端口是否对应同一设备,包括:
步骤一、判断两个端口的IPID是否相似,若相似则对应同一网络设备;
步骤二、两个端口的IPID不相似时,进一步判断两个端口的TCP Option字段顺序以及Timestamp是否相同,若相同则对应同一网络设备。
根据本发明提供的一种网络设备固件指纹模型自动化生成方法,基于所述返回的第二数据包提取网络设备固件版本信息,同时提取所述网络设备的品牌、型号信息。
根据本发明提供的一种网络设备固件指纹模型自动化生成方法,所述利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型,包括:
步骤一、通过预定IP地址的第一服务端口获取页面特征;
步骤二、利用所述页面特征与所述LMT信息,构建网络设备固件的特征向量;
步骤三、将所述网络设备固件版本信息作为所述网络设备固件的版本标签;
步骤四、关联所述网络设备固件的特征向量与所述网络设备固件的版本标签,以构建所述网络设备固件指纹模型。
根据本发明提供的一种网络设备固件指纹模型自动化生成方法,所述页面特征采用页面的SimHash聚类值进行表征。
本发明还提供一种网络设备固件指纹模型自动化生成装置,包括:
LMT信息提取模块,用于基于第一数据包提取网络设备固件的LMT信息,所述第一数据包是根据预定IP地址向网络设备第一服务端口发送第一请求后返回的数据包;
版本信息提取模块,用于基于第二数据包提取网络设备固件版本信息,同时提取网络设备的品牌、型号信息,所述第二数据包是根据预定IP地址向第二服务端口发送第二请求后返回的数据包;
指纹模型构建模块,用于利用LMT信息、固件版本信息构建网络设备固件指纹模型。
根据本发明提供的网络设备固件指纹模型自动化生成装置,所述指纹模型构建模块包括:
第一同源探测模块,用于判断两个端口的IPID是否相似,如果两个端口的IPID相似,认为两个端口同源,即对应同一网络设备,若两个端口的IPID不相似,进一步判断两个端口的TCP Option字段顺序以及Timestamp是否相同;
第二同源探测模块,用于在判定两个端口的IPID不相似时,进一步判断两个端口的TCP Option字段顺序以及Timestamp是否相同,如果两个端口的TCP Option顺序不同,认为这两个端口一定不同源,即对应不同网络设备。如果没有判断出不同源,则认为两个端口大概率同源,即对应同一网络设备;
页面特征获取模块,用于获取预定IP地址第一服务端口的页面特征;
特征向量构建模块,用于利用所述页面特征与所述LMT信息,构建网络设备固件的特征向量;
版本标签选取模块、用于选取所述网络设备固件版本信息作为所述网络设备固件的版本标签;
指纹模型生成模块,用于关联所述网络设备固件的特征向量与所述网络设备固件的版本标签,生成网络设备固件指纹模型。
本发明提供的同源探测模块,选取IP数据包中的IPID以及TCP数据包中的option顺序以及timestamp作为特征来判断目标IP的不同服务端口是否对应同一网络设备,从而保障所构建的固件指纹特征向量是与同一网络设备的固件版本标签相关联。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的网络设备固件指纹模型自动化生成方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的网络设备固件指纹模型自动化生成方法。
本发明提供的一种网络设备固件指纹模型自动化生成方法,通过根据预定IP地址向第一服务端口发送第一请求;接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息;基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;根据所述预定IP地址向第二服务端口发送第二请求;接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;基于所述返回的第二数据包提取网络设备固件版本信息;利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。本发明采用网络设备Web服务的页面特征以及静态资源的LMT特征构建指纹特征向量,此两种特征均可远程获取,解决了现有技术在生成固件指纹模型时,需要登录设备或者解压固件的问题,本发明还利用同源探测方法,获取设备的固件信息,用以标定指纹特征向量,实现了固件指纹的自动化生成。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的网络设备固件指纹模型自动化生成方法流程图;
图2是本发明提供的网络设备指纹模型构建过程图;
图3是本发明提供的同源检测流程图;
图4是本发明提供的网络设备的固件指纹模型;
图5是本发明提供的网络设备固件指纹模型自动化生成装置的结构示意图;
图6是本发明提供的网络设备固件指纹模型自动化生成装置中指纹模型构建模块的结构示意图;
图7是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图7描述本发明的具体实施例。
图1是本发明提供的网络设备固件指纹模型自动化生成方法流程图,如图1所示,本发明提供的网络设备固件指纹模型自动化生成方法包括:
步骤S100、根据预定IP地址向第一服务端口发送第一请求;
步骤S110、接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息;
步骤S120、基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;
步骤S130、根据所述预定IP地址向第二服务端口发送第二请求;
步骤S140、接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;
步骤S150、基于所述返回的第二数据包提取网络设备固件版本信息;
步骤S160、利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。
图2是本发明提供的网络设备指纹模型构建过程图,结合图1和图2,对上述步骤分别作详细说明:
步骤S100、根据预定IP地址向第一服务端口发送第一请求;
在本发明实施例中,所述第一服务端口为Web服务端口,第一请求为HTTP请求。
步骤S110、接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息。
具体地,在获取目标IP的Web服务的最新LMT前,需要判断目标IP的Web服务是否可以获取LMT信息:此过程需要向目标设备的web服务端口发送HTTP请求数据包,从返回的数据包的HTTP Banner头部中检查是否含有LMT信息,在确定存在LMT信息的情况下,进入步骤S120。
步骤S120、基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;
具体地,确定返回的数据包的HTTP Banner头部中含有Last-Modified字段(LMT),对目标IP Web服务的静态资源文件批量发送HTTP请求数据包,提取出返回数据包中所有的文件更新时间信息,保存文件最新更新时间LMT信息,即可获取预定IP地址Web服务的LMT信息。
步骤S130、根据所述预定IP地址向第二服务端口发送第二请求;
所述第二服务端口为除Web服务端口外的其他服务端口,所述第二请求为SNMP请求或onvif请求。
步骤S140、接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;
具体地,判断预定IP Web服务端口外其他服务端口返回的数据包Banner是否包含版本信息:此过程需要向预定IP网络设备Web服务端口外的其他服务端口发送探测数据包,例如SNMP 161端口,onvif 3702端口等服务端口,并接收基于这些服务返回的数据包,从这些数据包的banner头部中检查是否包含设备固件的版本信息,如果发现了固件版本信息,进入步骤150。
步骤S150、基于所述返回的第二数据包提取网络设备固件版本信息;
在提取网络设备固件版本信息时,同时提取网络设备固件的品牌、型号信息。
具体地,在确定返回的第二数据包的Banner头部中包含设备固件版本信息的情况下,基于返回的第二数据包,根据服务的协议报文格式提取出预定IP其它服务对应网络设备的品牌、型号以及版本信息。
步骤S160、利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。
在确定接收基于预定IP其它服务返回的数据包中包括网络设备固件版本信息后,进一步判断这些端口与获得LMT特征的Web端口是否同源,即判断两个端口是否对应同一个网络设备。由于TCP和IP协议是由操作系统实现的,其中一些字段会反映目标主机的状态,本发明选取IP数据报文中的IPID以及TCP数据报文中的option顺序以及timestamp作为特征来判断目标主机是否一致,这种判断方式称为同源探测。
可以理解的是,在确定接收基于预定IP其它服务返回的数据包中包括网络设备固件版本信息后,作为一种实施例,可以首先判断获得版本信息的端口与获得LMT特征的Web端口是否同源,即判断两个端口是否对应同一个网络设备,然后再执行步骤S150:基于所述返回的第二数据包提取网络设备固件版本信息;作为第二种实施例,也可以首先执行S150:基于所述返回的第二数据包提取网络设备固件版本信息,再判断获得版本信息的端口与获得LMT特征的Web端口是否同源,即判断两个端口是否对应同一个网络设备。
图3是本发明提供的同源检测流程图,如图3所示,同源探测的具体流程包括:
步骤一、判断两个端口的IPID是否相似:IPID是从操作系统维护的计数器中取值的,如果两个端口的IPID相似,判定两个端口对应同一网络设备,结束同源探测;
步骤二、在判定两个端口的IPID不相似时,进一步判断两个端口的TCP Option字段顺序以及Timestamp是否相同:不同的操作系统排布TCP option字段的顺序不同,如果两个端口的TCP Option顺序不同,那么我们认为这两个端口一定不同源,即来自不同的网络设备。同样,TCP Option中的timestamp的取值也取决于操作系统,所以如果两个端口返回的报文中的TCP Timestamp差距较大,那么这两个端口也一定不同源,即来自不同的网络设备。如果没有判断出不同源,则认为两个端口大概率同源。如果两个端口TCP Option顺序和Timestamp一致,判定两个端口对应同一网络设备,结束同源探测,否则判定两个端口对应不同网络设备,结束同源探测。
进一步地,在确定获得LMT信息的Web服务端口和获取固件版本信息的服务端口对应同一网络设备的情况下,开始构建网络设备固件指纹模型。
图4是本发明提供的网络设备的固件指纹模型,如图4所示,网络设备的固件指纹模型由固件指纹特征向量和固件版本标签两部分组成,其中页面特征可以是能够区分设备型号的特征,例如从web页面上提取到的型号关键字或web页面内容哈希等。LMT特征为设备Web服务静态资源文件的属性Last-Modified-Time,即文件的最后修改时间。设备Web服务静态资源文件为常见css、js文件,以及一些设备固件自带的License说明文件等。厂商如果需要对设备修复漏洞、添加功能或提高性能,开发人员需要更新相应的固件源代码,固件的文件系统就会被修改,那么此时的文件LMT就会被更新为修改时间。对于同一品牌型号设备,其不同的固件版本更新肯定会隔一段时间,那么固件的文件最后修改时间就会不同。因此结合Web页面的品牌型号特征,以及静态资源文件的LMT属性,可用于表征不同的固件版本。
具体地,自动化生成网络设备的固件指纹还需要提取页面特征,所述页面特征用于表征不同品牌、型号的网络设备,考虑到不同品牌、型号的Web页面特征存在差异,作为一种实施方式,通过向80、443端口发送请求获取返回数据,从返回数据中获取网络服务端口的页面,即网络设备web首页,基于所述网络设备web首页提取页面特征;作为第二种实施方式,通过向网络服务端口发送请求以获取相应所述端口的数据包,直接从数据包中提取出型号信息作为页面特征。本发明实施例采用预定IP地址的Web服务页面的SimHash聚类值作为页面特征。通过页面特征与所获取的LMT构造网络设备固件指纹的特征向量<页面特征,LMT>;将提取的网络设备固件版本信息作为所述网络设备固件的版本标签;关联所述网络设备固件指纹的特征向量与所述网络设备固件的版本标签,生成网络设备固件指纹模型。该指纹模型可以通过Web服务远程识别网络设备的品牌、型号以及版本信息。
本发明实施例采用的一种网络设备固件指纹模型自动化生成方法,用于远程识别网络设备的固件版本,所设计指纹特征向量结合了网络设备的Web服务的页面特征以及静态资源的LMT特征,此两种特征均可以通过Web服务远程获取,解决了其它工作需要登录设备或者解压固件的限制;本发明利用同源探测方法,通过其它服务所获取的设备固件信息来标定指纹特征向量,实现了固件指纹模型的自动化生成。
本发明还提供了一种网络设备固件指纹模型自动化生成装置,下文描述的网络设备固件指纹模型自动化生成装置与上文描述的网络设备固件指纹模型自动化生成方法可相互对应参照。
图5是本发明提供的网络设备固件指纹模型自动化生成装置的结构示意图,如图5所示,本发明实施例提供的网络设备固件指纹模型自动化生成装置包括:
LMT信息提取模块,用于基于第一数据包提取网络设备固件的LMT信息,所述第一数据包是根据预定IP地址向网络设备第一服务端口发送第一请求后返回的数据包;
版本信息提取模块,用于基于第二数据包提取网络设备固件版本信息,同时提取所述网络设备固件的品牌、型号信息,所述第二数据包是根据预定IP地址向第二服务端口发送第二请求后返回的数据包;
指纹模型构建模块,用于利用LMT信息、固件版本信息构建网络设备固件指纹模型。
图6是本发明提供的网络设备固件指纹模型自动化生成装置中指纹模型构建模块的结构示意图,如图6所示,本发明实施例提供的指纹模型构建模块包括:
第一同源探测模块610,用于判断两个端口的IPID是否相似;
第二同源探测模块620,用于判断两个端口的TCP Option字段顺序以及Timestamp是否相同。
页面特征获取模块630,用于获取预定IP地址第一服务端口的页面特征;
特征向量构建模块640,用于利用所述页面特征与所述文件最新更新时间信息,构建网络设备固件的特征向量;
版本标签选取模块650,用于选取所述网络设备固件版本信息作为所述网络设备固件的版本标签;
指纹模型生成模块660,用于关联所述网络设备固件的特征向量与所述网络设备固件的版本标签,生成网络设备固件指纹模型。
可以理解的是,图6实施例对应的是前文所述在确定接收基于预定IP其它服务返回的数据包中包括网络设备固件版本信息后,首先执行S150:基于所述返回的第二数据包提取网络设备固件版本信息,再判断获得版本信息的端口与获得LMT特征的Web端口是否同源,即判断两个端口是否来自同一个网络设备。
在本申请的另外一种实施例中,介绍了在确定接收基于预定IP其它服务返回的数据包中包括网络设备固件版本信息后,可以首先判断获得版本信息的端口与获得LMT特征的Web端口是否同源,即判断两个端口是否来自同一个网络设备,然后再执行步骤S150:基于所述返回的第二数据包提取网络设备固件版本信息,在此基础上,第一同源探测模块与第二同源探测模块也可以包括在版本信息提取模块中,即版本信息提取模块包括:
第一同源探测模块,用于判断两个端口的IPID是否相似;
第二同源探测模块,用于在判定两个端口的IPID不相似时,进一步判断两个端口的TCP Option字段顺序以及Timestamp是否相同;
版本信息提取子模块,用于提取网络设备固件版本信息,同时提取所述网络设备固件的品牌、信号信息。
上述两种实施方式,可以选择任一种来实施。
本发明提供的同源探测模块,选取IP数据包中的IPID以及TCP数据包中的option顺序以及timestamp作为特征来判断目标IP的不同服务端口是否来自同一设备,从而保障所构建的固件指纹特征向量是与同一设备的固件版本标签相关联。
本发明提供的网络设备固件指纹模型自动化生成方法,通过根据预定IP地址向第一服务端口发送第一请求;接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息;基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;根据所述预定IP地址向第二服务端口发送第二请求;接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;基于所述返回的第二数据包提取网络设备固件版本信息;利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。本发明采用网络设备Web服务的页面特征以及静态资源的LMT特征构建指纹特征向量,此两种特征均可远程获取,解决了现有技术在生成固件指纹模型时,需要登录设备或者解压固件的问题,本发明还利用同源探测方法,获取设备的固件信息,用以标定指纹特征向量,实现了固件指纹的自动化生成。
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行网络设备固件指纹模型自动化生成方法,该方法包括:根据预定IP地址向第一服务端口发送第一请求;接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息;基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;根据所述预定IP地址向第二服务端口发送第二请求;接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;基于所述返回的第二数据包提取网络设备固件版本信息;利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的网络设备固件指纹模型自动化生成方法,该方法包括:根据预定IP地址向第一服务端口发送第一请求;接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息;基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;根据所述预定IP地址向第二服务端口发送第二请求;接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;基于所述返回的第二数据包提取网络设备固件版本信息;利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (14)
1.一种网络设备固件指纹模型自动化生成方法,其特征在于,包括:
根据预定IP地址向第一服务端口发送第一请求;
接收基于所述第一请求返回的第一数据包,所述第一数据包包括HTTP信息;
基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息;
根据所述预定IP地址向第二服务端口发送第二请求;
接收基于所述第二请求返回的第二数据包,所述第二数据包包括网络设备固件版本信息;
基于所述返回的第二数据包提取网络设备固件版本信息;
利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型。
2.根据权利要求1所述的网络设备固件指纹模型自动化生成方法,其特征还在于,所述第一服务端口为Web服务端口。
3.根据权利要求1所述的网络设备固件指纹模型自动化生成方法,其特征还在于,在接收基于所述第一请求返回的第一数据包后,还包括:
从返回的第一数据包的HTTP Banner头部中检查是否包含LMT信息;
在包含LMT信息的情况下,执行步骤“基于所述返回的第一数据包提取网络设备固件的最新更新时间LMT信息”。
4.根据权利要求1或3所述的网络设备固件指纹模型自动化生成方法,其特征还在于,所述基于所述返回的第一数据包提取最新LMT信息,包括:
基于所述返回的第一数据包,提取出返回的第一数据包中所有的文件更新时间信息,并保存文件最新更新时间LMT信息。
5.根据权利要求1所述的网络设备固件指纹模型自动化生成方法,其特征还在于,所述第二服务端口为除Web服务端口外的其他服务端口。
6.根据权利要求1所述的网络设备固件指纹模型自动化生成方法,其特征还在于,在所述接收基于所述第二请求返回的第二数据包后,还包括:
S61、从返回的第二数据包的Banner头部中检查是否包含设备固件的版本信息;
S62、在确定所述返回的第二数据包的Banner头部中包含设备固件的版本信息的情况下,执行步骤“基于所述返回的第二数据包提取网络设备固件版本信息”。
7.根据权利要求6所述的网络设备固件指纹模型自动化生成方法,其特征还在于,在确定所述返回的第二数据包的Banner头部中包含设备固件的版本信息后,还包括:
S71、判断第一服务端口和第二服务端口是否对应同一网络设备;
S72、在第一服务端口和第二服务端口对应同一网络设备的情况下,执行步骤“利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型”。
8.根据权利要求7所述的网络设备固件指纹模型自动化生成方法,其特征还在于,所述判断第一服务端口和第二服务端口是否对应同一设备,包括:
S81、判断两个端口的IPID是否相似,若相似则对应同一网络设备;
S82、两个端口的IPID不相似时,进一步判断两个端口的TCP Option字段顺序以及Timestamp是否相同,若相同则对应同一网络设备。
9.根据权利要求1所述的网络设备固件指纹模型自动化生成方法,其特征还在于,基于所述返回的第二数据包提取网络设备固件版本信息,同时提取所述网络设备的品牌、型号信息。
10.根据权利要求1所述的网络设备固件指纹模型自动化生成方法,其特征还在于,所述利用所述LMT信息、网络设备固件版本信息构建网络设备固件指纹模型,包括:
S101、通过预定IP地址的第一服务端口获取页面特征;
S102、利用所述页面特征与所述LMT信息,构建网络设备固件的特征向量;
S103、将所述网络设备固件版本信息作为所述网络设备固件的版本标签;
S104、关联所述网络设备固件的特征向量与所述网络设备固件的版本标签,以构建所述网络设备固件指纹模型。
11.根据权利要求10所述的网络设备固件指纹模型自动化生成方法,其特征还在于,所述页面特征采用页面的SimHash聚类值进行表征。
12.一种网络设备固件指纹模型自动化生成装置,其特征在于,该装置包括:
LMT信息提取模块,用于基于第一数据包提取网络设备固件的LMT信息,所述第一数据包是根据预定IP地址向网络设备第一服务端口发送第一请求后返回的数据包;
版本信息提取模块,用于基于第二数据包提取网络设备固件版本信息,同时提取所述网络设备的品牌、型号信息,所述第二数据包是根据预定IP地址向第二服务端口发送第二请求后返回的数据包;
指纹模型构建模块,用于利用LMT信息、固件版本信息构建网络设备固件指纹模型。
13.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至11任一项所述网络设备固件指纹模型自动化生成方法。
14.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至11任一项所述网络设备固件指纹模型自动化生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310181636.XA CN116346326A (zh) | 2023-02-20 | 2023-02-20 | 一种网络设备固件指纹模型自动化生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310181636.XA CN116346326A (zh) | 2023-02-20 | 2023-02-20 | 一种网络设备固件指纹模型自动化生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116346326A true CN116346326A (zh) | 2023-06-27 |
Family
ID=86890710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310181636.XA Pending CN116346326A (zh) | 2023-02-20 | 2023-02-20 | 一种网络设备固件指纹模型自动化生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116346326A (zh) |
-
2023
- 2023-02-20 CN CN202310181636.XA patent/CN116346326A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10073916B2 (en) | Method and system for facilitating terminal identifiers | |
Costin et al. | A {Large-scale} analysis of the security of embedded firmwares | |
CN111831548B (zh) | 一种依赖关系拓扑图的绘制方法和装置 | |
CN108459850B (zh) | 生成测试脚本的方法、装置及系统 | |
CN109376534B (zh) | 用于检测应用的方法和装置 | |
CN109309655B (zh) | 无状态通信安全签名方法、终端及服务器端 | |
CN105554136B (zh) | 备份数据还原方法、装置及系统 | |
CN110958239A (zh) | 访问请求的校验方法和装置、存储介质及电子装置 | |
CN111353136B (zh) | 一种操作请求的处理方法和装置 | |
CN113067802B (zh) | 一种用户标识方法、装置、设备及计算机可读存储介质 | |
CN113704569A (zh) | 信息的处理方法、装置及电子设备 | |
CN108737350B (zh) | 一种信息处理方法及客户端 | |
CN116346326A (zh) | 一种网络设备固件指纹模型自动化生成方法及装置 | |
CN112559546B (zh) | 数据库同步方法、装置、计算机设备及可读存储介质 | |
WO2018210081A1 (zh) | 一种增强现实软件更新的方法、装置、终端及存储介质 | |
CN111782291A (zh) | 一种测试页面的启动方法和装置 | |
CN112817816A (zh) | 埋点处理方法、装置、计算机设备和存储介质 | |
CN114491328A (zh) | 网站访问方法、设备、存储介质及装置 | |
CN112699034B (zh) | 虚拟登录用户构建方法、装置、设备及存储介质 | |
CN113515305B (zh) | 配置信息确定方法、配置快照生成方法及装置 | |
CN117156474B (zh) | 远程智能运维系统及其运维方法 | |
CN113364764B (zh) | 基于大数据的信息安全防护方法及装置 | |
JP7441291B1 (ja) | 情報セキュリティ早期警報装置及び方法 | |
CN117332412B (zh) | 一种针对数据安全系统的检测方法、装置及电子设备 | |
CN110659206B (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 |