cisco路由器上的几种安全防御措施
现在Internet上基于网络层上的黑客攻击越来越普遍,成为网络安全的一大隐患。其实,路由器对于这种攻击也并非完全无能为力,这里就简单介绍几种在Cisco路由器上所能实现的防御手段:
1.对于D.O.S Attack的防范
D.O.S攻击(Deny Of Service)基于TCP协议上三次握手机制进行的攻击手段。TCP协议是面向用户的可靠传输协议,即:在实际传输数据之前,先由发起方(用户)发出一个请求,接受方(服务器)接到这个请求之后,向发起方发出一个确认请求,收到发起方进一步确认之后,才开始实际的数据传输。D.O.S Attack根据这一机制,由黑客通过软件的方法修改自己的源IP地址,向某一服务器发出请求。当服务器向该IP地址发出确认请求之后,由于这个地址是假冒的,所以永远都得不到第三次的请求确认,于是这个中断就被挂起。当黑客在短时间内发起成千上万个这样的请求之后,所有网络资源很快就会被耗尽。同时,所有正常的服务请求也没有资源可以做出应答,造成网络瘫痪。
在Cisco路由器上,通过几种方式进行侦测、避免:
一、启用service tcp-keepalive-in和schedule process-watchdog terminate。目的是:建立看门狗进程,检查已建立的tcp连接,假如发生不激活或者长时间挂起的情况,中断这样的连接。
二、当发现路由器上已经发生异常情况以后,no ip source-route,关闭对于源ip地址的路由检查,避免不必要的资源占用。(请注重,假如在正常情况下,就关闭源路由跟踪的话,轻易受到IP电子欺诈。)同时,开启schedule interval xxx(毫秒)。这样就可以硬性指定,为同一个端口中断提供服务时必须间隔一段时间。保证在这个间隔内可以为其他请求提供服务,使网络不至于完全瘫痪。
2.反IP地址欺骗
很多网络攻击依靠于攻击者伪造或者“欺骗”IP数据包的源地址。假如能够在任何可行的地方组织欺骗是有很价值的。这里可以考虑使用访问控制列表的方法,做法有很多种,但是目的是简单的,丢弃那些明显不属于这个接口来源的IP数据包。还有一种可能更加有效的方法,就是用RPF检查。前提是必须是路由对称的情况下(就是A-B的路径必须也是B-A的路径),而且必须支持CEF转发以及相对应的IOS版本支持。它是通过ip verify unicast rpf来启用的,但是之前必须先启用ip cef。
3.关闭广域网上一些不必要的服务
在Cisco路由器上,有很多服务广域网上根本不必要,但是仍然默认开启,反而造成了安全漏洞,给黑客以可乘之机。所以建议予以手工关闭。
例如:利用访问控制列表(acl)只开启实际使用的tcp、udp端口。同时,执行no service tcp-small-servers, no service udp-small-servers。这些tcp、udp协议上小服务,平时不常使用,但是这些端口轻易被人利用,所以应该关闭。 No ip finger,finger协议主要在unix下使用,类似于Cisco IOS中的show user,假如开启轻易被黑客看到连接用户,进一步猜测弱密码,进行合法登陆。假如需要防范密码猜测的风险,在路由器上就应该首先把这个服务关闭。
在拨号线路上,一般都采用transport input none,关闭诸如telnet、rlogin等易受攻击的后台程序。
4.No ip direct-broadcast
Ping of death攻击据说最早源于俄罗斯,就是通过许多用户同时对同一目的进行ping,造成flood攻击的效果。但是在实战上效果并不明显。因为在flood的同时,攻击方也必须付出同样的资源。因此,有人对这种攻击手段进行了优化。攻击的目的端从某一特定的ip地址,转换成了类如192.10.6.255这样一个网段广播地址。使这个网段内所有的机器都对这样的请求做出应答,从而达到事半功倍的效果。
对应手段为:在路由器广域网接口no ip direct-broadcast,这样除了隔离255.255.255.255的全广播以外,对于类似192.10.6.255网段广播地址也予以隔离,可以大大减少了被flood攻击的风险,也能减少主干线路上不必要的流量。或者,在完成网络上的连通性测试(ping测试)之后,利用访问控制列表,关闭ICMP协议中的echo和echo reply。
当然,路由器究竟不是专门的网络安全设备,它所能做的也仅仅能够减少一些基于网络层上的攻击所带来的负面影响,但绝不能完全免疫。而且,在实现上述功能的同时,也是以牺牲部分CPU与内存资源为代价的。此外,它对于一些诸如登陆攻击、所有基于应用层上的攻击手段等则完全无能为力。假如发生这样的问题,还是必须要借助防火墙等专门的安全设备和在系统上进行严格设置等手段配合进行。