DoS:我们所说的DoS (Denial of Service)攻击其中文含义是拒绝服务攻击,这种攻击行动使网站服务器充斥大量要求回复的信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提供正常的网络服务。黑客不正当地采用标准协议或连接方法,向攻击的服务发出大量的讯息,占用及超越受攻击服务器所能处理的能力,使它当(Down)机或不能正常地为用户服务。
“拒绝服务”是如何攻击的通过普通的网络连线,使用者传送信息要求服务器予以确定。服务器于是回复用户。用户被确定后,就可登入服务器。 “拒绝服务”的攻击方式为:用户传送众多要求确认的信息到服务器,使服务器里充斥着这种无用的信息。所有的信息都有需回复的虚假地址,以至于当服务器试图回传时,却无法找到用户。服务器于是暂时等候,有时超过一分钟,然后再切断连接。服务器切断连接时,黑客再度传送新一批需要确认的信息,这个过程周而复始,最终导致服务器无法动弹,瘫痪在地。
在这些 DoS 攻击方法中,又可以分为下列几种:
TCP SYN Flooding
Smurf
Fraggle
1.TCP Syn Flooding
由于TCP协议连接三次握手的需要,在每个TCP建立连接时,都要发送一个带SYN标记的数据包,如果在服务器端发送应答包后,客户端不发出确认,服务器会等待到数据超时,如果大量的带SYN标记的数据包发到服务器端后都没有应答,会使服务器端的TCP资源迅速枯竭,导致正常的连接不能进入,甚至会导致服务器的系统崩溃。这就是TCP
SYN Flooding攻击的过程。
图1 TCP Syn攻击
TCP Syn 攻击是由受控制的大量客户发出 TCP 请求但不作回复,使服务器资源被占用,再也无法正常为用户服务。服务器要等待超时(Time
Out)才能断开已分配的资源。
2.Smurf黑客采用 ICMP(Internet Control Message Protocol RFC792)技术进行攻击。常用的ICMP有 PING 。首先黑客找出网络上有哪些路由器会回应 ICMP 请求。然后用一个虚假的 IP 源地址向路由器的广播地址发出讯息,路由器会把这讯息广播到网络上所连接的每一台设备。这些设备又马上回应,这样会产生大量讯息流量,从而占用所有设备的资源及网络带宽,而回应的地址就是受攻击的目标。例如用500K bit/sec 流量的 ICMP echo (PING)包广播到100 台设备,产生 100 个 PING 回应,便产生 50M bit/sec流量。这些流量流向被攻击的服务器,便会使这服务器瘫痪。
ICMP Smurf 的袭击加深了ICMP的泛滥程度,导致了在一个数据包产生成千的ICMP数据包发送到一个根本不需要它们的主机中去,传输多重信息包的服务器用作Smurf 的放大器。
图2 Smurf 攻击图
3.Fraggle:Fraggle
基本概念及做法像 Smurf, 但它是采用UDP echo 讯息。
如何阻挡“拒绝服务”的攻击
阻挡“拒绝服务”的攻击的常用方法之一是:在网络上建立一个过滤器(filter)或侦测器(sniffer),在信息到达网站服务器之前阻挡信息。过滤器会侦察可疑的攻击行动。如果某种可疑行动经常出现,过滤器能接受指示,阻挡包含那种信息,让网站服务器的对外连接线路保持畅通。
DDoS:
DDoS(Distributed Denial of Service)其中文含义为分布式拒绝服务攻击。
Distributed DoS 是黑客控制一些数量的PC 机或路由器,用这些 PC 机或路由器发动 DoS 攻击。因为黑客自己的 PC 机可能不足够产生出大量的讯息,使遭受攻击的网络服务器处理能力全部被占用。
黑客采用 IP Spoofing 技术,令他自己的 IP 地址隐藏,所以很难追查。如果是在 Distributed DoS 情况下,被追查出来的都是被黑客控制的用户的 IP 地址;他们本身也是受害者。
黑客一般采用一些远程控制软件,好像Trinoo, Tribal Flood Network, Stacheldraht 及其他DoS 程序。美国政府资助的CERT (Computer Emergency Response Team) 及 FBI都有免费软件如 find_dosv31,给企业检查自己的网络有没有被黑客安装这些远程控制软件。但黑客亦同时在修改软件以逃避这些检查软件。这是一场持久的网上战争。
图3 黑客图
攻击者在Client(客户端)操纵攻击过程。每个Handler(主控端)是一台已被入侵并运行了特定程序的系统主机。每个主控端主机能够控制多个Agent(代理端)。每个代理端也是一台已被入侵并运行某种特定程序的系统主机。每个响应攻击命令的代理端会向被攻击目标主机发送拒绝服务攻击数据包。
在今后的日子里,这些拒绝服务工具包将会得到进一步的发展与完善,功能更强大,隐蔽性更强,关键字符串和控制命令口令将使用更强壮加密算法,甚至对自身进行数字签名,或在被非攻击者自己使用时自行消毁,使用加密通讯通道,使用象ICMP这种令防火墙更难监测或防御的协议进行数据包传输,等等。