服务器遭受大量ACK攻击如何解决

来源:百度知道 编辑:UC知道 时间:2024/05/26 08:07:40
我自己开SF的 网站服务器整天给人用 ACK攻击 部分地区点 网站点不开 整天是这样。 有什么好方法能防御吗。 帮我解决掉我追加 100分。谢谢大家帮下 加急!!

拒绝服务攻击(Denial of Service,DoS)是目前比较有效而又非常难于防御的一种网络攻击方式,它的目的就是使服务器不能够为正常访问的用户提供服务。所以,DoS对一些紧密依靠互联网开展业务的企业和组织带来了致命的威胁。

  SYN Flood是最为有效和流行的一种DoS攻击形式。它利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的资源,从而不能够为正常用户提供服务。

  1.1 TCP连接建立的过程

  要掌握SYN Flood攻击的基本原理,必须先介绍TCP的三次握手机制。
  TCP三次握手过程如下:
  1)客户端向服务器端发送一个SYN置位的TCP报文,包含客户端使用的端口号和初始序列号x;
  2)服务器端收到客户端发送来的SYN报文后,向客户端发送一个SYN和ACK都置位的TCP报文,包含确认号为x+1和服务器的初始序列号y;
  3)

  TCP客户端
  客户端端口
  (1024-65535)

  TCP服务器端

  服务器端口
  (1-1023)
  SYN
  SYN/ACK
  ACK

  客户端收到服务器返回的SYN+ACK报文后,向服务器返回一个确认号为y+1序号为x+1的ACK报文,一个标准的TCP连接完成。如图1所示:

  1.2 攻击原理

  在SYN Flood攻击中,黑客机器向受害主机发送大量伪造源地址的TCP SYN报文,受害主机分配必要的资源,然后向源地址返回SYN+ACK包,并等待源端返回ACK包,如图2所示。由于源地址是伪造的,所以源端永远都不会返回ACK报文,受害主机继续发送SYN+ACK包,并将半连接放入端口的积压队列中,虽然一般的主机都有超时机制和默认的重传次数,但是由于端口的半连接队列的长度是有限的,如果不断的向受害主机发送大量的TCP SYN报文,半连接队列就会很快填满,服务器拒绝新的连接,将导致该端口无法响应其他机器进行的连接请求,最终使受害主机的资源耗尽