网络安全 频道

安全攻尖:遭遇TCP SYN攻击

  一、通过防火墙代理限制其对服务器的影响

  通常情况下,出于安全的考虑,我们会把服务器放在防火墙的一侧。在建立TCP连接时,通过防火墙实现代理。TCP代理相当于客户端和目的服务器间的中间服务器。当某个客户端要访问服务器的资源时,这个客户端不是直接连接到服务器,而是先连接到防火墙这个代理服务器上,然后这个代理服务器再替客户端去访问服务器。代理服务器把从服务器中反馈回来的信息转发给客户端。所以,从某个角度上来讲,防火墙代理服务器对于服务器来说,是一个客户端,但是,对于真正的客户端来说,又是一合格服务器。防火墙可以检查传入的TCP连接请求,然后执行TCP代理的功能。如果防火墙判断传入的连接请求时伪造的话,则防火墙就可以采取一定的措施来防止它对防火墙一侧服务器的影响。

  如笔者企业现在有一个ERP应用服务,其为全国各地的销售办事处提供数据上的支持。若这个服务器瘫痪的话,则全国各地的销售业务都会受到不同程度的影响。如商品的调拨等等将无法完成。由于存在大量的网外用户,笔者很难保证全国各地的用户主机都是安全的。本着安全至上的原则,就在ERP应用服务器与互联网之间设置了防火墙,并启用了防火墙代理功能,来限制SYN的攻击。

  1、当互联网上的某个客户端需要访问ERP服务器时,会先发起一个TCP连接。此时,客户端不是直接与ERP服务器进行通信,而是跟防火墙代理服务器进行通信。如此的话,就可以隐藏ERP服务器的真实地址,从而防止外部不良人员对ERP服务器进行攻击。

  2、防火墙代理接收到客户端的SYN连接请求时,就会把这个请求转发给内部的ERP服务器。此时,防火墙代理就充当了客户端的角色。当防火墙代理取得用户想要的信息之后,就会把这个信息反馈给客户端。此时,防火墙代理充当了ERP服务器的角色。

  可见有了防火墙代理,客户端与ERP服务器之间就不会直接进行通信。不过光凭如此设置,还是不能够有效避免SYN攻击。还需要进行另外的一些设置。

  如笔者在企业中,是通过防火墙的TCP定时器参数来过滤伪造的TCP连接请求。如果防火墙代理遇到伪造的连接请求,则防火墙通常也利用参数来设置半开放连接中的主动超时时间;防火墙代理也会采用参数来设置特殊连接和TCP连接请求传入速率的指标。不过在更改这个参数的时候,需要注意,要根据企业网络的实际情况进行设置。如果调整的比较短的话,则如果客户采用的是慢速链路,则他们的连接就可能会超时。

  如可以利用如下的命令来达到限制SYN攻击的目的。

  Ip tcp intercept access-list-number

  Ip tcp intercept mode watch

  这两条命令主要起到如下作用:

  一是记录最近一分钟内,有多少会话发生。通常情况下,它包括有效的会话与无效的会话。也就是说,如果是伪造请求产生的会话,也会在这个记录中体现出来。

  二是有多少未完成的会话。通常情况下,这个未完成的会话就可能是伪造请求所产生的会话。当企业网络发生拥塞时,查看这个未完成的会话时,往往可以取得比较有用的信息。网络管理员可以凭借这个信息判断是否是由于SYN攻击所造成的网络拥塞,了解网络性能下降的原因。

  三是最终的确认等待了多久。我们都知道,SYN攻击其主要的手段就是通过伪造地址,让服务器疲与去跟源地址进行确认。若源地址迟迟没有回应的话,则服务器或者网络设备会不断的重发确认信息,直到超过一个延迟的时间。所以,通过“最终的确认等待了多久”这个参数,也可以发现网络中是否存在着 SYN攻击。

0
相关文章