什么是DDOS攻击| 怎么抵抗DDOS攻击
&i%1\o d T*8I0\+ 一、为何要DDOS?
#-Ad0/ ,,KGcDBj 随着Internet互联网络带宽的增加和多种DDOS黑客工具的不断发布,DDOS拒绝服务攻击的实施越来越容易
Yab=p
9V;; eq#x~O4 ,DDOS攻击事件正在成上升趋势。出于商业竞争、打击报复和网络敲诈等多种因素,导致很多IDC托管机
>hbT'Or@ Ee?+IZ H7| 房、商业站点、游戏服务器、聊天网络等网络服务商长期以来一直被DDOS攻击所困扰,随之而来的是客户
4]/i0\Vbam Z2x% 投诉、同虚拟主机用户受牵连、法律纠纷、商业损失等一系列问题,因此,解决DDOS攻击问题成为网络服
Qo;#}%}^^ `Ufv,_n 务商必须考虑的头等大事。
#RA3 T[A r0 6M.r 二、什么是DDOS?
}.R].4gT b-XC\ DDOS是英文Distributed Denial of Service的缩写,意即“分布式拒绝服务”,那么什么又是拒绝服务
OK^0,0kS3 r!7e:p JLO (Denial of Service)呢?@梢哉饷蠢斫猓?彩悄艿贾潞戏ㄓ没Р荒芄环梦收?M?绶?竦男形?妓闶?br>
G]- wN7G 拒绝服务攻击。也就是说拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从
f YuM`O J|BZ{T}d 而达成攻击者不可告人的目的。虽然同样是拒绝服务攻击,但是DDOS和DOS还是有所不同,DDOS的攻击策
XN=Cq*3} FTg4i\Wp 略侧重于通过很多“僵尸主机”(被攻击者入侵过或可间接利用的主机)向受害主机发送大罖@此坪戏ǖ?br>
yw(E} 网络包,从而造成网络阻塞或服务器资源耗尽而导致拒绝服务,分布式拒绝服务攻击一旦被实施,攻击网
+.b@rU6H BOQeP/> 络包就会犹如洪水般涌向受害主机,从而把合法用户的网络包淹没,导致合法用户无法正常访问服务器的
Hw "UJP j_r7oARL 网络资源,因此,拒绝服务攻击又被称之为“洪水式攻击”,常见的DDOS攻击手段有SYN Flood、ACK
-Jtx9P /<s$Am Flood、UDP Flood、ICMP Flood、TCP Flood、Connections Flood、Script Flood、Proxy Flood等;而
I:qfB2tL)O T"GuE[?a DOS则侧重于通过对主机特定漏洞的利用攻击导致网络栈失效、系统崩溃、主机死机而无法提供正常的网
Yv`8{_8L &z\]A,=Tc 络服务功能,从而造成拒绝服务,常见的DOS攻击手段有TearDrop、Land、Jolt、IGMP Nuker、Boink、
-|DSfI#j v0dFP0.;& Smurf、Bonk、OOB等。就这两种拒绝服务攻击而言,危害较大的主要是DDOS攻击,原因是很难防范,至于
]/+qM)F w$5N6 DOS攻击,通过给主机服务器打补丁或安装防火墙软件就可以很好地防范,后文会详细介绍怎么对付DDOS
IFX|"3[$ m7XJe[O 攻击。
Rro{A+[,X wnE
c
三、被DDOS了吗?
UEq;}4Bo B=;pyhc DDOS的表现形式主要有两种,一种为流量攻击,主要是针对网络带宽的攻击,即大量攻击包导致网络
)6?.; B %}=$HwN) 带宽被阻塞,合法网络包被虚假的攻击包淹没而无法到达主机;另一种为资源耗尽攻击,主要是针对服务
F$K-Q;r]< Or9@ X=C 器主机的攻击,即通过大量攻击包导致主机的内存被耗尽或CPU被内核及应用程序占完而造成无法提供网
,<lxq<1I afEp4(X~ 络服务。
-?b@ 6U 6bg+U`&g 如何判断网站是否遭受了流量攻击呢?@赏ü齈ing命令来测试,若发现Ping超时或丢包严重(假定平
n;"4`6L~ ^gFjm~2I 时是正常的),则可能遭受了流量攻击,此时若发现和你的主机接在同一交换机上的服务器也访问不了了
g)'tr
' Siw9_c ,基本可以确定是遭受了流量攻击。当然,这样测试的前提是你到服务器主机之间的ICMP协议没有被路由
tji,by#E/% cLlfncI 器和防火墙等设备屏蔽,否则可采取Telnet主机服务器的网络服务端口来测试,效果是一样的。不过有一
W4CI=94 oQDOwM, 点可以肯定,假如平时Ping你的主机服务器和接在同一交换机上的主机服务器都是正常的,突然都Ping不
4(4JQ(5 F$ .j|C1a 通了或者是严重丢包,那么假如可以排除网络故障因素的话则肯定是遭受了流量攻击,再一个流量攻击的
ABV\:u 2vnzB8"k 典型现象是,一旦遭受流量攻击,会发现用远程终端连接网站服务器会失败。
^BM/K&7^ {NK>9phoB 相对于流量攻击而言,资源耗尽攻击要容易判断一些,假如平时Ping网站主机和访问网站都是正常的,发
J'O`3!Oy/ y`Pp"!P"O 现突然网站访问非常缓慢或无法访问了,而Ping还可以Ping通,则很可能遭受了资源耗尽攻击,此时若在
~+>M,LfK gE=~.P[ZX 服务器上用Netstat -na命令观察到有大量的SYN_RECEIVED、TIME_WAIT、FIN_WAIT_1等状态存在,而
+>qBK}` l``1^&K ESTABLISHED很少,则可判定肯定是遭受了资源耗尽攻击。还有一种属于资源耗尽攻击的现象是,Ping自
UKK}$B d L%E0o 己的网站主机Ping不通或者是丢包严重,而Ping与自己的主机在同一交换机上的服务器则正常,造成这种
\ b9,> A?}OOjA 原因是网站主机遭受攻击后导致系统内核或某些应用程序CPU利用率达到100%无法回应Ping命令,其实带
r-YQsu& )+t5G>yKK 宽还是有的,否则就Ping不通接在同一交换机上的主机了。
5,AQ~_,'\ p>eD{#2 当前主要有三种流行的DDOS攻击:
QrA8KSLC _z4rx 1、SYN/ACK Flood攻击:这种攻击方法是经典最有效的DDOS方法,可通杀各种系统的网络服务,主要是通
jPU#{Wo# ~POeFZ 过向受害主机发送大量伪造源IP和源端口的SYN或ACK包,导致主机的缓存资源被耗尽或忙于发送回应包而
deTbvl ^YIOS]d>8# 造成拒绝服务,由于源都是伪造的故追踪起来比较困难,缺点是实施起来有一定难度,需要高带宽的僵尸
M<$l&%<`G T (2,iG8 主机支持。少量的这种攻击会导致主机服务器无法访问,但却可以Ping的通,在服务器上用Netstat -na
'*,4F' 2FVKgyV 命令会观察到存在大量的SYN_RECEIVED状态,大量的这种攻击会导致Ping失败、TCP/IP栈失效,并会出现
#6H<JB M.8!BB7\8e 系统凝固现象,即不响应键盘和鼠标。普通防火墙大多无法抵御此种攻击。
:s'%IGy>: <dYk|5AdLF 2、TCP全连接攻击:这种攻击是为了绕过常规防火墙的检查而设计的,一般情况下,常规防火墙大多具备
5N/]/ Wq9s[)F"Z 过滤TearDrop、Land等DOS攻击的能力,但对于正常的TCP连接是放过的,殊不知很多网络服务程序(如:
C(0Iv[~y/ =hs@W)-O IIS、Apache等Web服务器)能接受的TCP连接数是有限的,一旦有大量的TCP连接,即便是正常的,也会导
<aHt6s' 2@&|hd=- 致网站访问非常缓慢甚至无法访问,TCP全连接攻击就是通过许多僵尸主机不断地与受害服务器建立大量
`p ?E{k.N S-/#3 的TCP连接,直到服务器的内存等资源被耗尽而被拖跨,从而造成拒绝服务,这种攻击的特点是可绕过一
P~qVr#eU %@&)t?/= 般防火墙的防护而达到攻击目的,缺点是需要找很多僵尸主机,并且由于僵尸主机的IP是暴露的,因此容
7.Mh$?;i9 cY"^3Ot%^ 易被追踪。
z>0"T2W
y >@L
HJ61C 3、刷Script脚本攻击:这种攻击主要是针对存在ASP、JSP、PHP、CGI等脚本程序,并调用MSSQLServer、
>Qx#2x+ *"CvB{XF&Z MySQLServer、Oracle等数据库的网站系统而设计的,特征是和服务器建立正常的TCP连接,并不断的向脚
QLUe{@ivc ~/x42|t 本程序提交查询、列表等大量耗费数据库资源的调用,典型的以小博大的攻击方法。一般来说,提交一个
$KKaA{0- 4AM*KI GET或POST指令对客户端的耗费和带宽的占用是几乎可以忽略的,而服务器为处理此请求却可能要从上万
\Cs<'(= xK r,XZu 条记录中去查出某个记录,这种处理过程对资源的耗费是很大的,常见的数据库服务器很少能支持数百个
JgB# EoF =z3jFaZ 查询指令同时执行,而这对于客户端来说却是轻而易举的,因此攻击者只需通过Proxy代理向主机服务器
|i`@!NrFL 0hkuBQb\ 大量递交查询指令,只需数分钟就会把服务器资源消耗掉而导致拒绝服务,常见的现象就是网站慢如蜗牛
A%PPG+IfA 'JMa2/7CG 、ASP程序失效、PHP连接数据库失败、数据库主程序占用CPU偏高。这种攻击的特点是可以完全绕过普通
ZH(.|NaH C#~MR+; 的防火墙防护,轻松找一些Proxy代理就可实施攻击,缺点是对付只有静态页面的网站效果会大打折扣,
V"p<A ger<JSL% 并且有些Proxy会暴露攻击者的IP地址。
]p!J]YV ]0 v/czW\z 四、怎么抵御DDOS?
F&*M$@u5 #I?iR3u 对付DDOS是一个系统工程,想仅仅依@@某种系统或产品防住DDOS是不现实的,可以肯定的是,完全杜绝
'| }}og %)9]dOdOk DDOS目前是不可能的,但通过适当的措施抵御90%的DDOS攻击是可以做到的,基于攻击和防御都有成本开
x5SQ+7 A,{D9-% 销的缘故,若通过适当的办法增强了抵御DDOS的能力,也就意味着加大了攻击者的攻击成本,那么绝大多
^JtHTLHL= :xPvEK[B7 数攻击者将无法继续下去而放弃,也就相当于成功的抵御了DDOS攻击
qYiAwK$ C.E>) 以下几点是防御DDOS攻击几点:
Fw9``{4w N
>!xedw= 1、采用高性能的网络设备
ge?-^s4M 2NknC>9(\ 首先要保证网络设备不能成为瓶颈,因此选择路由器、交换机、硬件防火墙等设备的时候要尽量选用知名
? ~Zrd i8YgG0[) 度高、口碑好的产品。再就是假如和网络提供商有特殊关系或协议的话就更好了,当大量攻击发生的时候
%h"<
IA
S. z,|%?
1
请他们在网络接点处做一下流量限制来对抗某些种类的DDOS攻击是非常有效的。
r$FM8$cJ ~{YgM/c|dt 3、充足的网络带宽保证
]&U| d G=cH61 网络带宽直接决定了能抗受攻击的能力,假若仅仅有10M带宽的话,无论采取什么措施都很难对抗现在的
A9UaLSe :EwA$`/ SYNFlood攻击,当前至少要选择100M的共享带宽,最好的当然是挂在1000M的主干上了。具体的可以去:
yl<$yd0Zdu htYrv5q=M http://www.bingdun.com/news_view.asp?id=29 看看
-0SuREn Zfv(\SI 但需要注意的是,主机上的网卡是1000M的并不意味着它的网络带宽就是千兆的,若把它接在100M的
GFdJFQio Gu`Vk/& 交换机上,它的实际带宽不会超过100M,再就是接在100M的带宽上也不等于就有了百兆的带宽,因为网络
k^5Rf Y"kS!!C>[ 服务商很可能会在交换机上限制实际带宽为10M,这点一定要搞清楚。
!VX_'GyK Q(5:~**I 4、安装专业抗DDOS防火墙
`$Fl gp0P *7;*@H*jd 就目前来看 在防御DDOS攻击的防火墙,国内比较有名的要数冰盾防火墙了, 详
,35:Srf| ilp;@O6 情:
http://wwwbingdun.com 这里我就不做具体的介绍了
Usf"K*A FP9<E93br sQ:VrXwP 以上的几条对抗DDOS建议,适合绝大多数拥有自己主机的用户