拒绝服务攻击 ------------
拒绝服务攻击的英文意思是Denial of Service,简称DoS。这种攻击行动使 网站服务器充斥大量要求回复的 信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提 供正常的网络服务。 以下的图示可解释这类攻击的过程,以及公司、企业应如何加以防范。
“拒绝服务”是如何攻击的
参照图示:
通过普通的网络连线,使用者传送信息要求服务器予以确定。服务器于是回 复用户。用户被确定后,就可登 入服务器。
参照图示:
“拒绝服务”的攻击方式为:用户传送众多要求确认的信息到服务器,使服 务器里充斥着这种无用的信息。 所有的信息都有需回复的虚假地址,以至于当服务器试图回传时,却无法找到用 户。服务器于是暂时等候,有时 超过一分钟,然后再切断连接。服务器切断连接时,黑客再度传送新一批需要确 认的信息,这个过程周而复始, 最终导致服务器无法动弹,瘫痪在地。
如何阻挡“拒绝服务”的攻击
参照图示:
阻挡“拒绝服务”的攻击的常用方法之一是:在网络上建立一个过滤器(fi lter)或侦测器(sniffer), 在信息到达网站服务器之前阻挡信息。过滤器会侦察可疑的攻击行动。如果某种 可疑行动经常出现,过滤器能 接受指示,阻挡包含那种信息,让网站服务器的对外连接线路保持畅通。
分布式拒绝服务攻击 ------------------
分布式拒绝服务攻击的英文意思是Distributed Denial of Service,简称D DoS。 以下是一个典型的分布式拒绝服务攻击网络结构图:
参照图示:
攻击者在Client(客户端)操纵攻击过程。每个Handler(主控端)是一台已 被入侵并运行了特定程序 的系统主机。每个主控端主机能够控制多个Agent(代理端)。每个代理端也是一 台已被入侵并运行另和种 特定程序的系统主机。每个响应攻击命令的代理端会向被攻击目标主机发送拒绝 服务攻击数据包。 至今为止,攻击者最常使用的分布式拒绝服务攻击程序包括4种:Trinoo、T FN、TFN2K和Stacheldraht。 为了提高分布式拒绝服务攻击的成功率,攻击者需要控制成百上千的被入侵 主机。这些主机通常是Linux和 SUN机器,但这些攻击工具也能够移植到其它平台上运行。这些攻击工具入侵主机 和安装程序的过程都是自动化 的。这个过程可分为以下几个步骤: 1、探测扫描大量主机以寻找可入侵主机目标。
2、入侵有安全漏洞的主机并获取控制权。
3、在每台入侵主机中安装攻击程序。
4、利用已入侵主机继续进行扫描和入侵。
由于整个过程是自动化的,攻击者能够在5秒钟内入侵一台主机并安装攻击工 具。也就是说,在短短的一 小时内可以入侵数千台主机。
几种常见分布式拒绝服务攻击工具的特征 ------------------------------------
以下是攻击者常用的分布式拒绝服务攻击工具:
◆ Trinoo
客户端、主控端和代理端主机相互间通讯时使用如下端口:
1524 tcp 27665 tcp 27444 udp 31335 udp
重要提示:以上所列出的只是该工具的缺省端口,仅作参考。这些端口可以轻 易被修改。
◆ TFN
客户端、主控端和代理端主机相互间通讯时使用ICMP ECHO和ICMP ECHO REPL Y数据包。
◆ Stacheldraht
客户端、主控端和代理端主机相互间通讯时使用如下端口和数据包:
16660 tcp 65000 tcp ICMP ECHO ICMP ECHO REPLY
重要提示:以上所列出的只是该工具的缺省端口,仅作参考。这些端口可以轻 易被修改。
◆ TFN2K
客户端、主控端和代理端主机相互间通讯时并没有使用任何指定端口(在运行 时指定或由 程序随机选择),但结合了UDP、ICMP和TCP数据包进行通讯。
对于这几个分布式拒绝服务攻击工具的详细技术分析,请访问中国著名网络 安全组织绿色兵团 站点(http://www.isbase.com/)。
拒绝服务攻击工具“进化“过程 --------------------------
最容易的攻击方法之一是拒绝服务(Denial of Service)攻击。在TCP/IP堆栈 中存在许多漏洞,如允许碎 片包、大数据包、IP路由选择、半公开TCP连接、数据包flood等等,这些都能够 降低系统性能,甚至使系统 崩溃。
每发现一个漏洞,相应的攻击程序往往很快就会出现。每一个攻击程序都是 独立的。一个特定的漏洞攻击 程序往往只影响某一版本的TCP/IP协议(虽然Mircosoft拥有非常庞大的个人计算 机市场,大多数的家庭用户 几乎完全没有意识到这些漏洞的存在,也不知道如何得到和使用安全漏洞的补丁 程序,多种漏洞攻击方法导致 目标系统崩溃的机率相当高。)
拒绝服务攻击程序可从互联网上下载得到,如以下网址:
http://www.technotronic.com/denial.html http://www.rootshell.com/
接着就是用Unix shell脚本将多种的拒绝服务攻击程序组合到一个工具里。 “rape“就是这样一种工具: (由“mars“编写,“ttol“改进)
echo “Editted for use with www.ttol.base.org“ echo “rapeing $IP. using weapons:“ echo “latierra “ echo -n “teardrop v2 “ echo -n “newtear “ echo -n “boink “ echo -n “bonk “ echo -n “frag “ echo -n “fucked “ echo -n “troll icmp “ echo -n “troll udp “ echo -n “nestea2 “ echo -n “fusion2 “ echo -n “peace keeper “ echo -n “arnudp “ echo -n “nos “ echo -n “nuclear “ echo -n “ssping “ echo -n “pingodeth “ echo -n “smurf “ echo -n “smurf4 “ echo -n “land “ echo -n “jolt “ echo -n “pepsi “
这种工具的优点是允许一个攻击者使用多种攻击方法同时攻击单个IP地址( 这增加了攻击成功的概率), 但也意味着必须将所有编译好的攻击程序打包好(如Unix的“tar“文件),以方便 传输和进行攻击。
在允许使用多种拒绝服务攻击方法的情况下,同时又是一个单一的、更易于 保存/传输/和使用的已编译程 序,就是类似于Mixter编写的“targa.c“这种程序。Targa程序在一个C源程序中结 合了以下多种攻击方法:
/* targa.c - copyright by Mixter version 1.0 - released 6/24/98 - interface to 8 multi-platform remote denial of service exploits */ . . .
/* bonk by route|daemon9 & klepto * jolt by Jeff W. Roberson (modified by Mixter for overdrop effect) * land by m3lt * nestea by humble & ttol * newtear by route|daemon9 * syndrop by PineKoan * teardrop by route|daemon9 * winnuke by _eci */
但是,即使是象“targa“这类多种拒绝服务攻击组合工具,一个攻击者在同一 时间内也只能攻击一个 IP地址。
为了增加攻击的效率,一群攻击者们需要通过IRC频道或电话来保持联系,每 一个人攻击不同的系统, 以实现团体攻击。这种方法在探测漏洞、入侵系统、安装后门和rootkit的行动中 也经常被使用。
即使存在一些使用限制,但至少在两年内,这个工具不断地增加各种攻击程 序,形成了一个名为 “Denial of Service Cluster“(拒绝服务集群)软件包。“trinoo“工具就是这样 一个例子。而在计算机 黑客界中也有一个由Mixter编写的类似工具“Tribe Flood Network“(TFN)。
与trinoo只实现UDP攻击相比,TFN支持ICMP flood、UDP flood、SYN flood 和Smurf攻击等。这些攻 击通过发送ICMP_ECHOREPLY(ICMP Type 0)包命令控制。TFN也使用了与trinoo一 样的Blowfish加密算法。
我敢担保,这些拒绝服务工具包将会得到进一步的发展与完善,功能更强大 ,隐蔽性更强,关键字符串和 控制命令口令将使用更强壮加密算法,甚至对自身进行数字签名,或在被非攻击 者自己使用时自行消毁,使用 加密通讯通道,使用象ICMP这种令防火墙更难监测或防御的协议进行数据包传输 ,等等。