介绍准确识别应用流量之前,有几个概念需要介绍:数据流:基于应用层协议识别的对象不能只是简单的检查单个报文,而是要将数据流作为一个整体来检测。因此,数据流是指在某个会话生命周期内,通过网络上一个检测节点的IP数据报文的集合。实际上,一个节点发送的数据流的所有属性是相同的。数据流分类:利用数据流以及数据流中报文的某些信息,可将网络上的数据流进行分类,这种分类可加速应用流量的分类,如游戏应用数据流通常是小报文,而P2P流一般称为大报文。数据流类别:数据流类别是一个大型网状结构的分类器,按照行为特征及签名进行归类。在数据流分类问题中,每个类别可能包含某些属性类似的多种协议,典型的如IE下载即包括了多个类别,有分块下载,有伪IE下载等,有另存单线程下载等,而协议识别必须对流进行更精细的分类,使得每个类别中的流只使用一种应用层协议。协议识别:协议识别是指检测引擎根据协议特征,识别出网络数据流使用的应用层协议。应用协议特征字符串:特征字符串是协议归类的关键依据,字符串特征举例协议特征字符串ftp特征字符串acct、cwd、smnt、port;smtp特征字符串HELO、EHLO、MAILFROM:、RCPTTO:、VRFY、EXPN;pop3特征字符串+OK、-ERR、APOP、TOP、UIDL;msn特征字符串包括msg、nln、out、qng、ver、msnp;OICQ特征字符串开头第一个字节:0x02,第四、五字节:协议号;sip特征字符串REGISTER、INV设备管理系统E、ACK、BYE、CANCEL、SIP;eMule特征字符串开头第一个字节:0xe3或0xc5或0xd4;应用流量协议特征检测方法数据流检测方法主要分为四个层次,让我们描述一下从最简单到最复杂的检测过程。首先,互联网众所周知的网络应用都是建立在固定网络协议或端口上,如http、ftp等等常用协议,这些协议的特征非常明显,在一定程度上几乎不使用检测引擎就可识别。其次,但当应用变得复杂时,很多应用都会启用随机端口进行通信,因此,新启用的端口我们事先无法预知,此时DPI必须实时监控会话,通过监测数以千计的并发会话来判断其应用特征。很多新的网络应用伪装使用已知的固定端口,如使用80、8080、443等知名端口,特别像使用80端口的伪装,伪装的目的首先是被防火墙认可,不至于在防火墙上被阻断,被作为正常的web访问而通行。这种应用如P2P伪装、视频伪装,都使用这些知名端口。此时设备需要在多个会话中开始寻找所谓的签名,通常这是一个复杂的字符串,是检测引擎预先定义好的,而且是唯一一个应用。随着应用的增加,DPI特征库需要不断更新。如下图迅雷采用伪IE下载就属于典型的伪装。第三,对于完全加密的应用,我们称为加密流,对于加密数据流,去寻求一个端口或签名是毫无意义的。因此,检测引擎需要开发出一种新方法,着眼于数据包长度和它们的顺序排序。而实际上,其中的一些加密应用总是使用同一系列的包长度、在同一位置、在同一顺序,这就是所谓的行为特征。通常,检测引擎能够这些加密流进行行为分析,而实际上,这里存在两个难度,一个是加密流特征字符串的获取本身需要扎实的独特的算法,另外,单单对于位置的检测还远远不够,如加密传输的应用协议的加密方法几乎每周都在变换位置。如何评价应用识别引擎:应用识别引擎是应用流量管理系统的核心,所以下面五点则能较好的评价产品。第一、应用程序的识别数量多少,特别对复杂协议及新协议的识别数量成为产品的核心,而不是单单用端口号来标识的简单应用或标准应用。第二、应用协议识别的准确性。一个好的引擎或好的算法才能保证低的误报和漏报。第三、应用检测的时间消耗。一个好的引擎能够花费很少的时间即可检查出特征。第四、对高性能和高带宽处理。一个好的引擎才能部署到大的网络环境中,如高校、大集团用户、运营商网络。第五、协议库更新的频率及协议库库更新的难易程度。一个好的引擎才能保证协议库的更新有验证、计算、校对,使系统不断网、不重启,即使出现升级失败,也能保证原有特征库不被损坏,正常运行。 【推荐阅读】◆设备管理系统运维管理专区◆管理人员如何过网络拓扑图实现查询◆中小型数据安全和管理安全应对之策◆企业设备管理系统运维管理软件趋势◆设备管理软件软件专区本文来自互联网,仅供参考
信息发布:广州名易软件有限公司 http://www.myidp.net
|