网络服务安全与监控
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

5.1 边界安全

边界安全主要介绍组织网络边界的安全控制措施,本节主要介绍防火墙、入侵防御系统和DDoS防护技术等内容。

5.1.1 防火墙

谈到边界安全,通常最先会想到的就是负责网络边界防护,实现网络区域间访问控制功能的网络防火墙。防火墙的发展经历了很多个阶段,下面介绍常见的防火墙。

1. 防火墙概述

网络安全责任部门必须保护网络中的宝贵资源。这些资源包括所有与网络相关的IT资产,如网络上的主机、应用服务器及企业数据,这些都是企业的IT资产,对企业的正常运营起到重要作用。

为了保护这些资源,网络必须以某种方式划分为受信任和不受信任的部分。网络的受信任部分称为安全域。安全域内的所有内容都受到保护,不受域外的所有内容的影响。举个简单的例子,一家小公司决定保护企业内部网络不受外部公共互联网的影响。安全域是公司网络与互联网连接的地方,公司网络中的所有内容都位于安全边界内。

实现安全域常见的有效方法是在网络的受信任部分和不受信任部分之间的边界放置防火墙。根据定义,防火墙是在两个或多个安全域之间强制实施访问控制策略的设备。防火墙具有连接到网络的接口。为了让防火墙完成它的工作,所有跨越安全域边界的流量都必须通过防火墙。实际上,防火墙是进出安全域的唯一路径。

如图5-1所示的简单网络架构,防火墙将位于信任边界上,成为企业内部可信网络与不可信公共互联网之间的唯一路径,并且防火墙部署必须满足如下条件。

图5-1 简单网络架构

(1)防火墙必须是安全网络进出的唯一路径。

(2)防火墙本身必须经过加固,并且能够抵抗攻击。以确保防火墙不会变成攻击者的跳板。

有时一个安全域加上一个防火墙是不够的。很多企业都会将数据存储在数据中心,企业的数据对企业业务的正常运营起着至关重要的作用,所以需要更强的安全保护机制。企业不能冒险让任何人以不适当的方式访问其关键数据,或者中断其数据中心的任何服务。因此,公司决定在数据中心周围建立第二个安全域。

每个安全域都在其边界上使用防火墙实现。在安全域或防火墙的内部,存放被保护的资源,在安全域或防火墙的外部是不可信区域。然而,这种信任关系只在两个区域之间具有重要意义。数据中心外的用户不受信任(至少从防火墙的角度来看),但从互联网边界防火墙的角度来看,他们仍然是受信任的。每个防火墙都有自己的一套安全策略和自己的信任边界概念,或者说可信区域也好,信任级别也好,都是相对的。例如,相对外网来说,企业内网是被保护区域或信任区域,而对于公司内网来说,数据中心是被保护区域或可信区域。

通常企业在设计自己的网络架构时会考虑内部员工的互联网访问需求,同时可能企业需要对公网提供互联网访问服务,如企业门户网站等。如果Web服务器位于安全域内的某个位置,那么不受信任的用户将被授予访问受信任环境的权限。这是一个很常见的需求,但是恶意用户可能会攻击或破坏其中一个Web服务器。因为Web服务器已经是受信任的资源,并且对外开放了服务,通常在对外开放服务的同时往往伴随着脆弱点,这时恶意用户可能会利用服务器的脆弱点对该服务器进行攻击并将其作为跳板攻击内部其他受信任的资源。

通常的解决方案是将Web服务器放到自己的安全域中,位于受信任的内部网络和不受信任的互联网之间。这通常被称为非军事区(DMZ),是一种利用互联网防火墙的解决方案。通过添加第三个接口或第三个Zone,防火墙可以充当受信任域、不受信任的公共网络和用于部署对外提供服务的服务器区域。

每当防火墙被用来执行网络区域间访问控制时,它必须以某种方式将网络分成不同的部分。这可以通过两种方式实现:物理隔离或逻辑隔离。

物理隔离要求每个物理防火墙接口必须连接到不同的网络基础设施中。这通常需要额外的硬件和额外的成本。每个防火墙接口连接到不同的交换机。物理隔离提供了最大的安全性,因为网络通信流量必须经过防火墙的接口进入防火墙进行访问控制策略审查,符合策略的流量才会允许放行,并且不会产生旁路线路的干扰。

防火墙也可以定位为提供逻辑隔离。在这种情况下,安全域存在于同一个物理网络基础设施上,但逻辑上分为不同的虚拟局域网(VLAN)。防火墙在两个安全域之间形成边界,两个安全域通过两个单独的VLAN承载。

虽然防火墙可以使用两个物理接口连接到两个VLAN,但VLAN也可以很容易地通过单个中继链路或一个物理防火墙接口进行传输。逻辑隔离的成本较低,并且非常灵活和复杂。这使得逻辑隔离比物理隔离更不安全,因为防火墙可能由于逻辑网络组件的错误配置故障或通过利用逻辑隔离本身而被绕过或破坏。例如,通过VLAN跳跃攻击直接将外部区域VLAN的包发往内部信任区域的VLAN而形成攻击。

2. 防火墙技术

防火墙是一个硬件或软件产品,或者是一种负责网络区域间访问控制的解决方案,而这种方案需要由多种不同的技术进行组合搭配,各取所长才能实现一个较为完整的防火墙产品或网络区域间访问控制的解决方案。防火墙相关技术描述如下。

1)无状态数据包过滤

有些防火墙仅根据在网络或传输层的数据包头中找到的值来检查流量。转发或阻止数据包的决定独立于每个数据包。因此,防火墙没有连接状态的概念,它只知道每个包是否符合安全策略。

无状态数据包过滤是通过使用一组静态配置的防火墙规则来执行的。即使连接涉及进一步会话和协议端口号的动态协商,无状态防火墙也不知道。无状态数据包过滤器可以用访问控制列表来实现。

从数据流的角度来看,通常防火墙的访问控制列表应用于客体或中间设备,用来描述允许什么主体访问的规则。至于主体与客体的角色定义,则具体取决于这个流量对防火墙来说是抵达流量还是穿越流量。

在介绍防火墙时需要区分传统防火墙(四层防火墙)和下一代防火墙(七层防火墙),因为当提到访问控制列表时往往是以传统防火墙为前提(四层防火墙)的,在下一代防火墙(七层防火墙)上,很多时候已经摒弃了访问控制列表的说法,而是采用安全规则(Security Rule)等名称,因为在传统防火墙上使用的访问控制列表通常是五元组控制策略,包括四层协议,源IP和目的IP,源端口和目的端口,以及置位等。而在下一代防火墙上,由于实现了应用层高可见,因此在编辑安全规则时通常可以包括四层或七层协议,源IP和目的IP,源端口和目的端口,源区域和目的区域,用户ID,URL过滤,IPS检测,防病毒规则等。

2)状态化数据包过滤

状态化数据包过滤(SPF)要求防火墙在遇到数据包时跟踪单个连接或会话。防火墙必须为允许的每个活动连接维护一个状态表,以验证这对主机在通信时是否遵循预期的行为。此外,防火墙必须检查第四层的流量,以便可以验证和跟踪作为现有连接一部分协商的任意新会话。跟踪协商的会话需要对应用层协议进行一些有限的检查。

3)深度包检测

为了超越状态化数据包过滤,防火墙必须在应用程序层添加额外的分析。防火墙中的检查引擎重新组装UDP和TCP会话,并查看正在通过的应用层协议。应用程序检查和控制过滤,也称为深度包检测,可以基于应用程序协议头及其内容执行,从而可以更好地了解用户的活动。

为了保障应用层协议正常工作(如对于在静态控制信道中协商的动态数据信道的放行)和应用层安全(如违规的FTP命令过滤)需要开启应用层监控功能。当然这是有代价的,因为防火墙需要更多的处理能力和内存来检查和验证应用程序会话,所以会更多地占用防火墙资源。

注意,这里提到的应用层指的是OSI四层传输层,应用层协议主要指HTTP、FTP、IM等。

4)网络入侵防御系统

网络入侵预防系统(NIPS)检查和分析网络流量,并将其与已知恶意活动的数据库进行比较。数据库包含大量的签名或模式,描述特定的已知攻击或漏洞利用。当发现新的攻击时,新的签名将被添加到数据库中。

在某些情况下,网络入侵预防系统可以从单个数据包或数据流攻击中检测恶意活动。在其他情况下,必须收集、重新组装和检查分组或分组流。网络入侵预防系统还可以根据数据包和会话速率检测恶意活动,如拒绝服务TCP SYN泛洪,这与网络上的正常活动有很大的区别。

网络入侵预防系统通常以默认许可的方式运行,在这种方式下,除非检测到可疑的流量,否则允许流量通过安全域。一旦发生这种情况,网络入侵预防系统就可以动态生成防火墙规则来阻止或重置恶意数据包或连接。

下一代防火墙厂商通常会将入侵防御系统的功能以订阅许可的形式来交付。也就是说,在购买下一代防火墙时只要追加一个入侵防御系统的使用许可便可获得此功能,而不需要再购买独立的硬件产品。

注意,目前很多厂商所描述的IPS签名已经不仅限于网络行为的描述,它可能代表的是恶意代码的HASH标签,也可能是恶意的URL地址或攻击者IP地址等。

5)网络行为分析系统

网络行为分析系统检查网络流量,随着时间的变化,以建立正常基线活动的统计模型。这不是一个简单的带宽或平均利用率;相反,模型考虑流量、连接数、连接速率及通常使用的应用程序协议的类型。一个网络行为分析系统会不断地检查通信情况,并自动完善其模型,但通常需要人为干预来调整结果。

一旦建立了行为模型,网络行为分析系统就可以触发任何它认为异常的或超出正常条件的活动。实际上,网络行为分析系统通常被称为基于异常的网络入侵防御系统。即使恶意活动涉及一个以前未知的方案,网络行为分析系统通常也可以检测它是否涉及超出正常范围的流量模式或流量。

虽然网络行为分析是防火墙功能的组成部分,但在实际环境中通常是由单独的解决方案来实现的。例如,安全信息事件管理(SIEM)产品,因为要想实现网络行为分析最好的做法是在一个能看到整个组织网络行为最完整的位置,如核心交换;或者在网络各关键节点部署流量收集的探针将流量收集过来进行汇总分析。如果只是在防火墙上部署网络行为分析,那么通常只能看到跨越边界的南北向访问流量,而忽略内部互相访问的东西向流量。

6)应用层代理网关

应用层网关或代理是充当客户端和服务器之间的网关或中介的设备。客户端必须将其应用层请求发送到代理,而不是直接发往目标服务器。代理设备收到客户发来的请求后再伪装成客户机,并将客户机的请求转发到实际的服务器上。一旦服务器响应了请求,代理将评估内容并决定如何处理它们。

因为代理对应用程序请求进行操作,所以它可以根据所涉及的IP地址、应用程序请求的类型,以及从服务器返回的任何数据的内容来过滤流量。

代理可以对客户机-服务器连接执行非常详细和彻底的分析。可以根据第三层到第七层的协议标准验证流量,并且可以根据需要对结果进行规范化处理或使其符合标准。

5.1.2 入侵防御系统

当提到入侵检测系统(IDS)和入侵防御系统(IPS)时,很多人会问该如何区分这两种解决方案,似乎他们存在很多共同点,同时又被描述成两种不同的解决方案。

单从字面上理解,入侵检测系统(IDS)更趋向于被动检测,而入侵防御系统(IPS)更趋向于主动防御。实际上,在某些安全厂商的概念中,入侵检测系统(IDS)和入侵防御系统(IPS)是由同一个产品线不同的软件版本来定义的。例如,某厂商的产品在软件4.0版本之前称为入侵检测系统(IDS),在这个版本之前只支持混杂模式(或者称为旁路模式)部署,当设备在混杂模式下部署时,是后于攻击流量的入侵检测并做出响应的(当看到攻击告警时,攻击流量可能已经进入了企业网络并完成了攻击)。在软件4.0版本之后增加了在线模式(或者称为串接模式)部署,名称也相应地变更为入侵防御系统(IPS),当设备以在线模式部署时,可以认为这是先于攻击流量的入侵防御的,也就是说,可以实现当此设备发现攻击流量时将攻击流量在本地丢弃,从而阻止攻击流量进入企业网络或制定区域。

在实际工作中也有将入侵检测系统(IDS)和入侵防御系统(IPS)作为部署模式来区分的描述。也就是说,同一设备如果是以在线模式部署的就称其为入侵防御系统(IPS),如果是混杂模式(或旁路模式)部署的就称其为入侵检测系统(IDS)。图5-2和图5-3分别代表了混杂模式(Promiscuous Mode)和在线模式(Inline Mode)。

图5-2 混杂模式

图5-3 在线模式

另外,目前很多主流安全厂商已经将入侵防御系统(IPS)集成到防火墙上,作为下一代防火墙(NGFW)的重要组成部分。

网络IPS穿越流量检测主要有以下几种方法。

1. 状态化的内容匹配

IPS传感器将网络中端对端的传输层会话进行重组,对整个会话中传输的内容进行检查。IPS传感器可以在整个会话中搜索有效负载数据,即使匹配内容被拆分到多个数据包中进行传输,也可以在整个会话流中进行准确的内容匹配。针对IP实现基于IP ID的分片重组,针对四层协议中的TCP实现基于TCP序列号的会话重组,针对UDP基于时间窗口和其承载的上层协议序列号实现会话重组。

状态内容匹配可以提高威胁检测的质量,并且即使攻击者使用IP包碎片或将攻击流量隐藏在整个四层会话的多个IP包中都无法轻易逃避IPS引擎的检查。这种方法对传感器要求更高,因为传感器必须对应用数据进行实时的内存缓冲。这就导致了一个相互矛盾的问题,也就是说,如果可以尽可能多地缓存重组IP包和传输层会话,尽可能深层次地检查上层协议字段,将会有助于在更复杂的上下文中发现隐藏的攻击流量。但同时带来的问题就是系统性能的巨大开销,不管是缓存使用的内存还是深度包检查使用的CPU,或者一些针对SSL会话开启了解密功能的加解密处理组件都将面临巨大挑战。如果入侵检测系统是在线部署的,并且当系统满负荷运行时应该考虑的是网络通信的可用性还是安全性?所以大多厂商会在入侵检测产品上设置自动旁路功能。例如,某厂商的入侵检测系统,当系统满载荷或产生一定比例的丢包时,系统会自动切换到软件旁路模式,在此模式下会话将直接穿越入侵检测系统且不再进行任何检查。如果是硬件故障导致的宕机,入侵检测系统也可以借助硬件旁路网卡实现硬件旁路模式,在此模式下即使系统断电,数据也可以正常穿越。

针对入侵防御系统的自动旁路模式切换特性,攻击者也会使用泛洪等手段使入侵检测系统的处理性能达到上限,从而切换旁路模式来达到攻击流量逃避检测的目的,所以在调优入侵检测系统的设置时,如何将有限的处理性能分配到更关键的检查点上是非常重要的,比较推荐的做法是执行网络环境调研和网络脆弱性评估,然后针对网络脆弱点定制入侵防御系统的策略,以实施更加有效的保护。

2. 协议解码

协议解码是一种应用层深度分析方法。传感器除网络层和传输层分析外,还采取额外的分析步骤,针对有状态的传输层协议执行重新组装并进行解码,该方法通过以下3种方式提高了检测质量。

(1)传感器将IP和会话重组后对承载的上层协议进行解码,解码后需要检查的内容更少,更有针对性。

(2)传感器可以执行协议标准化验证并拒绝不符合协议标准行为的协议消息。传感器可以检测或防止已知和未知攻击违反协议标准(如针对HTTP的缓冲区溢出攻击,攻击者向主机发送过多数据,违反了协议标准中规定的URL最大长度)。

(3)使用协议解码技术,使得传感器可以针对特定协议的特定环境进行检查。例如,可以使用user agent关键字来匹配特定的浏览器软件,对违规的浏览器进行过滤,传感器现在可以搜索恶意HTTP,而不是搜索整个TCP会话的数据流。这提高了传感器的准确性,确保它不会在错误的上下文中发现有问题的内容,从而做出错误的决定。

3. 传输流量关联

网络IPS传感器可以看到来自不同网络节点的大量数据流,因此网络IPS传感器的优点是能够关联多个网络会话之间的数据包。可疑或恶意活动可以通过网络IPS传感器识别,因为它们关联不同的数据包并确定其共同属性。例如,攻击者将攻击流量分别使用不同会话进行传输,如果网络IPS传感器不具备流量关联功能,将无法在多个会话中拼接出完整的威胁流量并进行识别。

网络IPS传感器使用实时关联功能主要检测网络侦察攻击,攻击者向少数或许多其他主机发送大量数据包,以确定其可访问性,确定特定应用程序的存在,或者针对特定主机所开放的服务端口进行扫描。蠕虫使用类似的扫描技术来查找要传播的其他系统,并且可以在网络IPS传感器上使用相同的流量关联机制检测和停止这些系统。

数据包关联的一个基本限制是,传感器需要一段时间才能对数据包进行分类和关联,以确定这些数据包是否构成敏感的事件。在达到此阈值之前,所有以前的数据包都将在前往其目的地的途中,因此无法丢弃或捕获。

会话关联性检查的一个很好的例子是网络传感器在单位时间内检测来自单个主机IP去往单个目的主机IP的多个服务端口,或者去往多个目的主机IP的单一特定端口的连接请求数据包。这可能表示源主机正在执行针对目标网络开放的服务扫描。

4. 概率分析

网络入侵防御系统可以分析网络流量,监视特定协议的数据包转发速率、主机与主机之间的数据包传输速率、连接速率或应用层请求和消息的发送速率。这些速率监视器使用一组阈值进行工作,这些阈值确定正常网络操作所需的最大值。这些值取自协议标准的定义或者最佳实践,此功能称为速率分析。阈值可以由管理员手动设置,也可以由入侵防御系统供应商预配置。拒绝服务攻击通常在OSI模型的不同级别使用泛洪,因此可以使用这些机制来检测它们。

举例来说,当入侵检测传感器开启速率分析组件,并且该传感器被配置为监视攻击者和目标主机之间的UDP通信速率,通信速率的阈值为每秒150个数据包时,达到或超过此阈值后,传感器会发出警报并采取相应的操作(结果可能因配置的操作或报警阈值而异)。

注意,当发生DoS或DDoS攻击时,基于阈值的速率分析可能产生大量告警,而短时大量告警也会对入侵检测系统的处理性能造成压力,所以适当配置告警的汇总,将有利于系统处理压力的降低。

5. 数据包头匹配

数据包头匹配的最简单的方法是通过分析数据包的标头来解决可疑或恶意活动。例如,TCP段中TCP标志位的异常字段匹配。

通过数据包头匹配可以发现恶意软件或恶意软件感染的设备(如允许远程控制系统的特洛伊木马程序),并识别被攻击设备所接受的网络连接的基本标识。传感器可以根据这些恶意软件或应用程序使用的已知传输层端口来识别这些连接。但是基于这种标识的判定容易出错,因为有些应用程序可以合法地使用这些端口。

我们可以通过对协议执行OSI模型2~4层的低级协议验证,来检测格式错误的数据包。通常攻击者会使用这些格式错误的数据包,通过利用TCP协议头或IP包头转发功能中的错误来使受保护的系统或网络设备崩溃。

6. 数据包内容匹配

传感器可以对数据包所传输的有效载荷进行检查,如果这些连接使用在单个数据包中可以识别的已知负载数据模式进行传输,那么传感器可以在数据包的有效载荷中发现可疑的传输内容。

传感器可以检测网络中无用的应用程序,如利用消息传输或使用标准应用程序端口来传输的非标准应用程序。

传感器通过查找特定的有效负载字节序列,检测嵌入数据包负载的已知应用层攻击。

很多聪明的攻击者会使用网络上的病毒库来查询自己编写的恶意软件是否已经存在,如果不存在,那么自己编写的软件将会绕过大多数基于病毒库的传统杀毒软件。同样,攻击者也会使用很多开源的沙箱对自己制作的恶意代码进行可行性分析,从而找到各个安全解决方案的逃避方法。

由于传感器针对每个单独的数据包进行检查,因此了解这些原理的攻击者只需要将恶意代码分别写在两个或多个数据包上传播就可以绕过此类检查。

针对数据包内容的匹配方法也会导致误报,因为合法流量有可能包含相同的流量模式。由于传感器只检查单个包内容而看不到它的上下文,因此出现误报就在所难免,所以有些入侵防御系统的生产商也会加入类似忠诚度这样的参数,来描述某种特征可能出现的误报率。

7. 统计建模

网络入侵防御系统传感器可以使用分析技术和监控学习来构建描述某些流量属性的统计模型,如流量传输的模式、会话、传输流量构成、传输的时间间隔等。这种方法通常与基于异常的方法进行配合,对于发现未知攻击有很大帮助,这些攻击违反了已知的“正常”行为。使用这种方法的传感器经常会检测到拒绝服务和类似的基于泛洪的攻击。统计建模容易出现网络中误报率较高的情况,而统计模型无法充分描述这些误报率。

在通常情况下,脆弱性管理平台会对网络进行扫描,定期合法地向不同的主机发送多个会话链接请求,但是,受感染的服务器或主机会尝试打开更多的会话。网络IPS传感器可以检测到此类异常并识别为攻击。

通常入侵检测系统中的攻击识别系统可以分为两类:一类是基于匹配的,如特征库;另一类是基于异常的,如TCP正常化和统计建模。基于匹配的检测方式的特点是主要针对已知攻击,当发现异常流量时发布明确告警。也可以理解为定义的规则,只要匹配了就认为有攻击产生。而另一类基于异常的检测是定义什么是正常的,其他不符合正常情况的流量都认为是攻击,这种检测方式主要用来识别未知攻击,通常告警不明确,只知道有违规流量产生,但是并不知道是哪种攻击。

8. 事件关联

除了流量相关性,还有一种分析方法允许传感器提供事件相关性,在这种情况下,传感器将多个检测到的事件关联起来,以便向管理员提供更高级别的整合信息,并可能使用预防措施自动对此类高级信息执行操作。

传感器上的事件关联有利于更可靠地检测复合攻击。复合攻击通常由多个单独的事件或攻击组成。传感器需要看到攻击的多个组件,才能将其识别为攻击。这提高了部署预防性积极操作所需的可靠性和可信度,并向管理员提供了有关网络活动的更多信息。Nimda攻击的检测就是一个典型的例子,为了更准确地识别Nimda病毒,可能会将多个特征签名(Signature)进行关联,也就是说,当指定的一组特征签名都产生匹配时,将会认为网络遭受了Nimda攻击。

与其他方法不同,传感器无法使用很长的时间窗口来关联事件。因此,如果攻击者将攻击行为放慢,那么攻击者就可以逃避事件关联的检测。虽然可能有这种情况的存在,但事件关联检查依然是精确识别攻击的方法,并且可以发现攻击的各个组成部分。

5.1.3 DDoS防护技术

除前文中谈到的网络防火墙和入侵防御系统外,在边界防护的技术领域不得不提到DDoS防护。因为当攻击者完成侦查与分析,进一步对组织内网实施攻击行动时,通常会采用DoS或DDoS攻击使边界防护设备(如防火墙或Web应用防火墙)过载,从而将流量切换到旁路,这使得攻击流量有机会绕过防护设备对组织实施直接攻击。

1. DoS和DDoS攻击介绍

拒绝服务式攻击(DoS)是指通过攻击手段使得服务系统无法正常提供服务的攻击,而这类攻击的形式是多样的,可以利用ICMP、TCP、UDP等不同的协议,针对网络带宽的恶意堵塞,针对服务线程的占用,或者通过大量分片对服务器缓存长时间占用,也可以是对系统脆弱性的恶意利用。拒绝服务式攻击样例如图5-4所示。

图5-4 拒绝服务式攻击样例

分布式拒绝服务攻击(DDoS)属于DoS攻击的一种,他们的目的是相同的,都是要让服务器无法正常提供服务。但是DDoS要比DoS更复杂,因为DDoS的攻击者往往控制着大量的僵尸主机,在指定时间使用不同的网络IP对服务器实施分布式攻击。

在DDoS攻击过程中通常有几种角色,包括Attacker攻击者、Botnet僵尸网络和Server被攻击服务器。图5-5所示为分布式拒绝服务攻击样例。

图5-5 分布式拒绝服务攻击样例

然而,造成服务器无法正常提供服务的不一定是恶意攻击。这也是为什么对于DDoS攻击的防范主要关注在流量的清洗。举例来说,某个游戏服务提供商发出公告会在“七夕情人节”的晚上8时上线新任务,然而实际上线人数远远超过了游戏服务上的预估人数,导致服务器瘫痪,大量玩家无法上线。其实换个角度来看,虽然这些玩家不是恶意攻击者,但是同样实现了分布式拒绝服务攻击的效果。因此可以发现,对于DoS和DDoS的攻击防范的解决方案是否有效,很大程度上取决于恶意流量的识别是否准确。

2. 主流解决方案介绍

目前主流的DDoS防护解决方案主要关注在分层清洗,也就是人们常说的近源和近目,通常包括ISP清洗、云清洗、网关防护和应用层防C&C。本节关注的是与网关防护的解决方案。

参考某网络安全厂商的DDoS防护解决方案可以看到网络和流量泛洪保护。

(1)行为DoS:通过基于行为的自适应检测和保护来防止TCP、UDP、ICMP、IGMP和碎片式DDoS攻击。

(2)DoS屏蔽:通过预先定义和定制的过滤器防止已知的DDoS攻击工具,以阻止每种模式的速率限制的攻击。

(3)SYN保护:通过每个受保护服务器的SYN速率阈值阻止SYN欺骗攻击。

(4)黑名单:利用三层和四层源-目标分类和过期规则阻止一般攻击。

(5)连接速率限制:使用基于速率的阈值阻止通用、不支持的协议(非DNS、HTTP)和应用程序级泛洪攻击。

基于应用层的DoS/DDoS防护如下。

(1)Web质询SYN防护:通过SYN速率阈值和每个受保护服务器的Web质询和响应,防止基于HTTP连接的攻击。

(2)行为DNS保护:使用基于DNS足迹阻止、速率限制和DNS挑战和响应的DNS自适应行为检测阻止基于DNS查询的DoS攻击。

(3)行为HTTP保护(简称“HTTP缓解措施”):通过基于服务器的HTTP自适应行为检测、HTTP占用空间和Web质询/响应、302重定向和JS质询操作阻止基于HTTP连接的DoS攻击和上游HTTP带宽攻击。