APP下载

DDoS攻击原理及抗DDoS设备的应用

2011-06-09曲劲光

电信工程技术与标准化 2011年10期
关键词:傀儡攻击者受害者

曲劲光

(中国移动通信集团宁夏有限公司,银川 750002)

1 DDoS攻击原理

随着Internet的发展和普及,攻击技术也在不断发展,拒绝服务攻击(DoS)已经成为一种很常见的攻击行为。

DoS是指攻击者通过某种手段,有意的造成计算机或网络不能正常运转从而不能向合法用户提供所需要的服务或者使得服务质量降低。

如果处于不同位置的多个攻击者同时向一个或数个目标发起攻击,或者一个或多个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击,由于攻击的发出点是分布在不同地方的,这类攻击称为分布式拒绝服务攻击(DDoS)。DDoS攻击方式如图1所示。

一般来说,DDoS的典型过程可以分为3个阶段,即信息收集、占领傀儡计算机和攻击实施。

(1)获取目标信息,也称为踩点(footprint)。为了使得攻击奏效,攻击者需要了解受害者许多的信息,如被攻击目标主机数目、配置、性能、操作系统、地址情况以及目标网络的带宽等。因此,在攻击发生前,攻击者需要先对目标进行侦查,如利用扫描工具对目标进行扫描。常用的信息收集方式有Whois命令、Nslookup命令、网上的公开信息、搜索引擎、Traceroute命令、网络扫描、端口扫描和漏洞扫描;

图1 DDoS攻击方式

(2)占领傀儡机和控制台。在DDoS攻击中,攻击者可以通过自己的机器直接对目标发起攻击,这样攻击者可能会冒着被发现的风险。通常,为了掩蔽自己不被发现,攻击者需要占领一些傀儡机。并且,攻击者还需要向傀儡机发送命令的控制台,因此攻击者还需利用某些被其攻破的机器或者其拥有访问权限的机器作为控制台。目前,获得大量傀儡机的方法主要是通过携带后门程序的蠕虫,随着蠕虫的传播,后门程序也安装到了受蠕虫感染的主机上。

(3)在前面的准备工作完成以后,实际的攻击过程却相对比较简单,攻击者只需通过控制台向傀儡机发出指令,令其立即或在某个时间向指定的受害者大量发送特定的攻击数据分组即可。或者,攻击者可以在傀儡机上做一定时设置,时间一到,这些傀儡机就自行对既定目标发起攻击。

2 常见DDoS攻击类型

DDoS攻击靠的不是畸形数据分组,而是依靠数据分组的总量来达到攻击的目的,因此,它也是一种强力攻击或者野蛮攻击。虽然这种攻击通常会采用源地址伪造的手段,但除了某些特定的攻击方式,源地址伪造不一定是必须的。常见的DDoS攻击如下。

2.1 SYN Flood攻击

SYN Flood攻击是最常见的一种攻击。在TCP的连接建立过程中,需要连接双方完成3次握手,只有当3次握手都顺利完成,一个TCP连接才告建立。在3次握手进行的过程中,服务器需要保持所有未完成的握手信息(称为半开连接,即收到TCP-SYN并发送了SYN-ACK,但第3次握手信息直到握手完成或超时以后丢弃该信息)。由于半开连接的数量是有限的,如果攻击者不停地向受害者发送连接请求,而又不按协议规定完成握手过程,则服务器的半开连接栈可能会用完,从而不再接受其它的连接请求。

2.2 UDP Flood攻击

UDP是一种无连接的协议,在传输数据之前不需要如TCP那样建立连接。当一个系统收到一个UDP分组时,它会检查何种应用程序在监听该端口,如果有应用程序监听,则把数据交给该应用程序处理,如果没有应用程序监听该端口,则回应一个ICMP分组说明目标不可达。UDP Flood通常的主要目的是占用网络带宽,达到阻塞网络的目的,因此通常UDP Flood攻击的数据分组会比较长。

2.3 Smurf攻击

在Smurf攻击中,攻击者向网络上的某个或一些IP广播地址发送大量的ICMP回应请求消息,而这些消息中的源IP地址被伪造成受害者的IP地址。这样一来,攻击者每发送一个数据分组,受害者就会收到很多的回应分组,从而占用受害者的计算资源和带宽。

2.4 Fraggle攻击

Fraggle攻击与Smurf攻击类似,不同的是Fraggle攻击采用的是UDP Echo(Fraggle)消息而非ping消息,这样,受害者被响应机的UDP Echo分组所淹没。

3 当前防护手段的不足

虽然目前网络安全产品的种类非常多,但是对于DDoS攻击却一筹莫展。常见的防火墙、入侵检测、路由器等,由于设计之初就没有考虑相应的DDoS防护,所以无法针对复杂的DDoS攻击进行有效的检测和防护。

3.1 路由器

通过路由器,我们确实可以实施某些安全措施,比如ACL等,这些措施从某种程度上确实可以过滤掉非法流量。一般来说,ACL可以基于协议或源地址进行设置,但是目前众多的DDoS攻击采用的是常用的一些合法协议,比如HTTP协议,这种情况下,路由器就无法对这样的流量进行过滤。同时,如果DDoS攻击采用地址欺骗的技术伪造数据分组,那么路由器也无法对这种攻击进行有效防范。

另一种基于路由器的防护策略是采用Unicast Reverse Path Forwarding (URPF)在网络边界来阻断伪造源地址IP的攻击,但是对于今天的DDoS攻击而言,这种方法也不能奏效,其根本原因就在于URPF的基本原理是路由器通过判断出口流量的源地址,如果不属于内部子网的则给予阻断。而攻击者完全可以伪造其所在子网的IP地址进行DDoS攻击,这样就完全可以绕过URPF防护策略。除此之外,如果希望URPF策略能够真正的发挥作用,还需要在每个潜在攻击源的前端路由器上配置URPF,但是要实现这种情况,现实中几乎不可能做到。

从2014年开始,山东省财政厅组织乡镇财政业务技能竞赛,每两年一届,极大鼓励了乡镇财政人员学知识、学业务的热情。为了迎接技能竞赛,各县市区也都对各乡镇财政所所长、乡镇财政业务骨干等进行专业知识培训。培训内容丰富、重点突出,理论与实践相结合,为提升基层财政规范化、精细化管理水平,奠定坚实基础。

3.2 防火墙

防火墙几乎是最常用的安全产品,但是防火墙设计原理中并没有考虑针对DDoS攻击的防护,在某些情况下,防火墙甚至成为DDoS攻击的目标而导致整个网络的拒绝服务。

首先是防火墙缺乏DDoS攻击检测的能力。通常,防火墙作为3层分组转发设备部署在网络中,一方面在保护内部网络的同时,它也为内部需要提供外部Internet服务的设备提供了通路,如果DDoS攻击采用了这些服务器允许的合法协议对内部系统进行攻击,防火墙对此就无能为力,无法精确的从背景流量中区分出攻击流量。虽然有些防火墙内置了某些模块能够对攻击进行检测,但是这些检测机制一般都是基于特征规则,DDoS攻击者只要对攻击数据分组稍加变化,防火墙就无法应对,对DDoS攻击的检测必须依赖于行为模式的算法。

第二个原因就是传统防火墙计算能力的限制,传统的防火墙是以高强度的检查为代价,检查的强度越高,计算的代价越大。而DDoS攻击中的海量流量会造成防火墙性能急剧下降,不能有效地完成分组转发的任务。

防火墙的部署位置也影响了其防护DDoS攻击的能力。传统防火墙一般都是部署在网络入口位置,虽然某种意义上保护了网络内部的所有资源,但是其往往也成为DDoS攻击的目标,攻击者一旦发起DDoS攻击,往往造成网络性能的整体下降,导致用户正常请求被拒绝。

3.3 IDS/IPS

目前IPS/IDS系统是最广泛的攻击检测或防护工具,但是在面临DDoS攻击时,IPS/IDS系统往往不能满足要求。

原因在于入侵检测系统虽然能够检测应用层的攻击,但是基本机制都是基于规则,需要对协议会话进行还原,但是目前DDoS攻击大部分都是采用基于合法数据分组的攻击流量,所以IPS/IDS系统很难对这些攻击进行基于特征的有效检测。虽然某些IPS/IDS系统本身也具备某些协议异常检测的能力,但这都需要安全专家手工配置才能真正生效,其实施成本和易用性极低。

IPS/IDS系统设计之初就是作为一种基于特征的应用层攻击检测设备。而大量的传统DDoS攻击依旧主要以3层或是4层的协议异常为特点,这就注定了IPS/IDS技术不太可能作为DDoS的主要检测防护手段。

4 优秀的DDoS防御能力必要条件

DDoS防护一般包含两个方面:其一是针对不断发展的攻击形式,尤其是采用多种欺骗技术的技术,能有效地进行检测;其二,也是最重要的,就是如何降低对业务系统或是网络的影响,从而保证业务系统的连续性和可用性。完善的DDoS攻击防护应该从4个方面考虑。

(1)能够从背景流量中精确的区分攻击流量;

(2)降低攻击对服务的影响,而不仅仅是检测;

(3)能够支持在各类网络入口点进行部署,包括性能和体系架构等方面;

(4)系统具备很强的扩展性和良好的可靠性。

5 Nsfocus ADS的一次抗DDoS攻击实例

图2 攻击流量被流量清洗系统牵引清洗

流量分析系统NTA发现了攻击流量,并立即发出攻击告警。安全维护人员通过NTA的DDoS告警功能发现了攻击行为,并对攻击做出了准确定位。借助于NTA设备快速定位攻击源后,安全维护人员利用流量清洗设备ADS对攻击进行牵引清洗。清洗系统开始流量清洗后,可在NTA上看到攻击流量逐渐减少,直至被全部清洗,正常流量被回注到网络链路中,如图2所示。

猜你喜欢

傀儡攻击者受害者
水傀儡考论
机动能力受限的目标-攻击-防御定性微分对策
东汉
东汉———皇帝成为受人摆布的傀儡
“目睹家暴也是受害者”,彰显未成年人保护精细化
正面迎接批判
有限次重复博弈下的网络攻击行为研究
受害者敏感性与报复、宽恕的关系:沉思的中介作用
儿童雾霾的长期受害者
傀儡的密码