分类: 系统运维
2010-02-06 17:34:41
引言:
最近,网络遭遇DDOS攻击的事件时有发生,比如最近的韩国网站遭受的攻击就属于DDOS攻击,后果非常严重,引起了全球网民的高度关注。但是,如何发现并检测到DDOS攻击呢?传统的网络安全类工具并不凑效,在此,笔者简单介绍一下网络遭遇DDOS攻击的症状以及如何借助网络分析技术定位DDOS攻击。
一、什么是DDOS攻击
DDOS(Distributed Denial of Service),即分布式拒绝服务攻击,这是当今流行的网络攻击方式之一,利用合法的服务请求来占用过多的资源或带宽,从而使服务器不能对正常、合法的用户提供服务。更通俗的说,只要导致合法用户不能够访问正常网络服务的行为都算是拒绝服务攻击。这也就说明拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从而达到其攻击目的。
DDOS的攻击通过众多的“僵尸主机”(被攻击者入侵过或可间接利用的主机)向受害主机发送大量看似合法的网络包, 从而造成网络阻塞或服务器资源耗尽而导致不能提供正常的服务(拒绝服务)。在分布式拒绝服务攻击的实施中,大量攻击主机发送的网络数据包就会犹如洪水般涌向受害主机,从而把合法用户的网络包淹没,导致合法用户无法正常访问服务器的网络资源,因此,拒绝服务攻击又被称之为“洪水攻击”,常见的DDOS攻击手段有SYN Flood、ACK Flood、UDP Flood、ICMP Flood、、Script Flood、Proxy Flood等多种方式。 下面我们将介绍如何通过网络分析技术手段来检测DDOS攻击。
二、遭遇攻击的症状
DDOS的目的非常明确,表现形式主要有两种,一种主要是针对网络带宽的攻击,即大量攻击包占用网络带宽,导致网络被阻塞,从而无法完成正常、合法响应;另一种则为资源耗尽攻击,主要是针对服务器的攻击,即通过大量攻击包导致服务器的内存或CPU资源被耗尽,从而造成服务器当机或无法提供正常的网络服务。
三、如何检测DDOS攻击
由于对DDOS攻击的防御较为困难,目前没有任何一种产品或方法能够防御DDOS攻击入侵,因此,对于如何检测DDOS攻击就显得至关重要。本文,我们将介绍通过网络分析的手段来检测DDOS攻击(此处用到的产品为科来网络通讯分析系统技术交流版6.9)。
利用网络分析技术的检测手段,通过对网络通讯数据包进行实时的捕获,能够快速的分析和检测到网络中是否发生了DDOS攻击。如果网络中已经发生了此类攻击,那么,我们借助网络分析技术就可以快速的查找和解决问题。下面我们通过一个实例来讲解用科来网络通讯分析系统查找DDOS攻击的方法。
首先,打开概要统计视图,查看网络中的TCP的连接信息,如图1所示:
(图1 概要统计视图)
从上图中我们看到,网络中存在大量的TCP同步数据包(2,249,352个),而成功建立TCP连接数太少,根据TCP三次握手的原理,我们知道,这是一种不正常的现象,网络肯定存在问题。我们再通过矩阵视图来查看具体的网络通信情况,如图2:
(图2 矩阵连接视图)
在矩阵连接视图中,大量的主机同时与125.91.13.124连接通讯,并且向其发送大量的数据包,我们怎样来确定这些数据包的类型呢?为了进一步确定发送了怎样的数据包,我们再查看数据包解码就能够看到,如图3所示:
(图3 数据包解码视图)
从上图中我们看到,当前的通讯全是使用了TCP进行通讯,查看TCP的标志,发送所有的数据包均为SYN置1,即TCP同步请求数据包,这些数据包全都向125.91.13.124请求同步,至此我们可以判断125.91.13.124这台主机进行遭受DDOS攻击, 而攻击的方式为SYN Flood攻击。
SYN Flood攻击是一种经典和常用的DDOS方法,主要是通过向受害主机发送大量的SYN或ACK包,导致主机的缓存资源被耗尽或忙于发送回应包而造成拒绝服务,对各种系统的网络服务、网络资源等都会造成巨大的影响。
检测DDOS攻击还可以用到一些常规方法,如Ping命令、NETSTAT命令等,但是,这些方法相对简单并且较为繁琐,通过网络分析技术进行分析,能起到事半功倍的效果,极大节约了故障查找的时间,提高了日常网络管理的效率。