防止成为Smurf攻击的牺牲品或扩散器.docxVIP

  • 2
  • 0
  • 约2.71千字
  • 约 3页
  • 2024-03-02 发布于上海
  • 举报

防止成为Smurf攻击的牺牲品或扩散器.docx

基于互联网控制信息包(ICMP)的Smurf攻击是一种强力的拒绝服务攻击方法,主要利用的是IP协议的直接广播特性。Smurf攻击对被攻击的网络,以及被利用来做扩散器的网络都具有破坏性。在这种拒绝服务攻击中,主要的角色有:

黑客

中间代理(也就是所说的扩散器)牺牲品(目标主机)

在这篇文章中,我们将讨论一下Smurf攻击是如何发起的,还介绍一些如何防止自己的网络被攻击或者被利用做为Smurf攻击的中间代理的方法。

Smurf攻击的过程

Smurf攻击并不十分可怕;它仅仅是利用IP路由漏洞的攻击方法。攻击通常分为以下五步:

黑客锁定一个被攻击的主机(通常是一些Web服务器);

黑客寻找可做为中间代理的站点,用来对攻击实施放大(通常会选择多个,以便更好地隐藏自己,伪装攻击);

黑客给中间代理站点的广播地址发送大量的ICMP包(主要是指Ping命令的回应包)。这些数据包全都以被攻击的主机的IP地址做为IP包的源地址;

中间代理向其所在的子网上的所有主机发送源IP地址欺骗的数据包;中间代理主机对被攻击的网络进行响应。

这时你可能会问,“一个小小的Ping包是如何使一个网站瘫痪的?”。在这儿举例解释一下。假设黑客拥有调制解调器,或者其它的能快速上网方式,能以1Mbps的速度向中间代理机器发送ICMP数据包;再假设中间代理站点有150台主机对这些ICMP包做出了反应。这样,一下子就有150Mbps的攻击数据从中间代理拥向被攻击的主机。黑客可以控制这个过程直到他自己连接到中间代理机器上,并且控制中间代理持续向被攻击主机发送ICMP包。

防止你的网络遭受Smurf攻击

首先,千万不能让你的网络里的人发起这样的攻击。在Smurf攻击中,有大量的源欺骗的IP数据包离开了第一个网络。

通过在路由器上使用输出过滤,你就可以滤掉这样的包,从而阻止从你的网络中发起的

Smurf攻击。在路由器上增加这类过滤规则的命令是:

Access-list100permitIP{你的网络号}{你的网络子网掩码}anyAccess-list100denyIPanyany

在你局域网的边界路由器上使用这一访问列表的过滤规则,就可以阻止你的网络上的任何人向局域网外发送这种源欺骗的IP数据包。

其次,停止你的网络做为中间代理。如果没有必须要向外发送广播数据包的情况,就可以在路由器的每个接口上设置禁止直接广播,命令如下:

noipdirected-broadcast

还有,如果你的网络比较大,具有多个路由器,那么可以在边界路由器上使用以下命令:

ipverifyunicastreverse-path

让路由器对具有相反路径的ICMP欺骗数据包进行校验,丢弃那些没有路径存在的包。最好是运行Cisco快速转发(CiscoExpressForwarding,CEF),或者其它相应的软件。这是因为在路由器的CEF表中,列出了该数据包所到达网络接口的所有路由项,如果没有该数据包源IP地址的路由,路由器将丢弃该数据包。例如,路由器接收到一个源IP地址为

1.2.3.4的数据包,如果CEF路由表中没有为IP地址1.2.3.4提供任何路由(即反向数据包

传输时所需的路由),则路由器会丢弃它。

如果你的主机不幸成为了Smurf攻击的目标,在这儿可以找到很多种方法来限制这种拒绝服务攻击造成的影响。在最近新进修改的CiscoIOS操作系统中,被访问列表所拒绝的数据包直接就被丢弃(其丢弃速度几乎接近于硬件速度)。不过每秒钟每个列表行有两个数据包例外,这就是向中间代理回送ICMP不可达消息的数据包。因此,如果你不想做为别人Ping的目标,那么在边界路由器上就直接可以阻塞掉。激活这个列表的命令是:

ipicmprate-limitunreachable

如果必须允许Ping命令,你可以通过使用命令访问速率(CommittedAccessRate,

CAR)来限制ICMP的流量。以下列出了其它CiscoIOS的例子:configt

Access-list100permiticmpany{你的网络号}{你的网络子网掩码}echo-reply

Access-list100permiticmpany{你的网络号}{你的网络子网掩码}echoInterfacee1

Rate-limitinputaccess-group10051200080008000conformactiontransmitexceedactiondrop

这个例子限制ICMP的传输

文档评论(0)

1亿VIP精品文档

相关文档