SYN FLOOD攻击防范

概述

说起SYN FLOOD的攻击主要的攻击原理就是让服务器创建多个半连接由此来使得服务器的资源被消耗殆尽。下面是华为防火墙的三个主要防护手段:

1、TCP代理

TCP代理的核心思想就是代表服务器去建立TCP的半连接,与防火墙充当SSL的解密中间人类似,它主要是充当一个TCP的中间人的角色,当有TCP连接的时候先和FW进行TCP的三次握手,若客户端可以正常的完成三次握手,那么FW就代替客户端与内部服务器进行TCP的三次握手,其实整个流程下来总共完成了两次的TCP握手,于是后续的关于该TCP会话的流量就直接送到服务器上。虽然TCP代理可以再一定程度上保护服务器,但是这个防范方式其实和增加服务器的性能并没有什么区别,当流量一样比较巨大的时候,大到可以讲FW冲垮,那么其实并没有什么软用。

2、TCP源认证

这是TCP代理的升级版,如果仅仅是使用FW做TCP代理,那么当会话达到一定程度后,FW每次都要进行TCP连接的建立请求,而且防火墙还要承载多个半连接的工作,那么毫无疑问,这个TCP代理是一个很呆的做法。而TCP源认证比起TCP大力来说,会较好一些。防火墙收到一个TCP的SYN报文后,会主动向源地址发送错误的SYN-ACK,那么毫无疑问如果是真实的客户端一定会会送RST报文,表示将本次不正常的TCP连接断开,而虚假的客户端将不会做出任何的响应。当客户端做出了响应后,FW将认为这个客户端是正常的,后续将不会再针对这个IP地址做SYN FLOOD的防御。虽然这样子看起来还不错,但是DDOS攻击的源一般都是变化的,那么这就会使得FW仍然要向这些变化的源地址发送SYN-ACK报文,那么可能对于攻击者来说这只是一些恶意流量,但是对于FW来说,消耗的都是自己赤裸裸的性能,当然当流量达到一定程度后毫无疑问会导致性能的下降。

首包丢弃

首包丢弃指的是FW在接收到SYN报文的时候直接将SYN报文丢弃,如果是正常的客户端那么它就会进行TCP的重传,FW会对其进行记录,如果进行了正常重传,那么就说明这个客户端时一个正常的客户端。虽然这么做可以减少FW的工作量,其实从本质上来说的话,这样的操作其实是将工作量分散到客户端上。那么FW如何判断其是否为首包?FW会记录任何三元组的信息,如果FW中没有某个接收到的三元组的信息,那么就说明这个数据包是首包,同时FW会计算报文进入FW的时间,如果某个报文进入FW后它的时间和上一个相同的报文进入FW的时间是小于一段时间的,那么就说明是重传,如果大于某段时间,那么就说明是首包。

但是到目前为止还是存在一些问题,因为很有可能开启了这个功能后会导致TCP报文的重传率的增加,所以当重传率达到一定程度后就会使用TCP源认证。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mllllk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值