[发明专利]一种基于语义敏感的网络协议识别方法及系统有效
| 申请号: | 201410652834.0 | 申请日: | 2014-11-17 |
| 公开(公告)号: | CN104468262B | 公开(公告)日: | 2017-12-15 |
| 发明(设计)人: | 云晓春;张永铮;王一鹏;周宇 | 申请(专利权)人: | 中国科学院信息工程研究所 |
| 主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L29/06 |
| 代理公司: | 北京君尚知识产权代理事务所(普通合伙)11200 | 代理人: | 余长江 |
| 地址: | 100093 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 语义 敏感 网络 协议 识别 方法 系统 | ||
技术领域
本发明属于网络技术领域,具体涉及一种基于语义敏感的网络协议识别方法及系统。
背景技术
协议识别技术,是将网络数据流与具体应用协议相对应的过程,在许多的网络和安全领域中都有着十分重要的应用,例如网络测量、入侵检测与防范和僵尸网络行为检测等。以其在入侵检测和防范系统中的应用为例,传统的入侵检测和防范系统将每个数据包载荷部分视为一系列的字节序列,并将这些字节的序列信息与恶意程序(malware)的签名(通常是由一组正则表达式来表示)进行匹配操作。这种粗粒度的签名检查机制由于其忽视了数据包载荷部分的应用协议结构从而在可靠性上受到了极大的限制。
现代化的入侵检测和防范系统正演变的更加语义敏感。具体地说,其依照应用协议的信息格式来获得所分析应用协议的字段信息从而实现对网络数据包的合理解析。几种类型的应用协议解析工具,如FlowSifter,UltraPAC,binpac,和GAPA,已经在此前的研究工作中提出。所有这些应用协议解析工具都需要所分析协议的协议规范信息,从而产生对应于该协议的解析工具。然而,互联网中许多应用协议是私有协议,并这些协议没有公开可得到的协议指纹规范信息。根据Internet2NetFlow组织对骨干网中流量的统计发现:超过40%的网络数据流属于未识别的应用协议。被恶意程序(malware)和僵尸网络(botnet)所使用的网络通信协议没有来自于其设计者的协议规范信息。为了解析未知应用协议网络数据流,首先需要进行协议推断从而获得协议指纹信息。网络监控工具,例如Wireshark,NetDude,SNORT和BRO等也需要应用协议解析工具来实现他们的功能。
网络协议识别方法根据其研究对象的不同可划分为基于传输层端口、基于数据报文载荷和基于网络数据流统计行为特征三种类别。本发明以网络数据报文的载荷作为基本研究对象。本领域的现有方法大致可划分为两中类别:(1)基于协议解析的方法;(2)基于协议签名的方法。本发明属于第二类,基于协议签名的方法。基于协议签名的方法在分析过程中只依赖于对数据报文载荷的分析,不依赖于应用程序的可执行代码。此前,关于协议签名自动构建的研究工作未使用存在于数据报文中的潜在语义信息,即数据报文中语法元素之前的关联关系。值得注意的是此类研究工作不能达到实现使用更少分类特征且达到更高准确率的研究目标。同时,相较于此前的研究工作,本发明对所分析的网络协议本身作出更少的前提假设。
发明内容
本发明的目的在于设计并实现一种基于语义敏感的网络协议识别方法及系统,使得在网络协议识别过程中,充分挖掘网络消息报文中潜在的协议语义信息;在保证较高的识别准确率与召回率的前提下,在实践中同时具有较强的普适性与鲁棒性。
本发明的发明动机来源于持续上升的多种多样的未知网络流量,设计的新颖的协议识别方法及系统以最小人力需求为基本前提,实现特定应用协议识别过程的全面自动化。
具体来说,本发明采用如下技术方案:
一种基于语义敏感的网络协议识别方法,包括建模阶段、训练阶段和分类阶段;
在建模阶段,以特定应用协议的网络数据报文集合作为输入,利用Latent Dirichlet Allocation方法构建所分析协议的关键字模型;
在训练阶段,依照建模阶段得到的协议关键字模型提取数据报文的分类特征信息,以获得的关键字特征向量作为输入,利用有监督机器学习方法对离线训练数据集学习训练,从而获得所分析协议的分类模型;
在分类阶段,依照建模阶段得到的协议关键字模型提取数据报文的分类特征信息,利用训练阶段输出的协议分类模型,对待测网络数据报文的协议属性做出判别,判断其是否属于目标协议的网络数据报文。
进一步地,所述建模阶段的具体步骤包括:
1)采集属于特定应用协议的网络数据报文,从而将网络数据报文划分为两种类别:一类是属于所要分析的应用协议的数据报文集合;另一类是不属于所要分析应用协议的数据报文集;
2)利用n-gram模型将网络数据报文转化为以n-gram元素作为基本单元的网络数据报文;所述n-gram模型是给定序列的n个连续元素的子序列;
3)利用基于Latent Dirichlet Allocation方法构建所要分析协议的协议关键字模型。
进一步地,所述利用Latent Dirichlet Allocation方法构建协议关键字模型的具体步骤包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410652834.0/2.html,转载请声明来源钻瓜专利网。





