当前位置: 首页 > 图文教程 > 服务器 > 安全防护 > 典型DoS攻击原理及抵御措施(1)

安全防护
服务器安全设置(十六)
服务器安全设置(十七)
服务器安全设置(十八)
服务器安全设置(十九)
服务器安全设置(二十)
服务器安全设置(二十一)
服务器安全设置(二十二)
Windows Server 2003 虚拟主机的安全配置
Win2000 Server入侵监测
Web服务器的安全和攻击防范 (一)
Web服务器的安全和攻击防范 (二)
Web服务器的安全和攻击防范 (三)
Web服务器的安全和攻击防范 (四)
Web服务器的安全和攻击防范 (五)
安全配置和维护Apache WEB Server (上)
安全配置和维护Apache WEB Server (下)
安全性与IIS (一)
安全性与IIS (二)
安全性与IIS (三)
安全性与IIS (四)

安全防护 中的 典型DoS攻击原理及抵御措施(1)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-29   浏览: 47 ::
收藏到网摘: n/a

smurf、trinoo、tfn、tfn2k以及stacheldraht是比较常见的DoS攻击程序,本文将对它们的原理以及抵御措施进行论述,以帮助管理员有效地抵御DoS风暴攻击,维护站点安全。

  一、何为"smurf 攻击",如何抵御?

  Smurf是一种简单但有效的 DDoS 攻击技术,它利用了
ICMP (Internet控制信息协议)。ICMP在Internet上用于错误处理和传递控制信息。它的功能之一是与主机联系,通过发送一个“回音请求”(echo request)信息包看看主机是否“活着”。最普通的ping程序就使用了这个功能。Smurf是用一个偷来的帐号安装到一个计算机上的,然后用一个伪造的源地址连续ping一个或多个计算机网络,这就导致所有计算机所响应的那个计算机并不是实际发送这个信息包的那个计算机。这个伪造的源地址,实际上就是攻击的目标,它将被极大数量的响应信息量所淹没。对这个伪造信息包做出响应的计算机网络就成为攻击的不知情的同谋。

  下面是Smurf DDoS 攻击的基本特性以及建议采用的抵御策略:

  1、Smurf的攻击平台:smurf为了能工作,必须要找到攻击平台,这个平台就是:其路由器上启动了 IP广播功能。这个功能允许 smurf 发送一个伪造的ping信息包,然后将它传播到整个计算机网络中。

  2、为防止系统成为 smurf攻击的平台,要将所有路由器上IP的广播功能都禁止。一般来讲,IP广播功能并不需要。

  3、攻击者也有可能从LAN内部发动一个smurf攻击,在这种情况下,禁止路由器上的IP 广播功能就没有用了。为了避免这样一个攻击,许多操作系统都提供了相应设置,防止计算机对IP广播请求做出响应。

  4、如果攻击者要成功地利用你成为攻击平台,你的路由器必须要允许信息包以不是从你的内网中产生的源地址离开网络。配置路由器,让它将不是由你的内网中生成的信息包过滤出去,这是有可能做到的。这就是所谓的网络出口过滤器功能。


  5、ISP则应使用网络入口过滤器,以丢掉那些不是来自一个已知范围内IP地址的信息包。

  6、挫败一个smurf 攻击的最简单方法对边界路由器的回音应答(echo reply)信息包进行过滤,然后丢弃它们,这样就能阻止“命中”Web服务器和内网。对于那些使用Cisco路由器的人,另一个选择是CAR (Committed Access Rate,承诺访问速率)。

  丢弃所有的回音应答信息包能使网络避免被淹没,但是它不能防止来自上游供应者通道的交通堵塞。如果你成为了攻击的目标,就要请求ISP对回音应答信息包进行过滤并丢弃。 如果不想完全禁止回音应答,那么可以有选择地丢弃那些指向你的公用Web 服务器的回音应答信息包。CAR 技术由Cisco 开发,它能够规定出各种信息包类型使用的带宽的最大值。例如,使用CAR,我们就可以精确地规定回音应答信息包所使用的带宽的最大值。

  二、何为 "trinoo",如何抵御它?

  trinoo 是复杂的 DDoS 攻击程序,它使用“master”程序对实际实施攻击的任何数量的“代理”程序实现自动控制。攻击者连接到安装了master程序的计算机,启动master程序,然后根据一个IP地址的列表,由master程序负责启动所有的代理程序。接着,代理程序用UDP 信息包冲击网络,从而攻击目标。在攻击之前,侵入者为了安装软件,已经控制了装有master程序的计算机和所有装有代理程序的计算机。

  下面是trinoo DDoS 攻击的基本特性以及建议采用的抵御策略:

  1、在master程序与代理程序的所有通讯中,trinoo都使用了UDP协议。入侵检测软件能够寻找使用UDP协议的数据流(类型17)。

  2、Trinoo master程序的监听端口是27655,攻击者一般借助telnet通过TCP连接到master程序所在计算机。入侵检测软件能够搜索到使用TCP (类型6)并连接到端口27655的数据流。

  3、所有从master程序到代理程序的通讯都包含字符串"l44",并且被引导到代理的UDP 端口27444。入侵检测软件检查到UDP 端口27444的连接,如果有包含字符串l44的信息包被发送过去,那么接受这个信息包的计算机可能就是DDoS代理。

  4、Master和代理之间通讯受到口令的保护,但是口令不是以加密格式发送的,因此它可以被“嗅探”到并被检测出来。使用这个口令以及来自Dave Dittrich的trinot脚本,要准确地验证出trinoo代理的存在是很可能的。

  一旦一个代理被准确地识别出来,trinoo网络就可以安装如下步骤被拆除:

  ·在代理daemon上使用"strings"命令,将master的IP地址暴露出来。
  ·与所有作为trinoo master的机器管理者联系,通知它们这一事件。
  ·在master计算机上,识别含有代理IP地址列表的文件(默认名"..."),得到这些计算机的IP地址列表。
  ·向代理发送一个伪造"trinoo"命令来禁止代理。通过crontab 文件(在UNIX系统中)的一个条目,代理可以有规律地重新启动, 因此,代理计算机需要一遍一遍地被关闭,直到代理系