【技术实现步骤摘要】
基于TCP多会话的被动操作系统识别方法及装置
本专利技术属于网络安全
,尤其涉及一种基于TCP多会话的被动操作系统识别方法及装置。
技术介绍
随着互联网的发展,越来越多的设备都连接到了互联网上,而保护这些设备的安全非常重要。操作系统识别是通过远程主机所发送的TCP/IP数据包检测和确定主机的操作系统类型和版本。首先,从消极的角度看攻击者需要检测目标主机的操作系统,是为了利用其漏洞进行攻击。其次,从积极的方面看网络管理员也需要操作系统识别。网络管理员需要尽可能的了解本网络中的信息,包括了解连接到网络中的主机的操作类型和版本。例如,如果运行旧版本操作系统的设备很容易被攻击。通过使用操作系统识别技术,网络管理员可以清楚掌握哪台机器的操作系统需要升级。操作系统指纹则是指从某一操作系统所发出的网络数据包中提取的可以区分不同操作系统的特征。其原理是不同的操作系统厂商在实现TCP/IP协议栈时出现了细微的差别,这些差别具有独特的特性,故而被称为“指纹”。例如IP(InternetProtocolAddress,互联网协议地址)协议的TTL(TimeToLive,缓存的生存时间)字段以及TCP(TransmissionControlProtocol,传输控制协议)的窗口字段和选项字段等就是最常见的可以区分不同操作系统的预设字段。操作系统识别技术分为主动和被动两类。主动操作系统指纹识别需要精心构造不同的数据包并发送出去,根据返回的结果来分析目标的具体操作系统。此方法最大的缺点在于发送的数据包会被防火墙或者入侵检测系统拦截,并且会暴露自身的信息。被动操作系统指纹识别比主 ...
【技术保护点】
1.一种基于TCP多会话的被动操作系统识别方法,其特征在于,包括:获取设备在预设时间段内产生的多次TCP会话的流量数据,以及各所述TCP会话产生的流量数据中的TCP数据包;对各所述TCP数据包中的P和TCP协议字段进行解析,获取各预设字段的解析结果,将任一所述TCP会话所产生的TCP数据包中所有预设字段的解析结果作为该TCP会话的单会话指纹;将相邻两个所述TCP会话的单会话指纹中同一预设字段的解析结果进行比较,将所有所述预设字段的比较结果作为所有所述TCP会话的多会话特征;将所有所述单会话指纹的组合和所述多会话特征作为所有所述TCP会话的多会话指纹,从预先获取的指纹库中查找出所述多会话指纹,将所述指纹库中所述多会话指纹对应的操作系统作为所述设备的操作系统识别结果。
【技术特征摘要】
1.一种基于TCP多会话的被动操作系统识别方法,其特征在于,包括:获取设备在预设时间段内产生的多次TCP会话的流量数据,以及各所述TCP会话产生的流量数据中的TCP数据包;对各所述TCP数据包中的P和TCP协议字段进行解析,获取各预设字段的解析结果,将任一所述TCP会话所产生的TCP数据包中所有预设字段的解析结果作为该TCP会话的单会话指纹;将相邻两个所述TCP会话的单会话指纹中同一预设字段的解析结果进行比较,将所有所述预设字段的比较结果作为所有所述TCP会话的多会话特征;将所有所述单会话指纹的组合和所述多会话特征作为所有所述TCP会话的多会话指纹,从预先获取的指纹库中查找出所述多会话指纹,将所述指纹库中所述多会话指纹对应的操作系统作为所述设备的操作系统识别结果。2.根据权利要求1所述的基于TCP多会话的被动操作系统识别方法,其特征在于,获取设备在预设时间段内产生多次TCP会话的流量数据的步骤之前还包括:对于任一类预设操作系统,创建具有任一版本的该类预设操作系统的虚拟机;基于所述虚拟机的脚本分别与各预设目的端口进行TCP会话;获取所述虚拟机的所有所述TCP会话的多会话指纹,将所述虚拟机的所有所述TCP会话的多会话指纹与所述任一版本的该类预设操作系统之间的关联关系存放到所述指纹库中。3.根据权利要求1所述的基于TCP多会话的被动操作系统识别方法,其特征在于,对各所述TCP数据包中的IP和TCP协议字段进行解析,获取各预设字段的解析结果的步骤之前还包括:获取各所述TCP数据包中SYN标志位和ACK标志位的值;对于任一所述TCP数据包,若该TCP数据包中的SYN标志位为1且ACK标志位为0,则将该TCP数据包确定为初始数据包;相应地,对各所述TCP数据包中的IP和TCP协议字段进行解析,获取各预设字段的解析结果的步骤具体包括:对各所述初始数据包中的IP和TCP协议中的所有字段进行解析,获取各所述预设字段的解析结果。4.根据权利要求1-3任一所述的基于TCP多会话的被动操作系统识别方法,其特征在于,所述预设字段包括显示拥塞通知IP协议字段、报文生存时间字段、未分片时IPID值是否为0、显示拥塞通知TCP协议字段、窗口大小、TCP选项结束标识、TCP选项结束后填充字节数、TCP选项填充标识、TCP选项最大报文段长度、TCP选项窗口扩大因子、TCP选项选择性确认、TCP选项时间戳标识、TCP选项布局,以及所述窗口大小和所述TCP选项最大报文段长度之间的比值。5.根据权利要求1-3任一所述的基于TCP多会话的被动操作系统识别方法,其特征在于,所述多会话指纹包括所述单会话指纹的组合和根据所述预设字段中的IPID值和时间戳确定的多会话特征;其中,所述单会话指纹的组合通过以下步骤获取:将所有操作系统的不重复单会话指纹按预设顺序进行排序;将所述设备的每个单会话指纹与所有所述不重复单会话指纹进行比较,获取所述设备的每个单会话指纹在所述不重复单会话指纹中的位置;将所述位置对应的值设置为1,将所述不重复单会话指纹中除设置为1的位置以外的位置对应的值设置为0,生成一个二进制字符串,将所述二进制字符串作为所述单会话指纹的组合;相应地,将相邻两个所述TCP会话的单会话指纹中同一预设字段的解析结果进行比较,将所有所述预设字段的比较结果作为所有所述TCP会话的多会话特征的步骤具体包括:将相邻两个所述TCP会话的单会话指纹中的IPID值进行比较,根据比较结果确定所有所述TCP会话的IPID值的变化结果;所述变化结果包括全局变化...
【专利技术属性】
技术研发人员:李良盛,段海新,郑晓峰,
申请(专利权)人:清华大学,赛尔网络有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。