[发明专利]一种基于比特流的未知协议识别方法及系统在审

专利信息
申请号: 201710779657.6 申请日: 2017-09-01
公开(公告)号: CN107689899A 公开(公告)日: 2018-02-13
发明(设计)人: 廖鹏;方泉;杨维永;王继业;韩勇;郭靓;夏元轶;于晓文;蒋甜;张路煜;张鹏;刘寅;李萌;张利 申请(专利权)人: 南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网江苏省电力公司信息通信分公司
主分类号: H04L12/26 分类号: H04L12/26;H04L29/06
代理公司: 南京纵横知识产权代理有限公司32224 代理人: 董建林
地址: 210003 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 比特流 未知 协议 识别 方法 系统
【说明书】:

技术领域

本发明涉及一种基于比特流的未知协议识别方法及系统,属于网络安全领域。

背景技术

网络协议是计算机网络进行数据交换而建立的规则、标准或约定的集合,是当今信息网络的骨架和神经,是维系网络正常通信的纽带。网络协议的识别和分析对网络监管、维护网络安全具有重要意义。传统的网络协议识别对象主要是已知的应用层协议,相关技术已经相当成熟,并由一系列可快速准确识别已知协议的协议解析工具产生,如NetScout Sniffer GlobalAnalyzer、Capsa Enterprise和Wireshark等。随着安全需求的提升,未知协议逐渐被采用,导致传统的协议识别技术面对纯比特流的未知协议时失效,给现有的网络安全监管带来很大挑战。当截获到的比特流链路层协议未知时,便无法对其进行帧切分,更无法对上层协议内容进行提取分析。

目前,对未知协议的分析主要分为两类:

1、基于数据帧和字节对未知协议特提取的分析方法,现有专利有:一种未知协议特征的提取方法(申请号:201510127979.3)将每一种协议的数据帧按字节切分,统计出频繁字节并筛选,得到每一种协议对应的频繁字节,并对连续出现的频繁字节进行拼接,得到特征长串即频繁串,筛选得到每一种协议的特征候选集,根据特征候选集将该协议的数据帧表征为向量,对特征候选集使用相关性特征选择CFS算法进行特征选择,将所选出的特征进行记录;利用KNN算法进行分类,并统计分类的准确率和识别率。

2、基于数据包的对未知网络协议的识别方法,现有专利有:一种未知网络协议识别方法及系统(申请号:201310189079.2)通过提取数据包的特征,利用面向支持向量机的主动学习方法对该特征向量数据集进行学习,获得针对待测网络协议的分类器;一种未知协议报文格式推断方法(申请号:201510185514.3)基于数据包使用动态规划的序列比对算法,实现自动对未知协议报文格式推断并输出。

上述方法存在着一定的局限性,在遇到以比特为单位、协议格式未知甚至已加密的数据时,传统的协议工具显得无能为力,比特流是完全未经加工的原始数据,无法进行包或帧划分。基于端口号,协议已知固定特征等对网络协议的分析,已经不能满足现阶段对网络协议的分析,凸显出传统分析技术的局限性。

发明内容

为了解决上述技术问题,本发明提供了一种基于比特流的未知协议识别方法及系统。

为了达到上述目的,本发明所采用的技术方案是:

一种基于比特流的未知协议识别方法,包括以下步骤,

接收未知协议的比特流,构造FST树,FST树中的节点即为子序列,即为接收的比特流;

统计FST树中每个子序列出现的次数、长度相同的不同子序列个数以及长度相同的所有子序列个数;

计算每个子序列平均出现的次数;

针对每个子序列,判断其出现的次数与平均出现的次数之间的关系,找出频繁子序列;

当FST树中包含的子序列大于阈值M时,输出此时的所有的频繁子序列,这些频繁子序列即为帧头数据。

构造FST树的过程为,从树根节点开始,每输入一个比特流,按照“左0右1的”原则向树中插入新节点;即若比特流为0,则插入原有节点的左边,为左儿子;否则插入原有节点的右边,为右儿子。

每个子序列平均出现次数的计算公式为,

lenavr[i]=lensum[i]/lennum[i]

其中,lenavr[i]为长度为i的子序列平均出现次数,lensum[i]为长度为i的所有子序列个数,lennum[i]为长度为i的不同子序列个数。

当子序列出现的次数大于其平均出现的次数,则该子序列为频繁子序。

当FST树中叶节点大于阈值N时,进行剪枝操作,即删除出现次数小于本身平均出现次数的叶节点。

一种基于比特流的未知协议识别系统,包括FST树构造模块、子序列信息统计模块、频繁子序列计算模块和频繁子序列输出模块;

FST树构造模块,接收未知协议的比特流,构造FST树,每接收一个比特流更新一次FST树节点;

子序列信息统计模块,统计FST树中每个子序列出现的次数、长度相同的不同子序列个数以及长度相同的所有子序列个数;计算每个子序列平均出现的次数;

频繁子序列计算模块,针对每个子序列,判断其出现的次数与平均出现的次数之间的关系,找出频繁子序列;

频繁子序列输出模块,当FST树中包含的子序列大于阈值M时,输出此时的所有的频繁子序列,这些频繁子序列即为帧头数据。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网江苏省电力公司信息通信分公司,未经南京南瑞集团公司;南京南瑞信息通信科技有限公司;国网江苏省电力公司信息通信分公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710779657.6/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top