技术新讯 > 电子通信装置的制造及其应用技术 > 一种抵御SYNFLOOD攻击的优化方法和系统与流程  >  正文

一种抵御SYNFLOOD攻击的优化方法和系统与流程

  • 国知局
  • 2024-08-02 12:43:41

本技术涉及互联网和人工智能领域,更具体地,涉及一种抵御syn flood攻击的优化方法和系统。

背景技术:

1、syn flood攻击是一种典型的ddos攻击,终端通过发送大量的syn包,使其tcp真实服务器的半连接队列占满,从而耗尽真实服务器端口资源,使得真正的tcp请求无法正常处理,导致tcp服务不可用。

2、syn cookie技术是一种用于防范syn flood攻击的技术,基本原理是在真实服务器端实现synproxy代理,就是对tcp连接的syn响应中,携带一段特殊的cookie值,该cookie值是由真实服务器根据客户端syn报文信息加密计算出来的。客户端收到真实服务器的响应后,会将携带有cookie值的特征信息再返回给真实服务器,真实服务器如果对cookie值校验成功则建立tcp连接同时创建资源,如果校验失败则直接丢弃数据包。

3、传统的syn cookie技术基本是在真实服务器上实现,在真实服务器上会有完整的tcp协议栈,便于实现对synproxy的tcp状态管理,但是大量的流量进入真实服务器会消耗真实服务器的cpu等资源。

4、传统的syn cookie技术中,无论对于正常流量请求,还是异常的攻击请求,每一次都要做syn包的加解密和之后ack回复报文序列号seq校验,这样其实占用了真实服务器的资源,减弱了性能。

5、综上所述,有必要引入一种新的方法和系统,为真实服务器流量做负载,隔离保护真实服务器资源,并通过将syn cookie技术结合会话,对syn cookie攻击抵御技术进行优化,加快正常流量的转发,同时加快对异常流量的阻断,以解决现有技术中存在的cookie值校验频繁、资源消耗大、性能低等技术问题,从而提升抵御syn cookie攻击的效率和性能。

技术实现思路

1、针对上面提到的技术问题,本发明提供了一种抵御syn flood攻击的优化方法和系统,通过定义攻击抵御数据结构,基于所述攻击抵御数据结构创建会话信息表,并使用会话信息表和cookie值对客户端请求进行实时地判断和处理,实现对syn cookie攻击抵御技术进行优化,加快了正常流量的转发,加快了对异常流量的阻断,解决了现有技术中存在的cookie值校验频繁、资源消耗大、性能低等技术问题,从而提升抵御syn cookie攻击的效率和性能。

2、本发明提供了一种抵御syn flood攻击的优化方法,所述方法包括:

3、s1,根据网络请求处理流程,定义攻击抵御数据结构,并基于所述攻击抵御数据结构创建会话信息表;s2,通过负载均衡设备实时接收客户端请求,根据所述客户端请求获取客户端发送的同步标志报文、客户端地址和客户端端口,并基于所述攻击抵御数据结构,根据所述客户端地址和所述客户端端口从所述会话信息表中对所述客户端请求进行会话比对处理;s3,基于会话比对处理的结果,所述负载均衡设备根据所述同步标志报文生成报文回复序列号,并将所述报文回复序列号发送给所述客户端;s4,所述负载均衡设备接收并对客户端返回的确认标志报文进行校验,返回并根据校验的结果对syn flood攻击进行阻断处理,同时更新所述会话信息表;其中,在对所述客户端请求进行会话比对处理的过程中,会根据所述会话信息表中的会话数据,直接对所述客户端请求进行阻断,或者为所述客户端创建服务器访问连接。

4、优选地,所述攻击抵御数据结构,包括:报文加密序列数据、会话索引和会话数据;其中,所述会话数据包括7个字段:会话编号、会话类型、五元组数据、超时时间、报文向外发送接口、tcp访问次数和tcp阻断次数;所述会话类型包括2种,分别为:阻断会话和正常会话;所述五元组数据包括5个字段,分别为:客户端地址、客户端端口、服务器地址、服务器端口和网络协议号。

5、优选地,步骤s2中,所述基于所述攻击抵御数据结构,根据所述客户端地址和所述客户端端口从所述会话信息表中对所述客户端请求进行会话比对处理的步骤,进一步包括:s2-1,对所述客户端请求进行解析,根据解析结果获取所述客户请求对应的同步标志报文,以及所述客户端地址和所述客户端端口;s2-2,根据所述客户端地址和所述客户端端口,对所述会话信息表进行遍历,如果所述会话信息表中存在所述客户端地址和所述客户端端口,则跳转至步骤s2-3,如果所述会话信息表中不存在所述客户端地址和所述客户端端口,则跳转至步骤s2-4;s2-3,根据所述客户端地址和所述客户端端口,获取对应的会话的会话编号和会话类型,并基于所述会话的会话类型对所述客户请求进行会话处理;s2-4,根据所述客户请求对应的同步标志报文生成报文加密序列数据,根据所述报文加密序列数据生成所述报文回复序列号,并基于所述报文回复序列号向所述客户端发送第一次回复报文。

6、优选地,所述报文加密序列数据包括3个字段,分别为时间、报文加密序列数据的最大分段和散列函数值;其中,所述报文加密序列数据的长度为32bit,所述时间的长度为5bit、所述报文加密序列数据的最大分段的长度为3bit,所述散列函数的长度为24bit;所述时间为t,t为处理syn flood攻击过程中的当前时间,%表征取余数,-表征取除数;所述散列函数值根据客户端地址、客户端端口、服务器地址、服务器端口、所述时间t和所述报文加密序列数据的最大分段计算获得。

7、优选地,所述s2-3中,所述会话的会话类型对所述客户请求进行会话处理的步骤,包括:对所述会话的会话类型进行判断,并根据判断的结果对所述客户端请求进行处理:1)如果所述客户端请求对应的会话的会话类型为阻断会话,则拒绝所述客户端请求,并将所述客户端请求对应的会话的tcp阻断次数加1;2)如果所述客户端请求对应的会话的会话类型为正常会话,则获取所述客户端请求对应的会话的五元组数据,提取并使用所述五元组数据中的客户端地址、客户端端口、服务器地址、服务器端口和网络协议号,为发送所述客户端请求的客户端提供服务器访问连接和访问资源,同时将所述客户端请求对应的会话的tcp访问次数加1。

8、优选地,步骤s3还包括客户端确认报文处理的步骤,具体为:所述客户端接收第一次回复报文,并根据所述报文回复序列号从第一次回复报文中提取报文加密序列数据,并将所述报文加密序列数据的值加1,获得新的报文加密序列数据;所述客户端基于所述新的报文加密序列数据,生成并向所述负载均衡设备发送确认标志报文。

9、优选地,步骤s4中,所述负载均衡设备接收并对客户端返回的确认标志报文进行校验,返回并根据校验的结果对syn flood攻击进行阻断处理的步骤进一步包括:s411,所述负载均衡设备接收并根据所述确认标志报文生成新的报文加密序列数据,获取步骤s2-4中生成的报文加密序列数据;s412,所述负载均衡设备基于所述报文加密序列数据,对所述新的报文加密序列数据的值减去1后进行校验,如果所述新的报文加密序列数据的值减去1后,与报文加密序列数据的值相等,跳转至步骤s414,否则,跳转至步骤s413;s413,将所述客户端请求标为syn flood攻击,并创建对应的新的阻断会话,拒绝所述客户端请求,初始化所述新的阻断会话的超时时间和tcp阻断次数,并将所述新的阻断会话的会话数据更新至所述会话信息表中,其中,所述新的阻断会话的tcp阻断次数的初始值为1;s414,根据所述客户端请求对应的客户端地址、客户端端口,创建对应的新的正常会话,设置所述新的正常会话的超时时间和访问次数,根据所述新的正常会话的五元组数据生成会话索引,并将所述新的正常会话的会话数据和会话索引更新至所述会话信息表中;其中,所述会话数据包括会话编号、会话类型、五元组数据、超时时间、报文向外发送接口、tcp访问次数和tcp阻断次数;所述会话类型包括阻断会话和正常会话;所述五元组数据包括客户端地址、客户端端口、服务器地址、服务器端口和网络协议号。

10、优选地,所述s414的步骤中,在对所述新的报文加密序列数据的值减去1后进行校验通过后,还包括三次握手连接建立的步骤,具体为:1)所述负载均衡设备基于所述新的报文加密序列数据向服务器发送三次握手连接请求的报文;2)所述服务器对所述访问连接请求的报文进行解析处理后,向所述负载均衡设备返回确认信息,并提供三次握手连接的资源,包括服务器地址、服务器端口、网络协议号、访问权限、存储空间和计算资源;3)所述负载均衡设备收到所述服务器返回的确认信息,向客户端发送连接成功的报文;4)所述客户端根据所述连接成功的报文,并基于所述三次握手连接的资源发送流量访问请求。

11、优选地,在创建会话后,还包括会话清除的步骤,具体为:如果所述会话的超时时间大于当前时间,则清除所述会话,并从所述会话信息表中删除所述会话的会话索引和会话数据;如果所述会话的tcp访问次数大于预设访问次数,或者所述会话的tcp阻断次数大于预设阻断次数,则清除所述会话,并从所述会话信息表中删除所述会话的会话索引和会话数据;其中,所述预设访问次数和所述预设阻断次数均按照实际需求进行设定。

12、相应的,本发明还提供了一种抵御syn flood攻击的优化系统,所述系统包括初始化处理模块、请求预处理模块、报文回复模块和报文校验处理模块;其中,所述初始化处理模块,用于根据网络请求处理流程,定义攻击抵御数据结构,并基于所述攻击抵御数据结构创建会话信息表;所述请求预处理模块,用于通过负载均衡设备实时接收客户端请求,根据所述客户端请求获取客户端发送的同步标志报文、客户端地址和客户端端口,并基于所述攻击抵御数据结构,根据所述客户端地址和所述客户端端口从所述会话信息表中对所述客户端请求进行会话比对处理;所述报文回复模块,用于基于会话比对处理的结果,根据所述同步标志报文生成报文回复序列号,并将所述报文回复序列号发送给所述客户端;所述报文校验处理模块,用于接收并对客户端返回的确认标志报文进行校验,返回并根据校验的结果对syn flood攻击进行阻断处理,同时更新所述会话信息表;在对所述客户端请求进行会话比对处理的过程中,会根据所述会话信息表中的会话数据,直接对所述客户端请求进行阻断,或者为所述客户端创建服务器访问连接。

13、本发明通过应用以上技术方案,实现了通过定义攻击抵御数据结构,基于所述攻击抵御数据结构创建会话信息表,并使用会话信息表和cookie值对客户端请求进行实时地判断和处理,完成了对syn cookie攻击抵御技术进行优化,加快了正常流量的转发,加快了对异常流量的阻断,解决了现有技术中存在的cookie值校验频繁、资源消耗大、性能低等技术问题,从而提升抵御syn cookie攻击的效率和性能。

本文地址:https://www.jishuxx.com/zhuanli/20240802/237555.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。