zoukankan      html  css  js  c++  java
  • SYN-flood攻击

    原理:当TCP三次握手进行第一次握手时,客户端向服务端发送SYN请求报文,第二次握手服务端会返回一个SYN+ACK的一个确认报文,syn-flood攻击就发生在第三次握手,当客户端不去回应服务端的SYN+ACK报文时,此时TCP是处于半开放状态的,如果此时客户端一直给服务端发送SYN请求报文,却不去回应服务端发来的SYN+ACK报文,这将会占用服务端所有系统资源,使其不能接收其他任何请求。如下图:

    检测攻击:查看TCP连接状态是否有异常连接状态,

    防御:

    1)使用SYNCookie防火墙

    syn cookie:当客户端给服务端发送SYN报文时,服务端会返回一个SYN+ACK ,但是这个ACK是由源地址,端口源次序,目标地址,目标端口以及一个加密种子计算而得出的一个ACK,服务端发送完SYN+ACK确认报文时,就会释放所有状态,这样就不用占用系统资源了,当客户端发送ACK报文给服务端时,服务端会重新计算这个ACK,判断它是不是上个SYN+ACK的返回包。

    syn cookie防火墙:syncookie防火墙充当了一个中间人的角色,当客户端发送syn请求时,syncookie防火墙就是服务端,给客户端发送syn+ack确认报文,如果防火墙收到了syn+ack的返回包,它就会再次充当客户端的角色,给服务端发送syn请求报文,建立三次握手。如果两边都成功了,防火墙就会转发两边的数据,让客户端和服务端建立三次握手。

    2)加固TCP/IP协议栈防范

  • 相关阅读:
    Linux常用命令
    PHP中的 extends与implements 区别
    IDEA链接MongoDB数据库-实现增删改查
    在IDEA中用三个jar包链接MongoDB数据库——实现增删改查
    MongoDB修改账号密码
    进入 MongoDB
    MongoDB安装
    解决{"error_code":110,"error_msg":"Access token invalid or no longer valid"}
    毕设进度(10.29)
    毕设进度(10.28)
  • 原文地址:https://www.cnblogs.com/xiaoqiyue/p/10684142.html
Copyright © 2011-2022 走看看