您的当前位置:首页正文

McAfee IPS 技术概览

2020-08-19 来源:步旅网
白皮书

McAfee IPS 技术概览

McAfee 谢君 孙超 李明

白皮书 McAfee IPS 技术概览

随着互联网产业的快速发展,不仅从网络带宽上已经有了很大的提升,而且越来越多的网络应用出现,丰富和方便了人们的生活,在带来方便的同时,在这复杂和多变的网络环境中也夹杂着很多网络威胁,如何应对这些网络威胁,这是当今信息社会都非常关注的一个严峻问题,入侵防御系统应运而生成为检测和阻止网络威胁的主要技术,McAfee的NSP是业界领先的侵防御系统,本文将着重介绍NSP的主要功能和一些重要特性。

1 McAfee IPS 体系架构

McAfee IPS 是一款网关级的入侵防御系统,它的系统架构图如下

网络流量过来后,通过 IPS 的网卡抓取数据包后,先进行状态处理,然后进行协议识别,协议解析,规则集匹配,最后判断是否为恶意的攻击,或者用户控制的流量,通过用户配置的策略进行阻断,告警,日志记录,或者通知防火墙进行处理等等.

2

白皮书 McAfee IPS 技术概览

2 McAfee IPS 检测机制

2.1深度智能协议解码的模式匹配

对于网络中传输的流量,要识别其是通过某种协议进行通信和传播的,进行协议识别是很关键的,我们通过对流行的 TCP/IP 协议族(包括 IP/TCP/UDP/SMTP/FTP/HTTP 等等)协议基于 RFC 标准进行深度解码,深度解析这些协议在 RFC 中定义的各个字段,来检测网络传输流量中对应协议的合规性。而在现实网络应用中大多数数据负载在 layer 7, 所以对 layer7 的解码至关重要。

由于很多应用层的通信协议是由各个软件产商自已定义的,有的协议是公开的(例如 edonkey2000,BitTorrent 等),有的是未公开的例如一批 IM/P2P软件,对此我们将对它们进行应用层协议识别和协议解码,精确解析出它们各个通信包的各个字段,然后进行匹配。P2P 网络本来就是一个网络共享平台,所以很有可能用户无意中把一些敏感文件,信息共享到这个平台上去,别人可以从中下载到,窥探到一些机密信息,使受害者受到巨大损失,比如日本的 Winny 软件泄密事件。由于 P2P网络的特性,下载速度特别快,所以可能导致内网带宽耗尽,影响网络正常应用。所以 P2P网络存在敏感信息的泄露,带宽的滥用等缺陷。 下面我们将以两款 P2P软件识别作为举例。

QQLive和 PPStream 是在中国比较流行的 P2P网络流媒体软件,因为通过 P2P的方式进行流媒体传输,高速下载流媒体数据,从而可以很流畅的在线观看流媒体影像,但会占据大量的网络带宽,我们通过举例来解析 McAfee IPS 是如何对它进行比较精确的解码和识别的。QQLive其中一种数据传输方式是通过 UDP 来实现的,举例如下:

QQLive UDP 包的格式如下:0x0

包头标志0x01-0x02 包体长度0x03-结尾

包体内容

McAfee IPS 对这个的识别过程是这样的,包的第一个字节 0xfe 是一个固定的包头标识,第二个字节开始”3d 00”转换成一个短整型数据 0x003d,它包含了包长信息,用它加上头部3个字节刚好就是这个包长,所以我们的检测过程就是这样的了,匹配包头第一个字节 0xfe,然后从第二个字节开始转换成短整型数据(big endian),加上3,如果等于包长,那么我们确认它是一个 QQLive 的数据包。

3

白皮书 McAfee IPS 技术概览

另一个例子,对 PPStream UDP 包的识别,以下是截取的 PPStream 传输过程中的一个 UDP 包进行分析。

包结构如下0x0-0x01 包长

0x02-0x03 包头标志’43 00’0x03-结尾

包体内容

000014043d 00 43 00 00 11 00 0a c3 e5 01 4b ed 05 81 96 =.C..... ...K....00001414 75 49 96 83 b3 cf 1d 6d40 c1 f23e28 f341 08 uI.....m @..>(.A.00001424 00 00 00 73 65 6c 65 63 74 6f 72322e 73 77 66 ...selec tor2.swf00001434 00 00 2c 00 00 00 04 00 00 01 00 00 00

偏移0x0-0x01转换成短型数0x003d,等于这个udp包的包长

偏移0x02-0x03为固定头部特征”43 00”,因此可以识别出 PPStream 的 UDP 通讯包,通过长度判断和模式匹配.

以上可得知在对 layer7 层解码是非常灵活的,可以通过设计一些算法来检测判断某种特定的数据包,而相对于传统的正则匹配检测功能就比较有限了,它只能通过简单的源目的 IP,源目的端口,和 layer7 的模式匹配或者正则匹配来检测,所以就智能性而言,它是非常缺失的。

由于流量有会话和方向的概念,有时候为了更精确的去识别某一会话属于某种流量,而光靠发送端的数据,或者接受端数据来识别某种流量是不够的,所以在某一时刻作某种包处理操作,这里就涉及到了一个非常重要的功能,那就是状态机机制。

2.2状态机的应用

基于状态机的检测机制无疑在 McAfee 体系中扮演了很重要的一个角色,McAfee IPS 通过状态机的使用,可以实现强大的关联检测能力。状态机对于 McAfee IPS 的主要作用包括:

2.2.1上下文关联分析协议的状态机可以帮助不同的协议解释字段创建上下文关联信息,来判断当前协议处于哪一处理过程之中,根本不同的状态来进行不同事的操作。这里以 MS06-012漏洞举例说明,在 Excel 文件结构中通过精心构造一个恶意的记录将会被远程成功运行任意代码,下面这个图展示出了协议状态机创建适当的上下文来帮助解析 excel 结构中的各个字段,也就是它暗示在某个时刻去做某件事,而传统的正则模式匹配(例如以 snort 为基础的入侵检测系统)没有上下文的概念,所以它没有状态机更智能的分析在某一时刻该做什么,它的存在更好的减少了误报的可能。

4

白皮书 McAfee IPS 技术概览

以下的示例说明了 McAfee IPS 如何识别通过 http 方式传输的 Excel 文件的

Excel ParsingExcel Structure?SummaryInfo ParsingWorksheet ParsingRecord Type?HLINK RecordLABEL RecordNAME RecordSTYLE Record5

白皮书 McAfee IPS 技术概览

下图是抓取 http 的数据包,这里只截取了 http 请求和回应的头部。

通过对 http 的回应包进行协议解析得到 Content-Type 字段是”application/vnd.ms-excel”,通过这个字段可以知道 http 的数据负载部分应该是传输一个 excel 文件类型的数据,接下来把多个 http 包汇聚成一个完整的 excel 文件,然后对这个 excel 文件数据进行文件解析,截取的 excel 文件数据的头部如下图:

6

白皮书 McAfee IPS 技术概览

McAfee IPS 首先会对这个文件的头部进行判断验证是否真是一个 excel 文件,然后再进行 excel 深底解析,首先判断头部八个字节是否是”d0 cf 11 e0 a1 b1 1a e1”,如果是,我们标记这段数据为 excel 文件数据,然后再后偏移 508 个字节作 worksheet 结构解析,通过判断记录类型来确定是否是 Name record,然后检查 Name record 的长度,如果大于 80 字节时,当微软的受此漏洞影响的 excel 软件解析该字段时将触发溢出,此时 McAfee 的协议解析器将执行判断,来检测它是否超长,如果确实超长,McAfeeIPS引擎将会作丢包处理来保护客户端不受此漏洞的攻击,同时告警日志产生。

2.2.2识别复杂的多会话协议像 Oracle 这种复杂的 TNS 协议它需要一个控制通道会话为数据通道提供交换信息,只有当信息交换完成,数据通道才开始进行相应的处理,类似于当数据通道收到相关控制指令,它才作相应的动作,这对传统的模式匹配来说是不可能完成的,因为它没法处理好多条会话之间的关系,所以基于状态机的检测机制使得McAfee IPS 可以在这样复杂的协议情况下减少误报。

2.2.3更精确的检测通过漏洞 MS08-067(Conficker蠕虫就是利用的这个漏洞)举例,Conficker蠕虫有上千种变种,但是 McAfee 只需通过一条规则就可以阻断所以利用这个漏洞的变幻攻击。

McAfee IPS 的状态机技术可提供更扩展更深入更准确的协议解析。但是在某些特殊情形下,利用状态机机制会大量消耗性能,所以 McAfee IPS 也加入其他的检测机制来避免性能的损耗,例如基于行为的检测机制,复杂的网络环境中的单一的数据可能没有太大的意义,但是把它的会话的多个客户端和服务端的交互过程关联起来对于识别特定的流量又非常特别有帮助,McAfee于是引入了多包关联的协议识别机制,这些都是基于单会话的流量检测,在现实网络环境中有些通信需要通过多会话通信协助才能完成一次网络应用功能,而针对检测这些流量,需要多会话进行关联识别,这是 IPS 里面的另一个重要的检测机制,此外对于海量恶意流量检测和恶意网站检测,McAfee引入了云计算功能。

7

白皮书 McAfee IPS 技术概览

2.3基于多包关联的协议检测机制

有一些网络通信流量采用了一些混淆协议通信机制来逃避网络流量管理设置的检测,所以单凭单个数据包检测是不能够精确识别出来的,我们采用多个通信数据包关联的方式来进行精确识别,从而可以降低检测的误报率,我们通过多个数据包多个检测向量来评估一个 TCP 或者 UDP 会话是属于某一特定流量,然后对这一特定会话打上某种协议的标记,这一检测机制对于某些混淆流量或者加密通信非常有效。

2.4基于多会话关联的协议检测机制

某些网络通信流量传输是通过一系列通信会话来完成的,比如首先有一个 http 请求服务器获取一系列的 UDP 通信的服务器 IP 地址,然后通过 UDP 协议与这些 IP 地址进行通信,如果通过单一的单会话检测有可能无法识别,但是通过关联前面的 HTTP 的会话,这样可以方便地识别定位这些会话,通过此种检测机制可以非常精确地检测检测某些 P2P协议。

2.5基于行为检测机制

由于 IPS 要保证网络传输的实时性,由于 IPS 在处理网络流量的时候,尽可能的减小对流量检测所带的传输延迟,所以 McAfee IPS 加入了基于行为检测机制,此种检测机制可以不用通过非常复杂的深度包分析,通过我们自已独特的优化算法,来保证在基于行为检测方面减小对性能的损耗,从而保证网络传输的实时性,此种检测机制主要针对 DDOS 攻击,Botnet僵尸网络,蠕虫攻击,我们通过设置一些阈值来检测 DDOS 攻击,通过一些流行的Botnet僵尸网络的行为特征,来检测一类的 DDOS 攻击和 Botnet 僵尸网络攻击。

2.6云安全功能

在 McAfee IPS 中引入了一些非常重要的云安全功能,Artemis和 TrustedSource,Artemis是 McAfee 云端的一个大型的恶意特征库,而 TrustedSource 是 McAfee 云端的一个大型的恶意网址库,当通过IPS的网络中存在恶意文件传输时,IPS可将该文件的特征值发送给 artemis 检测是否为恶意,云端把结果反馈给 IPS,而当通过 IPS 的流量在访问某一个网址时,IPS可将访问的网址发送给 TrustedSource 去检测,确认是否为恶意网址,进而把结果反馈给 IPS,来完成这样一个检测过程,这样确保通过 IPS 的传输流量是干净的,安全的。

2.7与基于正则匹配的解决方案比较的优势

基于正则匹配的解决方案是目前大多数 IPS 厂商使用的检测机制,支持这种机制的代表是开源的 SNORT,我们以 snort 检测为例:

alert tcp any any -> 192.168.1.0/24 80 (content:”cgi-bin/phf”;offset:3;depth:22;msg:”CGI-PHF ac-cess”;)

以上这条 snort 规则的意义是检测 http 请求中包含有”cgi-bin/phf”的 TCP 会话,它最重要的一个特点就是只能模式匹配,不能进行复杂算法操作和解码操作,功能很单一,如果在真实的网络流量中,没有固定特征的会话的检测,是很难识别出来的,而 McAfee IPS 的检测机制能够处理复杂的算法和解码,正如我们在上面的 P2P的两个例子介绍的,不单单是简单的模式匹配。

基于状态机制的协议解析框架具有很灵活的扩展机制,对于增加支持新的协议和检测算法或者更新协议解析功能,可以不用更新整个软件基础设施,只需把更新的协议和算法打包成新的规则集发行包,动态更新规则和协议解析,而传统的 Snort 如果要增加一个协议检测模块的话,需要更新整个软件体系的源代码,既麻烦又容易产生新的问题。

8

白皮书 McAfee IPS 技术概览

3 McAfee IPS 的安全防护能力

网络入侵防护系统(Network Intrusion Prevention System)作为一种在线部署的产品,提供主动的、实时的防护,其设计目标旨在准确监测网络异常流量,自动对各类攻击性的流量,尤其是应用层的威胁进行实时阻断,而不是简单地发出告警. 一个好的网络入侵防护系统 NIPS 应该成为安全管理人员的最佳拍档,提供强大的安全防护能力。

3.1及时提供针对新攻击的检测和防御功能:

McAfee IPS 主要依靠 McAfee Lab 的优秀研究人员和内置在产品中的 GTI(Global Threat Intelligence) 技术实现前瞻性防护。

McAfee Lab:

McAfee Lab 具有超过350名研究人员 ,足迹覆盖全球(30个国家),能够提供实时的,相关的和可操作的威胁的报告分析。McAfee Lab 拥有 100 多个专利或专利申请中的技术,通过全球安全中心与业界领先的的 McAfee IPS结合,研究员能够确保及时提供各类攻击的检测与防御方案。

GTI ( Global Threat Intelligence):

McAfee的全球威胁情报 (GTI) 提供了市场上最全面的威胁情报。能够观察到所有的威胁,-包括文件,web,message和网络 以及最新的漏洞,通过McAfee的安全产品,关联来自全球各地数百万的传感器收集到的真实世界的威胁,能够展现整个行业的安全威胁视图并提供实时保护。简单来说,比如在美国爆发了一种新的病毒,这时就会通过上传到 GTI,此时在中国的 sensor 中如果发现了未知的威胁,就会与 GTI 中的数据库相比较,通过这种方式,GTI可以向全球提供及时的威胁防护。

3.1.1对于协议识别的统计9

白皮书 McAfee IPS 技术概览

McAfee IPS 可准确识别各种网络流量,降低漏报和误报率,避免影响正常的业务通讯,下图知名的NSS实验室对 McAfee IPS 检测的数据:目前 McAfee 的 NIPS 网络入侵防护系统可以提供从100M到10G 的吞吐量,其对常见的各种类型攻击的检测覆盖率可以达到 99.4%①,支持各种规避技术(具体请见附录1)。目前国内唯一通过 NSS 测试的厂商可以提供最大到 1G①吞吐量,对常见的各种类型攻击的检测覆盖率达到 77.7%①。由此可以清晰的得知 McAfee IPS 在性能和攻击检测率覆盖方面都要优于国内的 IPS 厂商。

3.2满足高性能的要求

在提供强大的分析和处理能力的同时,McAfee IPS 可保证正常网络通信的质量不会受到影响。如上文所述,McAfee的 NIPS 网络入侵防护系统可以提供从 100M 到 10G 的吞吐量。完全可以满足从企业到数据中心的性能要求。这是因为 McAfee 提供的 NIPS 网络入侵防护系统是基于多核架构,而业界常见的 IPS 多是基于 x86 架构,其性能无法满足中高端用户的需求,在对各类攻击的检测覆盖率上也不能满足较高的要求。下图是 NSS 对 McAfee 标称为10G的 IPS 产品的性能测试结果,充分证明了 McAfee IPS的卓越性能。

10

白皮书 McAfee IPS 技术概览

4附录

McAfee IPS 对于 IPS 逃避攻击可以 100% 的检测,下表给出了 NSS 针对 McAfee IPS 的躲避攻击测试结果。

11

白皮书 McAfee IPS 技术概览

12

白皮书 McAfee IPS 技术概览

McAfee、迈克菲和/或此处提及的其他迈克菲产品是 McAfee, Inc. 和/或其分支机构在美国和/或其他国家/地区的注册商标或商标。与安全相关的McAfee红色是 McAfee 品牌产品的特有代表色。此处所有其他非迈克菲产品、已注册和/或未注册商标均是其相应所有者的专有财产,仅供参考。© 2010 McAfee, Inc. 保留所有权利。13

因篇幅问题不能全部显示,请点此查看更多更全内容