(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(10)申请公布号 CN 106372513 A
(43)申请公布日 2017.02.01
(21)申请号 CN201610729930.X
(22)申请日 2016.08.25
(71)申请人 北京知道未来信息技术有限公司
    地址 100102 北京市朝阳区阜安西路望京SOHO中心T3A座15层
(72)发明人 练晓谦
(74)专利代理机构 北京君尚知识产权代理事务所(普通合伙)
    代理人 邱晓锋
(51)Int.CI
      G06F21/57
      G06F21/32
      G06F9/445
      G06F17/30
      H04L29/08
                                                                  权利要求说明书 说明书 幅图
(54)发明名称
      一种基于软件指纹库的软件识别方法和装置
(57)摘要
      本发明涉及一种基于软件指纹库的软件识别方法和装置。该方法包括:1)创建软件指纹库,该软件指纹库包含端口、协议、软件指纹、软件名称、软件版本的对应关系;2)针对目标主机的某端口,从软件指纹库中得出该端口所对应的协议,然后向该目标主机的端口发送符合对应协议格式的数据包;3)接收从目标主机返回的数据包,将返回的数据包与软件指纹库中的指纹进行比对,以识别出目标主机上运行的软件名称及其版本信息。本发明利用软件指纹库,并结合发送接收数据包的方式,达到了远程识别目标主机运行软件的目的,该方法无需在目标主机上安装agent代理程序,提高了软件识别方法的易用性和兼容性。
法律状态
正则匹配公司名称
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.一种基于软件指纹库的软件识别方法,其特征在于,包括以下步骤:
1)创建软件指纹库,该软件指纹库包含端口、协议、软件指纹、软件名称、软件版本的对应关系;
2)针对目标主机的某端口,从软件指纹库中得出该端口所对应的协议,然后向该目标主机的端口发送符合对应协议格式的数据包;
3)接收从目标主机返回的数据包,将返回的数据包与软件指纹库中的指纹进行比对,以识别出目标主机上运行的软件名称及其版本信息。
2.如权利要求1所述的方法,其特征在于,对步骤1)所述软件指纹库进行长期地更新及维护。
3.如权利要求1所述的方法,其特征在于,步骤1)所述协议的类型包括:http、ssh、telnet、ftp。
4.如权利要求1所述的方法,其特征在于,步骤1)所述软件指纹的指纹规则采用一段正则表达式,用来在目标主机返回的数据包中进行匹配。
5.如权利要求4所述的方法,其特征在于,步骤1)所述软件版本是固定的版本号,或者是正则表达式匹配之后的一个分组。
6.如权利要求4所述的方法,其特征在于:步骤3)将端口、协议、目标主机返回的数据包与指纹库中的条目进行比对:若端口、协议相同,则使用指纹规则的正则表达式去匹配数据包,若匹配成功,则表示目标主机上运行了对应版本的软件。
7.如权利要求1所述的方法,其特征在于:步骤2)首先确定需要探测的端口,然后在软件指纹库中查该端口所对应的所有数据条目,统计出这些数据条目所包含的协议类型。
8.一种基于软件指纹库的软件识别装置,其特征在于,包括:
软件指纹库,其包含端口、协议、软件指纹、软件名称、软件版本的对应关系;
数据包发送模块,用于针对目标主机的某端口,从软件指纹库中得出该端口所对应的协议,然后向该目标主机的端口发送符合对应协议格式的数据包;
数据包接收模块,用于接收从目标主机返回的数据包;
指纹比对模块,用于将返回的数据包与软件指纹库中的指纹进行比对,以识别出目标主机上运行的软件名称及其版本信息。
9.如权利要求8所述的装置,其特征在于:所述软件指纹库中,软件指纹的指纹规则采用一段正则表达式,用来在目标主机返回的数据包中进行匹配。
10.如权利要求9所述的装置,其特征在于:所述指纹比对模块将端口、协议、目标主机返回的数据包与软件指纹库中的条目进行比对:若端口、协议相同,则使用指纹规则的正则表达式去匹配数据包,若匹配成功,则表示目标主机上运行了对应版本的软件。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。