攻击防御方法及装置与流程

文档序号:37439038发布日期:2024-03-28 18:22阅读:7来源:国知局
攻击防御方法及装置与流程

本技术涉及网络,特别涉及一种攻击防御方法及装置。


背景技术:

1、拒绝服务(denial of service,dos)攻击是一种网络攻击手段。dos攻击的原理是攻击者(也被称为黑客)控制受控计算机向攻击目标发送大量报文,使得攻击目标忙于处理来自攻击者的报文,从而耗尽攻击目标的计算资源、网络资源等系统资源,导致攻击目标无法响应来自正常用户的服务请求。当攻击者使用网络中两个或两个以上受控计算机发动dos攻击时,这种攻击方式被称为分布式拒绝服务(distributed denial of service,ddos)攻击。

2、传输控制协议(transmission control protocol,tcp)泛洪(tcp flood)攻击是一种基于tcp流量的ddos攻击。tcp flood攻击通常指攻击者在三次握手后利用重复的tcp报文、随机载荷的tcp报文或者tcp回放流量攻击受害主机。其中,攻击者利用tcp回放流量攻击受害主机,比如是,攻击者将用于传输超大文件的tcp流量进行抓包,然后将抓包后的tcp流量发送给受害主机。

3、序列号(sequence number)检查技术是目前防护设备常用的一种tcp flood攻击防御技术。客户端与受保护设备完成三次握手后,客户端与受保护设备之间建立了tcp连接。序列号检查技术的原理是:客户端与受保护设备之间的防护设备记录通过该tcp连接依次传输的tcp报文的序列号和数据长度,以此判断这些依次传输的tcp报文所携带的数据段是否连续。如果防护设备接收到的后一个tcp报文所携带的数据段与前一个tcp报文所携带的数据段不连续,则防护设备针对该tcp连接记录一次传输错误。在该tcp连接上的传输错误次数超过一定数量时,防护设备判定通过该tcp连接传输的tcp流量为攻击流量。

4、但是,如果攻击者使用tcp回放流量进行攻击,那么攻击流量中的序列号和数据长度大概率都是正确的,这种情况下防护设备采用序列号检查技术也就无法识别出攻击流量。因此,序列号检查技术的使用局限性较高,对tcp攻击流量的防御可靠性较低。


技术实现思路

1、本技术提供了一种攻击防御方法及装置,有助于缓解目前对tcp攻击流量的防御可靠性较低的问题。

2、第一方面,提供了一种攻击防御方法。该方法包括:防护设备接收主机发送的第一tcp报文。第一tcp报文的目的地址为受保护设备的互联网协议(internet protocol,ip)地址。第一tcp报文是该主机与受保护设备建立tcp连接之后通过该tcp连接发送的。防护设备向该主机发送重传指示报文。该重传指示报文用于指示该主机重传第一tcp报文。如果防护设备未接收到来自该主机的第二tcp报文,则防护设备阻断该主机通过该tcp连接发送的tcp报文。其中,第二tcp报文为重传的第一tcp报文。

3、本技术中,主机指安装有客户端的计算机设备,主机上安装的客户端能够通过tcp向服务器请求服务。受保护设备通过tcp向主机上安装的客户端提供服务。对于正常客户端而言,如果正常客户端接收到用于指示重传tcp报文的重传指示报文,那么正常客户端会响应该重传指示报文并重新发送该重传指示报文所指示重传的tcp报文。而对于攻击者而言,由于攻击者通常只会控制主机向受保护设备发送tcp报文,因此不会响应重传指示报文。基于此,防护设备能够通过是否接收到重传指示报文所指示重传的tcp报文,来判断用于传输该tcp报文的tcp连接上的tcp流量为正常流量还是攻击流量。防护设备实现了对tcp流量的有效识别,进而能够阻断攻击流量并放行正常流量,既能有效防御攻击,又能保证正常业务的运行,同时提高了对tcp攻击流量的防御可靠性以及正常业务的运行可靠性。

4、可选地,重传指示报文为选择性确认(selective acknowledgment,sack)报文,sack报文的源地址为受保护设备的ip地址,sack报文指示第一tcp报文载荷部分的数据丢失。

5、本技术中,防护设备能够基于现有的tcp重传机制,模仿受保护设备向主机发送sack报文。如果主机通过正常客户端访问受保护设备,那么主机上的正常客户端能够基于该sack报文的指示知晓自身向受保护设备发送的tcp报文传输失败,此时主机会向受保护设备重传该sack报文所指示的tcp报文。如果主机受攻击者控制,那么主机不会响应该sack报文。这种实现方式下,客户端只需按照现有的tcp重传机制响应sack报文,在实现防护设备对tcp攻击流量有效防御的同时,无需对客户端进行改进,实现简单。另外,由于sack报文的源地址为受保护设备的ip地址,对于客户端而言,只能感知到该sack报文是由受保护设备发送的,客户端对防护设备执行的攻击防御流程是无感知的,因此能够提升用户体验。

6、可选地,在防护设备向主机发送重传指示报文之前,防护设备获取主机在与受保护设备建立tcp连接的过程中向受保护设备发送的同步序列编号(synchronize sequencenumbers,syn)报文。防护设备根据syn报文中的sack选项确定主机支持sack功能,其中sack选项声明支持sack功能。

7、可选地,如果防护设备未接收到第二tcp报文,则防护设备阻断主机发送的后续tcp报文,也即是,防护设备阻断源地址与第一tcp报文的源地址相同的所有tcp报文。这种实现方式可理解为,防护设备基于源地址对tcp流量进行攻击防御。

8、本技术中,防护设备能够对来自同一源地址的tcp流量进行攻击防御,实现针对tcp流量粗粒度地攻击防御。由于攻击者通常会使用虚假的源ip地址来攻击受保护设备,因此防护设备识别到来自一个源ip地址的攻击流量之后,可将后续来自该源ip地址的所有tcp流量均识别为攻击流量,这样能够提高防护效率。

9、可选地,如果防护设备未接收到来自主机的第二tcp报文,则防护设备阻断该主机通过tcp连接发送的tcp报文的实现方式,包括:如果防护设备在发送重传指示报文之后的目标时长内未接收到第二tcp报文,则防护设备阻断该主机通过该tcp连接发送的后续tcp报文。或者,如果防护设备在发送重传指示报文之后接收到的预设数量的报文中不包含第二tcp报文,则防护设备阻断该主机通过该tcp连接发送的后续tcp报文。

10、本技术中,防护设备在向主机发送重传指示报文之后,如果间隔一定时长或是若干个后续报文后,未能接收到该主机重传的tcp报文,则防护设备判定该主机用于传输该tcp报文的tcp连接上的tcp流量为攻击流量,并阻断该主机通过该tcp连接发送的tcp报文。

11、可选地,防护设备在等待接收第二tcp报文的时长内,向受保护设备转发主机通过tcp连接发送的第一tcp报文的后续tcp报文。

12、本技术中,防护设备在等待重传的tcp报文期间,仍然向受保护设备正常转发tcp报文,以使得在该tcp报文的发送方是正常客户端的情况下,保证正常客户端能够正常运行业务。

13、可选地,如果防护设备接收到来自主机的第二tcp报文,则防护设备向受保护设备转发该主机通过tcp连接发送的后续tcp报文。

14、可选地,如果防护设备接收到来自主机的第二tcp报文,则防护设备转发该主机发送的后续tcp报文,也即是,防护设备正常转发源地址与第一tcp报文的源地址相同的所有tcp报文。这种实现方式可理解为,防护设备基于源地址对tcp流量进行攻击防御。

15、由于攻击者通常会使用虚假的源ip地址来攻击受保护设备,因此若防护设备识别到来自一个源ip地址的正常流量,那么说明该源ip地址非攻击源地址,进而防护设备可将后续来自该源ip地址的所有tcp流量均识别为正常流量,这样能够减小防护设备的防护开销。

16、可选地,在防护设备接收到第二tcp报文之后,防护设备丢弃第二tcp报文。

17、本技术中,防护设备通过重传指示报文指示主机重传的tcp报文一般只用于防护设备判断该tcp报文属于正常流量或攻击流量,防护设备会将第一次接收到的该tcp报文转发给受保护设备,后续无需向受保护设备再转发一次重传的tcp报文,以减少对受保护设备的资源的占用。

18、可选地,在防护设备基于五元组信息对tcp流量进行攻击防御的情况下,防护设备中存储有五元组信息集合,该五元组信息集合包括攻击流量的五元组信息和正常流量的五元组信息。防护设备向主机发送重传指示报文的一种实现方式,包括:响应于第一tcp报文的五元组信息不属于五元组信息集合,防护设备向主机发送重传指示报文。

19、这种实现方式下,如果第一tcp报文的五元组信息与五元组信息集合中一条攻击流量的五元组信息相同,即第一tcp报文属于攻击流量,则防护设备阻断第一tcp报文的传输。如果第一tcp报文的五元组信息与五元组信息集合中一条正常流量的五元组信息相同,即第一tcp报文属于正常流量,则防护设备向受保护设备转发第一tcp报文。

20、可选地,在防护设备基于源地址对tcp流量进行攻击防御的情况下,防护设备中存储有源地址集合。源地址集合包括攻击源地址和正常源地址。防护设备向主机发送重传指示报文的另一种实现方式,包括:响应于第一tcp报文的源地址不属于源地址集合,防护设备向主机发送重传指示报文。

21、这种实现方式下,如果第一tcp报文的源地址属于源地址集合中的攻击源地址,则防护设备阻断第一tcp报文的传输。如果第一tcp报文的源地址属于源地址集合中的正常源地址,则防护设备向受保护设备转发第一tcp报文。

22、可选地,在防护设备向主机发送重传指示报文之前,防护设备确定受保护设备受到tcp流量攻击。

23、本技术中,当受保护设备受到tcp流量攻击时,防护设备向主机发送重传指示报文,以启动攻击防御流程。当受保护设备未受到流量攻击时,防护设备不向主机发送重传指示报文,即不启动攻击防御流程。这样既能够对受保护设备进行有效防护,又能尽量降低防护设备的处理开销。

24、第二方面,提供了一种防护设备。所述防护设备包括多个功能模块,所述多个功能模块相互作用,实现上述第一方面及其各实施方式中的方法。所述多个功能模块可以基于软件、硬件或软件和硬件的结合实现,且所述多个功能模块可以基于具体实现进行任意组合或分割。

25、第三方面,提供了一种防护设备,包括:存储器、网络接口和至少一个处理器,

26、所述存储器用于存储程序指令,

27、所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述防护设备执行上述第一方面及其各实施方式中的方法。

28、第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令被处理器执行时,实现上述第一方面及其各实施方式中的方法。

29、第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现上述第一方面及其各实施方式中的方法。

30、第六方面,提供了一种芯片,芯片包括可编程逻辑电路和/或程序指令,当芯片运行时,实现上述第一方面及其各实施方式中的方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1