您的位置:建站学院首页 >> 文章 >> 服务器 >> 安全漏洞
如何在Windows 2000中预防Ping攻击?
 在Win2000中如何关闭ICMP(Ping) ?

  ICMP的全名是Internet Control and Message Protocal即网际网路控制消息/错误报文协定,这个协定主要是用来进行错误资讯和控制资讯的传递,例如著名的Ping和Tracert工具都是利用ICMP协议中的ECHO request报文进行的(请求报文ICMP ECHO类型8代码0,应答报文ICMP ECHOREPLY
类型0代码0)。

  ICMP协议有一个特点---它是无连结的,也就是说只要发送端完成ICMP报文的封装并传递给路由器,这个报文将会象邮包一样自己去寻找目的地址,这个特点使得ICMP协议非常灵活快捷,但是同时也带来一个致命的缺陷---易伪造(邮包上的寄信人位址是可以随便写的),任何人都可以伪造一个ICMP报文并发送出去,伪造者可以利用SOCK_RAW编程直接改写报文的ICMP首部和IP首部,这样的报文携带的源位址是伪造的,在目的端根本无法追查,(攻击者不怕被抓那还不有恃无恐?)根据这个原理,外面出现了不少基于ICMP的攻击软体,有通过网路架构缺陷制造ICMP风暴的,有使用非常大的报文堵塞网路的,有利用ICMP碎片攻击消耗伺服器CPU的,甚至如果将ICMP协定用来进行通讯,可以制作出不需要任何TCP/UDP埠的木马......既然ICMP协议这么危险,我们为什么不关掉它呢?

  我们都知道,Win2000在网路属性中自带了一个TCP/IP筛检程式,我们来看看能不能通过这里关掉ICMP协议,桌面上右击网上邻居->属性->右击你要配置的网卡->属性->TCP/IP->高级->选项->TCP/IP过滤,这里有三个筛检程式,分别为:TCP埠、UDP埠和IP协议,我们先允许TCP/IP过滤,然后一个一个来配置,先是TCP埠,点击"只允许",然后在下面加上你需要开的埠,一般来说WEB伺服器只需要开80(www),FTP伺服器需要开20(FTP Data),21(FTP Control),邮件伺服器可能需要打开25(SMTP),110(POP3),以此类推......接着是UDP,UDP协定和ICMP协定一样是基于无连结的,一样容易伪造,所以如果不是必要(例如要从UDP提供DNS服务之类)应该选择全部不允许,避免受到洪水(Flood)或碎片(Fragment)攻击。最右边的一个编辑框是定义IP协议过滤的,我们选择只允许TCP协议通过,添加一个6(6是TCP在IP协议中的代码,IPPROTO_TCP=6),从道理上来说,只允许TCP协议通过时无论UDP还是ICMP都不应该能通过,可惜的是这里的IP协议过滤指的是狭义的IP协议,从架构上来说虽然ICMP协定和IGMP协定都是IP协定的附属协定,但是从网路7层结构上ICMP/IGMP协定与IP协定同属一层,所以微软在这里的IP协议过滤是不包括ICMP协议的,也就是说即使你设置了“只允许TCP协议通过”,ICMP报文仍然可以正常通过,所以如果我们要过滤ICMP协定还需要另想办法。

  刚刚在我们进行TCP/IP过滤时,还有另外一个选项:IP安全机制(IP Security),我们过滤ICMP的想法就要着落在它身上。

  打开本地安全策略,选择IP安全策略,在这里我们可以定义自己的IP安全策略。

  一个IP安全筛检程式由两个部分组成:过滤策略和过滤作,过滤策略决定哪些报文应当引起筛检程式的关注,过滤作决定筛检程式是“允许”还是“拒绝”报文的通过。要新建IP安全筛检程式,必须新建自己的过滤策略和过滤作:右击本机的IP安全策略,选择管理IP筛检程式,在IP筛检程式管理列表中建立一个新的过滤规则:ICMP_ANY_IN,源位址选任意IP,目标位址选本机,协定类型是ICMP,切换到管理筛检程式作,增加一个名为Deny的作,作类型为"阻止"(Block)。这样我们就有了一个关注所有进入ICMP报文的过滤策略和丢弃所有报文的过滤作了。需要注意的是,在位址选项中有一个镜像选择,如果选中镜像,那么将会建立一个对称的过滤策略,也就是说当你关注any IP->my IP的时候,由于镜像的作用,实际上你也同时关注了my IP->any IP,你可以根据自己的需要选择或者放弃镜像。

本内容共2页  首 页  上一页  下一页  尾 页  当前在第1

Google
 
Web www.cqxw.net