深度包检测技术

  深度包检测技术即DPI技术是一种基于应用层的流量检测和控制技术,当IP数据包、TCP或UDP数据流通过基于DPI技术的带宽管理系统时,该系统通过深入读取IP包载荷的内容来对OSI七层协议中的应用层信息进行重组,从而得到整个应用程序的内容,然后按照系统定义的管理策略对流量进行整形操作。

分类

  (1)基于“特征字”的识别技术

  不同的应用通常依赖于不同的协议,而不同的协议都有其特殊的指纹,这些指纹可能是特定的端口、特定的字符串或者特定的Bit 序列。基于“特征字”的识别技术通过对业务流中特定数据报文中的“指纹”信息的检测以确定业务流承载的应用。

  根据具体检测方式的不同,基于“特征字”的识别技术又可以被分为固定位置特征字匹配、变动位置的特征匹配以及状态特征匹配三种技术。

  通过对“指纹”信息的升级,基于特征的识别技术可以很方便的进行功能扩展,实现对新协议的检测。

  如:Bittorrent 协议的识别,通过反向工程的方法对其对等协议进行分析,所谓对等协议指的是peer与peer之间交换信息的协议。对等协议由一个握手开始,后面是循环的消息流,每个消息的前面,都有一个数字来表示消息的长度。在其握手过程中,首先是先发送19,跟着是字符串“BitTorrent protocol”。那么“19BitTorrent Protocol”就是Bittorrent的“特征字”。

  (2)应用层网关识别技术

  某些业务的控制流和业务流是分离的,业务流没有任何特征。这种情况下,我们就需要采用应用层网关识别技术。

  应用层网关需要先识别出控制流,并根据控制流的协议通过特定的应用层网关对其进行解析,从协议内容中识别出相应的业务流。

  对于每一个协议,需要有不同的应用层网关对其进行分析。

  如SIP、H323协议都属于这种类型。SIP/H323通过信令交互过程,协商得到其数据通道,一般是RTP格式封装的语音流。也就是说,纯粹检测RTP流并不能得出这条RTP流是那通过那种协议建立的。只有通过检测SIP/H323的协议交互,才能得到其完整的分析。

  (3)行为模式识别技术

  行为模式识别技术基于对终端已经实施的行为的分析,判断出用户正在进行的动作或者即将实施的动作。行为模式识别技术通常用于无法根据协议判断的业务的识别。例如:SPAM(垃圾邮件)业务流和普通的Email业务流从Email的内容上看是完全一致的,只有通过对用户行为的分析,才能够准确的识别出SPAM业务。

  以上三种识别技术分别用于不同类型协议的识别,无法相互替代。而华为公司在应用DPI 技术部署DPI 系统时采用了多业务控制网关MSCG分层DPI 解决方案,综合运用了这三种技术,在检测效率和灵活性方面均达到。

原理

  深度包检测技术是一种基于应用层的流量检测和控制技术,当IP数据包、TCP或UDP数据流通过基于DPI技术的带宽管理系统时,该系统通过深入读取IP包载荷的内容来对OSI七层协议中的应用层信息进行重组,从而得到整个应用程序。

特征

  1、应用层加密/解密

  SSL广泛被应用于各种场合,以确保相关数据的安全性。这就对防火墙提出了新要求:必须能够处理数据加密/解密。如果不对SSL加密的数据进行解密,防火墙就不能对负载的信息进行分析,更不可能判断数据包中是否含有应用层攻击信息。如果没有解密功能,深度检测的所有优点都无法体现出来。

  由于SSL加密的安全性很高,企业常使用SSL技术,以确保关键应用程序的通讯数据的安全性。如果深度检测不能对企业中关键应用程序提供深度检测安全性的话,整个深度检测的优势将失去意义。

  2、正常化

  防范应用层攻击,很大程度上依赖于字符串匹配。不正常的匹配会造成安全漏洞。比如,为了探知某种请求的安全策略是否被启用,防火墙通常根据请求的URL与安全策略来进行匹配。一旦与某种策略条件完全匹配,防火墙就采用对应的安全策略。指向同一个资源的URL或许有多种不同形态,如果该URL的编码方式不同的话,二进制方式的比较就不起作用了。攻击者会利用各种技术,对输入的URL进行伪装,企图避开字符串匹配,以达到越过安全设备的目的。

  这些攻击行为,在欺骗IDS和IPS方面,特别有效,因为攻击代码只要与安全设备的特征库有一点点不同的话,就能够达到目的。

  解决字符串匹配问题需要利用正常化技术,深度检测能够识别和阻止大量的攻击。对于防范隐藏在帧数据、Unicode、URL编码,双重URL编码和多形态的Shell等类型的攻击行为,必须要用到正常化技术。

  3、协议一致性

  应用层协议,如HTTP、SMTP、POP3、DNS、IMAP和FTP,在应用程序中经常用到。每个协议,都由RFC(Request For Comments)相关规范创建。

  深度检测防火墙,必须确认应用层数据流是否与这些协议定义相一致,以防止隐藏其中的攻击。

  深度检测在应用层进行状态检测。协议一致性,通过对协议报文的不同字段进行解密而实现,当协议中的字段被识别出来后,防火墙采用RFC定义的应用规则,来检查其合法性。

  4、双向负载检测

  深度检测具有强大功能,能够允许数据包通过,拒绝数据包,检查或修改第4到7层数据包,包括包头或负载。HTTP深度检测能够查看到消息体中的URL,包头和参数等信息。深度检测防火墙能够自动进行动态配置,以便正确检测服务变量,如长度,隐藏字段和Radio按钮等等。如果请求的变量不匹配,不存在或者不正确的话,深度检测防火墙会将请求丢弃掉,将该事件写入日志,并给管理员发出警告信息。

功能

  1、业务识别

  一般而言,对于业务识别有两种方法,一种是对运营商开通的合法业务,另外一种是运营商需要进行监管的业务。

  前者可以通过业务流的五元组来标识,如VOD业务,其业务流的地址是属于VOD服务器网段的地址,其端口是一个固定的端口。系统一般采用ACL的方式,识别出该类业务。

  后者需求DPI技术,通过前述的业务识别方法,通过对IP数据包的内容进行分析,通过特征字的查找或者业务的行为统计,得到业务流的类型。

  2、业务控制

  通过DPI 技术识别出各类业务流之后,根据网络配置的组合条件,如用户、时间、带宽、历史流量等,对业务流进行控制。控制方法包括:正常转发、阻塞、限制带宽、整形、重标记优先级等。

  为了便于业务的运营,业务控制策略一般集中配置在策略服务器中,用户上线后动态下发。

  3、业务统计

  DPI 的业务统计功能是为了直观的统计网络的业务流量分布和用户的各种业务使用情况,从而更好的发现促进业务发展和影响网络正常运营的因素,为网络和业务优化提供依据。如:发掘对用户有吸引力的业务、验证业务提供水平是否达到了用户的服务等级协议SLA、统计分析出网络中的攻击流量占多少比例、多少用户正在使用某种游戏业务、哪几种业务最消耗网络的带宽和哪些用户使用了非法VOIP等等。

发展

  DPI 的检测技术和网络上非正常应用的反检测是矛和盾的关系。前面谈到的DPI技术不是静止不变的,随着检测技术的发展,非正常应用的隐藏技术也在演进。如对数据部分加密、隐藏特征字和通过隧道技术躲避检测等等。

  DPI 技术在发展中将不断调整上述的检测方法,从而达到比较高的检测精度。

  总之,DPI 技术将逐渐在安全、业务控制、UART接口模块等方面广泛应用,为运营商精细控制和运营网络提供一种利器。

更多精彩内容,请登入维库电子通https://wiki.dzsc.com

相关百科