基于模糊神经网络的tcp/ip协议隐蔽通道检测方法

文档序号:7687477阅读:179来源:国知局
专利名称:基于模糊神经网络的tcp/ip协议隐蔽通道检测方法
技术领域
本发明涉及信息安全及神经网络领域,尤其是涉及一种基于模糊神经网络 的TCP/IP协议隐蔽通道检测方法。
技术背景隐蔽通道是一种以违背安全策略进行信息传输的机制,也是信息安全领域 中的一个难点问题。根据美国国防部颁布的《可信计算机系统评估标准》(TCSEC) 的要求,对B2安全级及以上的系统必须进行隐通道分析,并估算隐通道的带宽, 然后根据带宽决定对隐通道的处理。我国国家标准GB17859-1999《计算机信息 系统安全保护等级划分准则》,以及其他相关的国际国内标准,都有类似的规定。 隐蔽通道可以分成两类操作系统中的隐蔽通道和网络中的隐蔽通道。随着网 络技术的飞速发展,整个网络可以被看作一个巨大的计算机系统,这种在网络 环境下与网络协议密切相关的隐蔽通道,通常被称作网络隐蔽通道。它利用非 正常手段在网络中传递信息,突破网络安全机制。由于这些特点,在信息安全 的角度来说对网络隐蔽通道的研究有着特殊的意义。目前国际上已有的隐蔽通道标识方法主要有以下几类(1)语义信息流法、 (2)共享资源矩阵法、(3)语法信息流法、(4)非干涉法。其中语义信息流法 和共享资源矩阵法使用的比较多。这些方法都是针对操作系统中的隐蔽通道, 目前在网络隐蔽通道检测方面并没有专门的方法,基于网络检测隐蔽通道是当 前关于隐蔽通道研究的热点方向。对于它的研究技术比较多,并且同时涉及到 概率论、统计学习等多个领域的知识。但是,现在不少技术还是处于初级阶段, stream profiling相对比较发展成熟的技术。它通过记录和分析各种不同协议 的正常数据流,提取、建立各种正常流的特征判别模型。当检测一个网络中是 否存在某类隐蔽通道时,只需要看当前网络中的通信特性是否符合相应的特征 模型,就可以判断是否具有存在隐蔽通道的可能性。现在大多数的应用实现都 是基于这种技术。 发明内容本发明的目的是解决其技术难题,提供一种基于模糊神经网络的TCP/IP协 议隐蔽通道检测方法。基于模糊神经网络的TCP/IP协议隐蔽通道检测方法包括如下步骤1) 建立过滤器,按照过滤规则过滤通过网络接口的数据包,抓取网络接口 上输出的TCP/IP数据包;2) 对数据包头结构中选项域进行分析形成特征向量,然后将特征向量输入 模糊神经网络;3) 模糊神经网络对特征向量进行处理,最后对输出结果进行模糊聚类,通 过输出结果判断是否存在隐蔽通道。所述的抓取网络接口上输出的TCP/IP协议包包括如下步骤1) 建立过滤器,传递数据链路层数据包的指针给过滤器;2) 按照过滤规则过滤数据包,将通过过滤条件的数据包复制一份放到缓存 链表中,当链表超过设定的最大值时,将保存数据包的链表传送给数据包分析 模块;3) 传送完数据包,网络驱动程序重新获得控制权,系统进行正常的网络协 议处理,传送刚才送给过滤器的数据包到上层网络协议栈;所述的对数据包头结构中选项域进行分析形成特征向量包括如下步骤1) 分析数据包结构,读出数据包中TCP/IP头结构,取出目的地址域,端 口号域和完成标志位域;2) 分析TCP协议头结构和IP协议头结构中选项域,如果这个域为空,则 该部分结果为0,否则,该部分结果为l,利用这两个结果生成特征向量;3) 将特征向量按照目的地址分类,将每次TCP/IP连接从开始到结束的每 个数据包都生成向量,然后插入到链表中对应特征向量集中,当一次TCP/IP连 接结束后,将特征向量集送到神经网络模块。所述的模糊神经网络对特征向量进行处理,最后对输出结果进行模糊聚类, 通过输出结果判断是否存在隐蔽通道包括如下步骤1) 训练阶段a. 从数据采集模块接收特征向量集,特征向量集由一次TCP/IP连接对应 的所有特征向量组成,提交模糊神经网络模块;b. 利用自适应模糊神经网络推理系统进行训练,直至系统稳定,得到模糊 神经网络模型;2) 检测阶段a. 从数据采集模块接收特征向量集,提交相应的训练完成后的模糊神经网 络模块,得到输出值;b. 对输出值集合进行模糊聚类,分辨网络输出的数据是否存在隐蔽通道。所述的将特征向量按照目的地址分类网络隐蔽通道通常是向某个具体的 地址泄露信息,这里以目的地址为单位进行分类,对网络中传输的信息进行监 控。所述的对输出值集合进行模糊聚类,分辨网络输出的数据是否存在隐蔽通 道对神经网络输出值集合进行模糊C-均值聚类,输出是O或者l,其中0代 表正常,l代表异常。本发明将模糊神经网络扩展到网络安全方面,实现网络隐蔽通道的检测。 与其他隐蔽通道的检测方法相比1)本发明实现简单,检测更加准确;2)具 有良好的伸縮性,可以通过简单修改来检测其他协议数据包;3)适用于主流操 作系统(Windows, Linux, Unix)的网络隐蔽通道检测。


图1是本发明的系统结构示意图; 图2是本发明的存储链表结构示意图。
具体实施方式
基于模糊神经网络的TCP/IP协议隐蔽通道检测方法包括如下步骤1. 建立过滤器,按照过滤规则过滤通过网络接口的数据包,抓取网络接口 上输出的TCP/IP数据包;2. 对数据包头结构中选项域进行分析形成特征向量,然后将特征向量输入 模糊神经网络;3. 模糊神经网络对特征向量进行处理,最后对输出结果进行模糊聚类,通 过输出结果判断是否存在隐蔽通道。所述的抓取网络接口上输出的TCP/IP协议包包括如下步骤 1)建立过滤器,传递数据链路层数据包的指针给过滤器; (1)建立过滤器,为了加快过滤速度,这里使用过滤器虚拟机方式,过滤 规则的谓词规则表示如下(src local) and (tcp)其中local:指明过滤规则应用于当前机器; src:需要抓取的数据包的源地址域为host地址 tcp:监控tcp协议数据包 数据采集模块使用过滤器虚拟机,将谓词规则转换为过滤器虚拟机指令如下〃检査是否为IP协议 Ll: ldh [12]L2: jeq能丽RTYPE—IP, L3, L7〃检查是否为TCP协议L3: ldh [23]L4: jeq OTCP, L5, L7〃检査源地址是否为hostL5: ldh [28]L6: jeq #host, L8, L7L7: ret #FALSE L8: ret tt丽E包过滤将数据包看做一个字节数组,谓词判断根据TCP/IP协议映射到数组 的12, 23字节进行判读过滤工作。a. Ll指令装载以太网数据包封装的上层协议类型值,L2指令将其与IP类 型值(0X0800)比较,如果相等,跳转到L3处,如果不相等,跳转L7返回FALSE;b. L3指令装载数据包封装的上层协议类型值,L4将其与TCP类型值比较, 如果相等,跳转到L5处,如果不相等,跳转到L7返回FALSE;c. L5指令装载以太网数据包封装的源地址,L6将其与当前机器地址比较, 如果相等,跳转到L8,返回TRUE,如果不相等,跳转L7返回FALSE。(2)传递数据链路层数据包的指针给过滤器; 首先获得读锁,获取受读锁保护的指针,传递数据链路层数据包的指针给 过滤器,最后释放读锁。read—lock ();old_fp = dereference(filter);assign—pointer(filter, fp); 〃传递数据链路层数据包的指针给过滤器 read—unlock 0; fp = old一fp;2) 按照过滤规则过滤数据包,将通过过滤条件的数据包复制一份放到缓存 链表中,当链表超过设定的最大值时,将保存数据包的链表传送给数据包分析 模块;3) 传送完数据包,网络驱动程序重新获得控制权,系统进行正常的网络协 议处理,传送刚才送给过滤器的数据包到上层网络协议栈;所述的对数据包头结构中选项域进行分析形成特征向量包括如下步骤1) 分析数据包结构,读出数据包中TCP/IP头结构,取出目的地址域,端 口号域和完成标志位域;2) 分析TCP协议头结构和IP协议头结构中选项域,如果这个域为空,则 该部分结果为0,否则,该部分结果为1,利用这两个结果生成特征向量X(Xl, x2);用位字段表示特征向量X (Xl,x2),然后把两个位字段组合起来,作为返回 结果,Vec结构用来存放具体的特征向量,它的定义如下-表Vec定义类型变量描述charTcp Vec : 1TCP特征值charIPVec :1IP特征值3)将特征向量按照目的地址分类;将每次TCP/IP连接从开始到结束的每 个数据包都生成向量,然后插入到链表中对应特征向量集中,当一次TCP/IP连 接结束后,将特征向量集送到神经网络模块。以目的地址为单位的存储节点结 构DstNode如下表DstNode定义类型变量描述intDst目的地址intNum向量集数目struct ConnectCnt特征向量集指针struct DstNode*Next下一个节点指针査找链表,找出目的地址对应的节点,如果不存在则创建该节点,然后再 在该节点下找对应的端口,如果查找结果为空,则创建这个端口对应的节点,向量集数目(Num)值加1,否则,放到相应节点链表尾部;这里通过端口号来区 分不同的TCP/IP连接,TCP/IP连接定义在计数特征向量集指针(Cnt)结构里面, 它的定义如下表Cnt定义类型变量描述struct VecTcplp特征向量指针struct Cnt *nsxt下一个节点指针当一次TCP/IP连接结束时,将对应目的地址下的特征向量集提交给模糊神 经网络模块,向量集数目(Num)值减l,检査向量集数目(Num)的值,如果是0, 则销毁该目的地址对应的节点;所述的模糊神经网络对特征向量进行处理,最后对输出结果进行模糊C-均 值聚类,通过输出结果判断是否存在隐蔽通道包括如下步骤模糊神经网络部分模糊神经网络采用Takagi-Sugeno模糊推理算法,其输出为精确值,在 Takagi-Sugeno型模糊规则的后件部分将输出量表示为输入量的线性组合, 零阶Sugeno型模糊规则具有如下形式if x是A and y是B then z=k 其中k为常数。而一阶Sugeno型模糊规则具有如下形式if x是A and y是B then z=p x+q y+r 其中,p、 q、 r是常数。对于一个由n条规则组成的Takagi-Sugenno型模糊推理系统,设每条 规则具有如下形式if x是A and y是B then z=Zj(i=l, 2, …,n) 则系统总的输出为-1) 训练阶段 '=1a. 从数据采集模块接收特征向量集,特征向量集由一次TCP/IP连接对应 的所有特征向量组成,提交模糊神经网络模块;b. 利用自适应模糊神经网络推理系统进行训练,直至系统稳定,得到模糊 神经网络模型;2) 检测阶段a. 从数据采集模块接收特征向量集H,…Xn,提交相应的训练完成后的 模糊神经网络模块,得到输出值Y(yi, y2,…yj ;b. 对输出值集合进行模糊聚类,分辨网络输出的数据是否存在隐蔽通道。 利用模糊C-均值聚类对输出值集合进行分类,如果yi (1《i《n)属于1类,则输入特征向量Xi (1《i《n)对应的网络连接中存在隐蔽通道,如果yi (l《i 《n)属于0类,则输入特征向量Xi (1《i《n)对应的网络连接中不存在隐蔽 通道;输出值经模糊C-均值聚类后输出0或者1,其中0代表正常,1代表异常。
权利要求
1. 一种基于模糊神经网络的TCP/IP协议隐蔽通道检测方法,其特征在于包括如下步骤1)建立过滤器,按照过滤规则过滤通过网络接口的数据包,抓取网络接口上输出的TCP/IP数据包;2)对数据包头结构中选项域进行分析形成特征向量,然后将特征向量输入模糊神经网络;3)模糊神经网络对特征向量进行处理,最后对输出结果进行模糊聚类,通过输出结果判断是否存在隐蔽通道。
2. 根据权利要求1所述的一种基于模糊神经网络的TCP/IP协议隐蔽通道 检测方法,其特征在于所述的抓取网络接口上输出的TCP/IP协议包包括如下步 骤1) 建立过滤器,传递数据链路层数据包的指针给过滤器;2) 按照过滤规则过滤数据包,将通过过滤条件的数据包复制一份放到缓存 链表中,当链表超过设定的最大值时,将保存数据包的链表传送给数据包分析 模块;3) 传送完数据包,网络驱动程序重新获得控制权,系统进行正常的网络协 议处理,传送刚才送给过滤器的数据包到上层网络协议栈;
3. 根据权利要求1所述的一种基于模糊神经网络的TCP/IP协议隐蔽通道 检测方法,其特征在于所述的对数据包头结构中选项域进行分析形成特征向量 包括如下步骤1) 分析数据包结构,读出数据包中TCP/IP头结构,取出目的地址域,端 口号域和完成标志位域;2) 分析TCP协议头结构和IP协议头结构中选项域,如果这个域为空,则 该部分结果为0,否则,该部分结果为l,利用这两个结果生成特征向量;3) 将特征向量按照目的地址分类,将每次TCP/IP连接从开始到结束的每 个数据包都生成向量,然后插入到链表中对应特征向量集中,当一次TCP/IP连 接结束后,将特征向量集送到神经网络模块。
4. 根据权利要求1所述的一种基于模糊神经网络的TCP/IP协议隐蔽通道 检测方法,其特征在于所述的模糊神经网络对特征向量进行处理,最后对输出 结果进行模糊聚类,通过输出结果判断是否存在隐蔽通道包括如下步骤1) 训练阶段a. 从数据采集模块接收特征向量集,特征向量集由一次TCP/IP连接对应 的所有特征向量组成,提交模糊神经网络模块;b. 利用自适应模糊神经网络推理系统进行训练,直至系统稳定,得到模糊 神经网络模型;2) 检测阶段a. 从数据采集模块接收特征向量集,提交相应的训练完成后的模糊神经网 络模块,得到输出值;b. 对输出值集合进行模糊聚类,分辨网络输出的数据是否存在隐蔽通道。
5. 根据权利要求3所述的一种基于模糊神经网络的TCP/IP协议隐蔽通道 检测方法,其特征在于所述的将特征向量按照目的地址分类网络隐蔽通道通 常是向某个具体的地址泄露信息,这里以目的地址为单位进行分类,对网络中 传输的信息进行监控。
6. 根据权利要求4所述的一种基于模糊神经网络的TCP/IP协议隐蔽通道检 测方法,其特征在于所述的对输出值集合进行模糊聚类,分辨网络输出的数据 是否存在隐蔽通道对神经网络输出值集合进行模糊C-均值聚类,输出是O或 者l,其中0代表正常,l代表异常。
全文摘要
本发明公开了一种基于模糊神经网络的TCP/IP协议隐蔽通道检测方法,采用模糊神经网络的方法对通过网络接口的TCP/IP数据包头结构中的域进行分析,引入了一种检测网络隐蔽通道的新方法,该方法首先获取从网络接口上流出的TCP/IP数据包,对数据包头结构中的选项域进行分析得到网络连接特征向量,将特征向量送入模糊神经网络,利用自适应模糊神经推理系统对模糊神经网络进行训练,得到模糊神经网络的模型,然后将特征向量送入到训练完毕的模糊神经网络的模型中,得到输出值,最后对输出值进行模糊聚类,从而分辨出输出的数据中是否存在隐蔽通道。本发明适用于主流操作系统,具有广泛地应用范围,能增加操作系统的安全性,有效防止机密信息泄露。
文档编号H04L29/06GK101257417SQ200810060899
公开日2008年9月3日 申请日期2008年3月25日 优先权日2008年3月25日
发明者励 姜, 平玲娣, 李善平, 潘雪增, 王建强, 健 陈, 陈小平 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1