CN108512833A - 一种防范攻击方法及装置 - Google Patents

一种防范攻击方法及装置 Download PDF

Info

Publication number
CN108512833A
CN108512833A CN201810193427.6A CN201810193427A CN108512833A CN 108512833 A CN108512833 A CN 108512833A CN 201810193427 A CN201810193427 A CN 201810193427A CN 108512833 A CN108512833 A CN 108512833A
Authority
CN
China
Prior art keywords
syn
messages
opposite equip
equipment
sent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810193427.6A
Other languages
English (en)
Other versions
CN108512833B (zh
Inventor
荀硕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201810193427.6A priority Critical patent/CN108512833B/zh
Publication of CN108512833A publication Critical patent/CN108512833A/zh
Application granted granted Critical
Publication of CN108512833B publication Critical patent/CN108512833B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种防范攻击的方法及装置,所述方法应用于网络设备,可包括:在与对端设备建立TCP连接的过程中,依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息;将确定出的所述报文特征信息保存在优先处理列表中;当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYN ACK报文,成功与所述对端设备建立TCP连接。使用本申请提供的方法,可以实现双方设备之间建立TCP连接不受阻。

Description

一种防范攻击方法及装置
技术领域
本申请涉及计算机通信领域,尤其涉及一种防范攻击方法及装置。
背景技术
通常,BGP(Border Gateway Protocol,边界网关协议)邻居关系的建立过程可以包括:本设备与对端设备先建立TCP(Transmission Control Protocol传输控制协议)连接,然后,本设备和对端设备可通过该TCP连接发送BGP邻居建立消息,以建立本设备与对端设备的BGP邻居关系。
然而,由于BGP邻居关系的建立使用了TCP的传输方式,因此也会引入一些基于TCP传输的问题,例如,TCP SYN FLOOD(一种拒绝服务攻击或者分布式拒绝服务攻击方式之一)攻击。
TCP SYN FLOOD攻击的特点是通过大量发送SYN报文来消耗大量的设备资源,以使得该设备没有足够的资源去响应正常对端设备的TCP请求。
例如,假设本设备受到了TCP SYN FLOOD攻击,此时本设备会收到大量的攻击设备发送的SYN(synchronize,同步)报文,通常CPU(Central Processing Unit,中央处理器)所能处理的流量是有限的,当本设备接收到的流量超过该CPU所能处理的流量阈值时,本设备就不会将超过该流量阈值的那部分流量上送CPU。由于攻击设备发送的SYN报文流量远远大于对端设备发送的正常的SYN报文流量,致使本设备很容易将对端设备发送的正常SYN报文丢弃,致使本设备与对端设备建立正常的TCP连接受阻。
发明内容
有鉴于此,本申请提供一种防范攻击的方法,用以实现双方设备之间建立TCP连接不受阻。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提供一种防范攻击的方法,所述方法应用于网络设备,所述方法包括:
在与对端设备建立TCP连接的过程中,依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息;
将确定出的所述报文特征信息保存在优先处理列表中;
当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYN ACK报文,成功与所述对端设备建立TCP连接。
可选的,所述方法还包括:
当接收到断开本设备与所述对端设备TCP连接的TCP报文时,在所述优先处理列表中,删除与该TCP报文的报文特征信息匹配的表项。
可选的,所述报文特征信息包括五元组信息;
依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息,包括:
将本设备向对端设备发送的SYN报文的源IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的IP地址;
将本设备向对端设备发送的SYN报文的目的IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源IP地址;
将本设备向对端设备发送的SYN报文的源端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的端口;
将本设备向对端设备发送的SYN报文的目的端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源端口;
将本设备向对端设备发送的SYN报文的传输层协议号,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的传输层协议号。
可选的,所述报文特征信息包括五元组信息;
所述将确定出的所述报文特征信息保存在优先处理列表中,包括:
将确定出的所述SYN ACK报文的目的IP地址、源IP地址、目的端口号、源端口号和传输层协议号保存在优先处理列表。
根据本申请的第二方面,提供一种防范攻击的装置,所述装置应用于网络设备,所述装置包括:
确定单元,用于在与对端设备建立TCP连接的过程中,依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息;
保存单元,用于将确定出的所述报文特征信息保存在优先处理列表中;
处理单元,用于当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYN ACK报文,成功与所述对端设备建立TCP连接。
可选的,所述装置还包括:
删除单元,用于当接收到断开本设备与所述对端设备TCP连接的TCP报文时,在所述优先处理列表中,删除与该TCP报文的报文特征信息匹配的表项。
可选的,所述报文特征信息包括五元组信息;
所述确定单元,具体用于将本设备向对端设备发送的SYN报文的源IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的IP地址;将本设备向对端设备发送的SYN报文的目的IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYNACK报文的源IP地址;将本设备向对端设备发送的SYN报文的源端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的端口;将本设备向对端设备发送的SYN报文的目的端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源端口;将本设备向对端设备发送的SYN报文的传输层协议号,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的传输层协议号。
可选的,所述报文特征信息包括五元组信息;
所述保存单元,具体用于将确定出的所述SYN ACK报文的目的IP地址、源IP地址、目的端口号、源端口号和传输层协议号保存在优先处理列表。
根据本申请的第三方面,提供一种网络设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使执行如权利要求1至4任一项所述方法。
根据本申请的第四方面,提供一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器执行如权利要求1至4任一项所述方法。
本申请提供一种防范攻击的方法,在建立TCP连接时,本设备可向对端设备发送SYN报文,并依据向所述对端设备发送的TCP SYN报文,确定出该对端待回应的SYN ACK报文的特征信息。本设备可将确定出的特征信息加入至优先处理列表。当确定接收到的SYN ACK报文的特征信息存在于该优先处理列表时,本设备可将该SYN ACK报文添加至上送优先级最高的上送队列,以优先处理该SYN ACK报文。
由于本申请采用上述先建立优先处理列表,利用优先处理列表来保证用于TCP连接建立的报文被优先处理,所以使得本端在受到TCP SYN FLOOD攻击时,本设备与对端设备的用于建立TCP连接报文可以被优先处理,使得本设备与对端设备之间建立TCP连接不受阻。
附图说明
图1是本申请一示例性实施例示出的一种防范攻击方法的流程图;
图2是本申请一示例性实施例示出的一种防范攻击方法的示意图;
图3是本申请一示例性实施例示出的一种防范攻击装置所在网络设备的硬件结构图;
图4是本申请一示例性实施例示出的一种防范攻击装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
当网络设备接收到报文后,通常可将一些报文(比如协议报文等)上送CPU进行处理。上送CPU进行处理的队列可至少包括:默认队列、以及优先级最高的处理队列。
其中,上述优先级最高的处理队列中的报文会被优先上送到CPU进行处理。通常,优先级最高的处理队列对应有优先处理列表。当网络设备接收到的报文匹配该优先处理列表时,网络设备可将该接收到的报文添加在该优先级最高的处理队列中。
上述默认队列,由于CPU所能处理的报文是有限的,所以通常会为默认队列设置上送流量阈值,当默认队列上送的流量超过该上送流量阈值后,就会将超过该上送流量阈值的那部分报文流量丢弃。
在本设备与对端设备建立BGP邻居关系的过程中,本设备先要与对端设备建立TCP连接,然后通过TCP连接发送用于BGP邻居建立的消息,从而建立本设备与对端设备的BGP邻居关系。
在传统的本设备与对端设备建立TCP连接方法中,本设备与对端设备可进行TCP三次握手来进行TCP连接的建立。在TCP连接建立完成后,本设备可将与该TCP连接相关的特征信息添加至优先处理列表中。当本设备接收到通过该TCP连接传输的报文(如协议报文等)后,若该报文的报文特征匹配该优先处理列表,则将该报文添加至优先级最高的处理队列,以优先上送CPU,使CPU对该报文进行处理。
然而,上述方法只是保护了通过TCP连接的传输的报文可以优先上送CPU,优先被处理,但是该方法在建立TCP连接后才建立该TCP连接的优先处理列表项,使得用于建立TCP连接的报文仍然被添加在默认上送队列中。当本设备受到TCP SYN FLOOD攻击时,攻击SYN报文也被添加在默认队列中。由于默认队列有上送流量大小限制,并且攻击SYN报文流量远远大于对端发送的正常的SYN报文流量,使得本设备很容易将对端设备发送的正常的SYN报文作为超过上述流量阈值的那部分流量而被丢弃,从而造成本设备与对端设备的TCP连接受阻。
有鉴于此,本申请提供一种防范攻击的方法,既可以保证本设备与对端设备的正常TCP连接的建立不受阻,还可以有效地提高识别正常的用于TCP连接建立的报文的准确率。
参见图1,图1是本申请一示例性实施例示出的一种防范攻击方法的流程图。该方法可应用在网络设备(这里为了方便叙述,记为本设备)。
其中,该网络设备可以是指能接入网络的设备,可包括转发设备,服务端设备,终端设备等等。这里只是对网络设备的示例性说明,不对其进行具体地限定。
该防范攻击方法可包括如下所示步骤。
步骤101:本设备在与对端设备建立TCP连接的过程中,依据本设备向对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK(synchronizeacknowledge,同步应答)的报文特征信息。
其中,上述报文特征信息,可以是指SYN ACK报文中的一些特定字段中的信息。例如,上述报文特征信息可以是SYN ACK报文的五元组信息。当然,上述报文特征信息也可以是SYN ACK报文中其他特定字段的信息,这里不进行具体地限定。
需要说明的是,通常上述报文特征信息仅包括SYN报文的源IP地址、目的IP地址和目的端口号。用这三个报文特征信息进行匹配不好之处在于匹配粒度过大。当攻击设备冒充对端设备的IP地址向本设备发送攻击SYN报文,该攻击SYN报文也会匹配出上述确定出的三个报文特征信息,使得本设备也会优先处理攻击SYN报文,致使大量的攻击SYN报文占用大量的CPU资源。
而在本申请中,设备用于匹配的报文特征信息是五元组信息,尤其包括SYN报文的源端口信息(也是SYN ACK报文的目的端口),使得匹配粒度更细。
由于在建立BGP连接的过程中,并没有对SYN报文的源端口进行规定,所以SYN报文的源端口可以是任一一个没有特殊作用的端口。这就使得如果攻击设备不能获取到本设备发送的SYN报文,就很难确定出需要响应的SYN ACK报文的目的端口号,所以使得当攻击设备冒充对端设备向本设备发送攻击SYN ACK报文时,攻击设备发送的SYN ACK报文很难匹配到上述优先处理列表中报文特征信息,从而使得本设备很难将攻击流量添加至上送优先级最高的上送队列进行处理。
因此,本申请可以通过匹配粒度更细的五元组信息,尤其是SYN报文的源端口等报文特征信息,更准确地识别出用于建立TCP连接的正常报文。
下面以上述报文特征信息为SYN ACK报文的五元组信息为例,对本申请提供的防范攻击方法进行详细地说明。
由于本设备与对端设备在建立BGP邻居关系时,两者之间的TCP建立是具有双向性。进一步来说,对端设备可主动向本设备发送SYN报文,请求与本设备建立TCP连接。本设备也可主动向对端设备发送SYN报文,请求与对端设备建立TCP连接。
在本设备与对端设备建立TCP连接时,本设备可依据向对端设备发送的SYN报文的五元组信息,确定出对端设备响应该SYN报文的SYN ACK报文的五元组信息。
具体地,本设备可将向对端设备发送的SYN报文的源IP地址,确定为对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的IP地址;将向对端设备发送的SYN报文的目的IP地址,确定为对端设备响应所述SYN报文时需要发送的SYN ACK报文的源IP地址;将向对端设备发送的SYN报文的源端口号,确定为对端设备响应所述SYN报文时需要发送的SYNACK报文的目的端口号;将向对端设备发送的SYN报文的目的端口号,确定为对端设备响应所述SYN报文时需要发送的SYN ACK报文的源端口号;将向对端设备发送的SYN报文的传输协议号,确定为对端设备响应所述SYN报文时需要发送的SYN ACK报文的传输协议号。
步骤102:本设备可将确定出的该五元组信息保存在优先处理列表中。具体地,本申请可将确定出的对端设备响应该SYN报文的SYN ACK报文的目的IP地址、源IP地址、目的端口号、源端口号、以及传输协议号保存在优先处理列表中。
步骤103:当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,本设备可将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYN ACK报文,成功与所述对端设备建立TCP连接。
在实现时,当本设备接收到对端设备发送的SYN ACK报文后,本设备可读取该SYNACK报文的五元组信息。
本设备可判断上述优先处理列表中是否存在该SYN ACK报文的五元组信息。如果上述优先处理列表中存在该SYN ACK报文的五元组信息,本设备可将该SYN ACK报文添加在优先级最高的处理队列中,以优先上送CPU,由CPU处理该SYN ACK报文。然后本设备可将CPU构造好的响应该SYN ACK报文的ACK报文发送给对端设备,从而完成本设备与对端设备的TCP连接的建立。
如果上述优先处理列表中不存在该SYN ACK报文的五元组信息,本设备可将该SYNACK报文添加在上述默认队列中。由默认队列执行将该SYN ACK报文上送CPU的处理。
此外,在本申请中,当接收到断开本设备与所述对端设备TCP连接的TCP报文时,本设备可在所述优先处理列表中,删除与该TCP报文的报文特征信息匹配的表项。
一种情况,对端设备主动断开与本设备的TCP连接。
在这种情况下,对端设备可向本设备发送FIN(Finish,结束)报文,本设备向对端发送响应该FIN报文的ACK(Acknowledgement,应答)报文。然后,本设备向对端设备发送FIN报文,对端设备向本设备返回ACK报文,以此断开本设备与对端设备的TCP连接。
此时,上述断开本设备与对端设备间TCP连接的TCP报文可以包括:对端设备发送的FIN报文或者对端设备响应的ACK报文。
当本设备接收到对端设备发送的FIN报文或者接收到对端设备响应的ACK报文后,可将上述优先处理列表中记录的与该FIN报文或者该ACK报文的五元组信息匹配的表项删除。
另一种情况,本设备主动断开与对端设备的TCP连接。
在这种情况下,本设备可向对端设备发送FIN报文,对端设备可向本设备发送响应该FIN报文的ACK报文。对端还会向本设备发送FIN报文,本设备可向对端设备返回响应该FIN报文的ACK报文,以此断开本设备与对端设备的TCP连接。
此时,上述用于断开本设备与对端设备间TCP连接的TCP报文可以包括:对端设备响应的ACK报文或者对端设备发送的FIN报文。
当本设备接收到对端设备响应的ACK报文或者接收到对端设备发送的FIN报文后,本设备可将上述优先处理列表中记录与该ACK报文或者该FIN报文的五元组信息匹配的表项删除。
由上述描述可知,本申请通过在建立BGP邻居关系的双方设备双向发TCP连接请求的机制,在建立TCP连接时,本设备可向对端设备发送SYN报文,并依据向所述对端设备发送的TCP SYN报文,确定出该对端待回应的SYN ACK报文的特征信息。本设备可将确定出的特征信息加入至优先处理列表。当确定接收到的SYN ACK报文的特征信息存在于该优先处理列表时,本设备可将该SYN ACK报文添加至上送优先级最高的上送队列,以优先处理该SYNACK报文。
由于本申请采用上述先建立优先处理列表,利用优先处理列表来保证用于TCP连接建立的报文被优先处理,所以使得本端在受到TCP SYN FLOOD攻击时,本设备与对端设备的用于建立TCP连接报文可以被优先处理,使得本设备与对端设备的TCP连接建立不受阻。
此外,在匹配优先处理列表时,是利用SYN ACK报文的五元组信息进行匹配的,尤其是SYN ACK报文的目的端口信息,使得匹配粒度更细。由于在建立BGP连接的过程中,并没有对SYN报文的源端口进行规定,所以SYN报文的源端口可以是任一一个没有特殊作用的端口。这就使得如果攻击设备未获取到本设备发送的SYN报文,就很难确定出需要响应的SYNACK报文的目的端口号,所以使得当攻击设备冒充对端设备向本设备发送攻击SYN ACK报文时,攻击设备发送的SYN ACK报文很难匹配到上述优先处理列表,从而使得本设备很难将攻击流量添加至上送优先级最高的上送队列进行处理。
因此,本申请可以通过匹配粒度更细的五元组信息,尤其是SYN报文的源端口等报文特征信息,更准确地识别出用于建立TCP连接的正常报文。
参见图2,下面以路由器A与路由器B之间建立BGP邻居关系,路由器B受到TCP SYNFLOOD攻击为例,对本申请提供的防范攻击方法进行详细地说明。
假设路由器A的IP地址为1.1.1.1,路由器B的IP地址为1.1.1.2。路由器A和路由器B之间建立BGP邻居关系。
由于在路由器A和路由器B建立邻居关系时,两者之间的TCP建立是具有双向性。进一步来说,路由器A可主动向路由器B发送SYN报文,以与路由器B建立TCP连接。当然,路由器B也可主动向路由器A发送SYN报文,以与路由器A建立TCP连接。
在本例中,由于路由器B受到TCP SYN FLOOD攻击,由上述的描述可知,路由B可能不会将接收到的来自于路由器A的SYN报文上送CPU,使得路由器A主动发起的TCP连接建立受阻。
但是,路由器B还会主动向路由器A发送SYN报文。假设路由器B向路由器A发送的SYN报文的五元组信息为:源地址为1.1.1.2,源端口为62345,目的地址1.1.1.1,目的端口179,传输协议号为6。
路由器B可依据向路由器A发送的SYN报文,确定出路由器A待回应的SYN ACK报文的五元组信息。
例如,路由器B可将向路由器A发送的SYN报文的源地址1.1.1.2确定为路由器A待响应的SYN ACK报文的目的地址;将该SYN报文的源端口62345确定为路由器A待响应的SYNACK报文的目的端口;将该SYN报文的目的地址1.1.1.1确定为路由器A待响应的SYN ACK报文的源地址;将该SYN报文的目的端口179确定为路由器A待响应的SYN ACK报文的源端口;将该SYN报文的传输协议号6确定为路由器A待响应的SYN ACK报文的传输协议号。
由此,路由器B确定出的路由器A待响应的SYN ACK报文的五元组信息为:源地址为1.1.1.1;源端口为179,目的地址为1.1.1.2,目的端口为62345,传输协议号6。
在确定出路由器A待响应的SYN ACK报文的五元组信息后,路由器B可将该五元组信息添加至优先处理列表中。
例如,路由器B可将源地址1.1.1.1;源端口179,目的地址1.1.1.2,目的端口62345,传输协议号6添加至优先处理列表中。
当路由器B接收到SYN ACK报文后,若该SYN ACK报文的五元组信息存在于上述优先处理列表中,则路由器B可将该接收到的SYN ACK报文添加至优先级最高的处理队列,以优先将该SYN ACK报文上送至CPU进行处理。
若该SYN ACK报文的五元组信息不存在于上述优先处理列表中,则默认将该SYNACK报文添加至默认队列,由默认队列上送CPU进行处理。
此外,在本申请实施例中,当路由器B接收到用于断开路由A和路由B之间的TCP连接的TCP报文后,路由器B在所述优先处理列表中,删除与该TCP报文匹配的表项。
在一种情况中,路由器A主动断开与路由器B的TCP连接。
在这种情况下,路由器A可向路由器B发送FIN报文,路由器B向路由器A发送响应该FIN报文的ACK报文。然后,路由器B向路由器A发送FIN报文,路由器A向路由器B返回ACK报文,以此断开路由器B与路由器A的TCP连接。
此时,路由器A发送的FIN报文和路由A响应的ACK报文的五元组信息均为:源地址1.1.1.1;源端口179,目的地址1.1.1.2,目的端口62345,传输协议号6。
当路由器B接收到路由器A发送的FIN报文或者接收到路由器A响应的ACK报文后,可将上述优先处理列表中记录的与该FIN报文或者该ACK报文的五元组信息匹配的表项删除。
例如,路由器B可从上述优先处理列表中删除包含源地址1.1.1.1;源端口179,目的地址1.1.1.2,目的端口62345,传输协议号6的表项。
在另一种情况中,路由器B主动断开与路由器A的TCP连接。
在这种情况下,路由器B可向路由器A发送FIN报文,路由器A可向路由器B发送响应该FIN报文的ACK报文。对端还会向路由器B发送FIN报文,路由器B可向路由器A返回响应该FIN报文的ACK报文,以此断开路由器B与路由器A的TCP连接。
此时,路由器A响应的ACK报文、以及路由器A发送的FIN报文的五元组信息均为:源地址1.1.1.1;源端口179,目的地址1.1.1.2,目的端口62345,传输协议号6。
当路由器B接收到路由器A响应的ACK报文或者接收到路由器A发送的FIN报文后,路由器B可将上述优先处理列表中记录与该ACK报文或者该FIN报文的五元组信息匹配的表项删除。
例如,路由器B可从上述优先处理列表中删除包含源地址1.1.1.1;源端口179,目的地址1.1.1.2,目的端口62345,传输协议号6的表项。
由上述描述可知,路由器B和路由器A在建立TCP连接前,路由器B可建立路由器A待回应的SYN ACK报文的五元组信息的优先处理列表项,使得路由器A的SYN ACK报文受到路由器B上的优先处理列表保护。当路由器B接收到路由器A发送的SYN ACK报文后,由于该SYNACK报文的五元组信息存在于该优先处理列表,路由器B可将该SYN ACK报文添加至优先级最高的处理队列,以优先上送CPU进行处理,所以可以防止因为路由器B受到TCP SYN FLOOD攻击而造成的将路由器A发送的SYN ACK报文丢弃,因此可以保护路由器B在受到攻击时,路由器B和路由器A仍然可以建立TCP连接。
此外,在本申请中,设备用于匹配的报文特征信息是五元组信息,尤其包括SYN报文的源端口信息(即SYN ACK报文的目的端口),使得匹配粒度更细。
由于在建立BGP连接的过程中,并没有对SYN报文的源端口进行规定,所以SYN报文的源端口可以是任一一个没有特殊作用的端口。这就使得如果攻击设备未获取到路由器B发送的SYN报文,就很难确定出需要响应的SYN ACK报文的目的端口号(即62345),所以使得当攻击设备冒充路由器A向路由器B发送攻击SYN ACK报文时,攻击设备发送的SYN ACK报文很难匹配到上述优先处理列表,从而使得本设备很难将攻击流量添加至上送优先级最高的上送队列进行处理。
因此,本申请可以通过匹配粒度更细的五元组信息,尤其是SYN报文的源端口等报文特征信息,更准确地识别出用于建立TCP连接的正常报文。
参见图3,本申请还提供一种防范攻击装置所在网络设备的硬件架构图,该网络设备包括:通信接口301、处理器302、机器可读存储介质303和总线304;其中,通信接口301、处理器302和机器可读存储介质303通过总线304完成相互间的通信。处理器302通过读取并执行机器可读存储介质303中与防范攻击控制逻辑对应的机器可执行指令,可执行上文描述的防范攻击方法。
本文中提到的机器可读存储介质303可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
请参考图4,图4是本申请一示例性实施例示出的一种防范攻击装置的框图。该防范攻击装置与上述防范攻击的控制逻辑对应。该装置可应用于网络设备,该装置可包括如下所示单元。
确定单元401,用于在与对端设备建立TCP连接的过程中,依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息;
保存单元402,用于将确定出的所述报文特征信息保存在优先处理列表中;
处理单元403,用于当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYN ACK报文,成功与所述对端设备建立TCP连接。
可选的,所述装置还包括:
删除单元404,用于当接收到断开本设备与所述对端设备TCP连接的TCP报文时,在所述优先处理列表中,删除与该TCP报文的报文特征信息匹配的表项。
可选的,所述报文特征信息包括五元组信息;
所述确定单元401,具体用于将本设备向对端设备发送的SYN报文的源IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的IP地址;将本设备向对端设备发送的SYN报文的目的IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源IP地址;将本设备向对端设备发送的SYN报文的源端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的端口;将本设备向对端设备发送的SYN报文的目的端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源端口;将本设备向对端设备发送的SYN报文的传输层协议号,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的传输层协议号。
可选的,所述报文特征信息包括五元组信息;
所述保存单元402,具体用于将确定出的所述SYN ACK报文的目的IP地址、源IP地址、目的端口号、源端口号和传输层协议号保存在优先处理列表。
此外,本申请还通了一种包括机器可执行指令的机器可读存储介质。例如,如图3中的机器可读存储介质303,所述机器可执行指令可由网络设备中的处理器302执行以实现以上描述的防范攻击方法。
具体地,通过调用并执行机器可读存储介质303中与防范攻击控制逻辑对应的机器可执行指令,处理器302可执行以下操作:
在与对端设备建立TCP连接的过程中,依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息;
将确定出的所述报文特征信息保存在优先处理列表中;
当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYN ACK报文,成功与所述对端设备建立TCP连接。
可选的,当接收到断开本设备与所述对端设备TCP连接的TCP报文时,在所述优先处理列表中,删除与该TCP报文的报文特征信息匹配的表项。
可选的,所述报文特征信息包括五元组信息;
依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息,包括:
将本设备向对端设备发送的SYN报文的源IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的IP地址;
将本设备向对端设备发送的SYN报文的目的IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源IP地址;
将本设备向对端设备发送的SYN报文的源端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的端口;
将本设备向对端设备发送的SYN报文的目的端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源端口;
将本设备向对端设备发送的SYN报文的传输层协议号,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的传输层协议号。
可选的,所述报文特征信息包括五元组信息;
所述将确定出的所述报文特征信息保存在优先处理列表中,包括:
将确定出的所述SYN ACK报文的目的IP地址、源IP地址、目的端口号、源端口号和传输层协议号保存在优先处理列表。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.一种防范攻击的方法,其特征在于,所述方法应用于网络设备,所述方法包括:
在与对端设备建立TCP连接的过程中,依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息;
将确定出的所述报文特征信息保存在优先处理列表中;
当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYN ACK报文,成功与所述对端设备建立TCP连接。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到断开本设备与所述对端设备TCP连接的TCP报文时,在所述优先处理列表中,删除与该TCP报文的报文特征信息匹配的表项。
3.根据权利要求1所述的方法,其特征在于,所述报文特征信息包括五元组信息;
依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息,包括:
将本设备向对端设备发送的SYN报文的源IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的IP地址;
将本设备向对端设备发送的SYN报文的目的IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源IP地址;
将本设备向对端设备发送的SYN报文的源端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的端口;
将本设备向对端设备发送的SYN报文的目的端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源端口;
将本设备向对端设备发送的SYN报文的传输层协议号,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的传输层协议号。
4.根据权利要求1所述的方法,其特征在于,所述报文特征信息包括五元组信息;
所述将确定出的所述报文特征信息保存在优先处理列表中,包括:
将确定出的所述SYN ACK报文的目的IP地址、源IP地址、目的端口号、源端口号和传输层协议号保存在优先处理列表。
5.一种防范攻击的装置,其特征在于,所述方法应用于网络设备,所述装置包括:
确定单元,用于在与对端设备建立TCP连接的过程中,依据本设备向所述对端设备发送的SYN报文,确定该对端设备响应所述SYN报文时需要发送的SYN ACK报文的报文特征信息;
保存单元,用于将确定出的所述报文特征信息保存在优先处理列表中;
处理单元,用于当接收到来自于对端设备的SYN ACK报文的报文特征信息存在于所述优先处理列表时,将所述SYN ACK报文添加至优先级最高的处理队列,以优先处理所述SYNACK报文,成功与所述对端设备建立TCP连接。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
删除单元,用于当接收到断开本设备与所述对端设备TCP连接的TCP报文时,在所述优先处理列表中,删除与该TCP报文的报文特征信息匹配的表项。
7.根据权利要求5所述的装置,其特征在于,所述报文特征信息包括五元组信息;
所述确定单元,具体用于将本设备向对端设备发送的SYN报文的源IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的IP地址;将本设备向对端设备发送的SYN报文的目的IP地址,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源IP地址;将本设备向对端设备发送的SYN报文的源端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的目的端口;将本设备向对端设备发送的SYN报文的目的端口,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的源端口;将本设备向对端设备发送的SYN报文的传输层协议号,确定为该对端设备响应所述SYN报文时需要发送的SYN ACK报文的传输层协议号。
8.根据权利要求5所述的装置,其特征在于,所述报文特征信息包括五元组信息;
所述保存单元,具体用于将确定出的所述SYN ACK报文的目的IP地址、源IP地址、目的端口号、源端口号和传输层协议号保存在优先处理列表。
9.一种网络设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使执行如权利要求1至4任一项所述方法。
10.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器执行如权利要求1至4任一项所述方法。
CN201810193427.6A 2018-03-09 2018-03-09 一种防范攻击方法及装置 Active CN108512833B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810193427.6A CN108512833B (zh) 2018-03-09 2018-03-09 一种防范攻击方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810193427.6A CN108512833B (zh) 2018-03-09 2018-03-09 一种防范攻击方法及装置

Publications (2)

Publication Number Publication Date
CN108512833A true CN108512833A (zh) 2018-09-07
CN108512833B CN108512833B (zh) 2021-06-29

Family

ID=63376245

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810193427.6A Active CN108512833B (zh) 2018-03-09 2018-03-09 一种防范攻击方法及装置

Country Status (1)

Country Link
CN (1) CN108512833B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111835735A (zh) * 2020-06-29 2020-10-27 新华三信息安全技术有限公司 一种防攻击方法、装置、设备及机器可读存储介质
CN111865828A (zh) * 2020-07-24 2020-10-30 展讯通信(上海)有限公司 数据传输方法、系统、电子设备及存储介质
CN113516811A (zh) * 2021-04-23 2021-10-19 摩拜(北京)信息技术有限公司 一种物品使用方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1705308A (zh) * 2004-05-31 2005-12-07 华为技术有限公司 一种用户面数据处理方法
CN101478537A (zh) * 2008-12-31 2009-07-08 成都市华为赛门铁克科技有限公司 一种单向环境中的网络安全防护方法和装置
CN102006283A (zh) * 2010-10-21 2011-04-06 意法·爱立信半导体(北京)有限公司 数据传输的方法和装置
CN103347016A (zh) * 2013-06-28 2013-10-09 天津汉柏汉安信息技术有限公司 一种攻击的防御方法
CN103491061A (zh) * 2012-06-13 2014-01-01 华为技术有限公司 缓解攻击方法、序列号提供方法及设备
CN103973595A (zh) * 2014-05-19 2014-08-06 杭州华三通信技术有限公司 一种链路存活确定方法、交换机及控制器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1705308A (zh) * 2004-05-31 2005-12-07 华为技术有限公司 一种用户面数据处理方法
CN101478537A (zh) * 2008-12-31 2009-07-08 成都市华为赛门铁克科技有限公司 一种单向环境中的网络安全防护方法和装置
CN102006283A (zh) * 2010-10-21 2011-04-06 意法·爱立信半导体(北京)有限公司 数据传输的方法和装置
CN103491061A (zh) * 2012-06-13 2014-01-01 华为技术有限公司 缓解攻击方法、序列号提供方法及设备
CN103347016A (zh) * 2013-06-28 2013-10-09 天津汉柏汉安信息技术有限公司 一种攻击的防御方法
CN103973595A (zh) * 2014-05-19 2014-08-06 杭州华三通信技术有限公司 一种链路存活确定方法、交换机及控制器

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111835735A (zh) * 2020-06-29 2020-10-27 新华三信息安全技术有限公司 一种防攻击方法、装置、设备及机器可读存储介质
CN111835735B (zh) * 2020-06-29 2023-12-29 新华三信息安全技术有限公司 一种防攻击方法、装置、设备及机器可读存储介质
CN111865828A (zh) * 2020-07-24 2020-10-30 展讯通信(上海)有限公司 数据传输方法、系统、电子设备及存储介质
WO2022017529A1 (zh) * 2020-07-24 2022-01-27 展讯通信(上海)有限公司 数据传输方法、系统、电子设备及存储介质
CN113516811A (zh) * 2021-04-23 2021-10-19 摩拜(北京)信息技术有限公司 一种物品使用方法和装置

Also Published As

Publication number Publication date
CN108512833B (zh) 2021-06-29

Similar Documents

Publication Publication Date Title
JP4154615B2 (ja) Sipサーバ共有モジュール装置、sipメッセージ中継方法、及びプログラム
US7990866B2 (en) Server device, method for controlling a server device, and method for establishing a connection using the server device
US9729655B2 (en) Managing transfer of data in a data network
Lindgren et al. Probabilistic routing protocol for intermittently connected networks
US7191248B2 (en) Communication stack for network communication and routing
KR101455434B1 (ko) 에지 라우팅을 갖는 피어-투-피어 협업 시스템
EP3352431B1 (en) Network load balance processing system, method, and apparatus
US20110219123A1 (en) Network firewall and nat traversal for tcp and related protocols
CN110266678B (zh) 安全攻击检测方法、装置、计算机设备及存储介质
US8732796B1 (en) Addressing security in asymmetrical networks
CN108512833A (zh) 一种防范攻击方法及装置
CN105991793B (zh) 报文转发的方法和装置
US20230275924A1 (en) Network security protection method and protection device
JP2009164948A (ja) 通信システム、サーバ、端末、パケット転送方法およびプログラム
CN106941460A (zh) 报文发送方法和装置
WO2017028391A1 (zh) 虚拟网络通信的方法及装置
CN106254433A (zh) 一种建立tcp通信连接的方法及装置
CN106060155B (zh) P2p资源共享的方法及装置
CN105991629B (zh) Tcp连接建立方法及装置
CN111314447B (zh) 代理服务器及其处理访问请求的方法
CN110809033B (zh) 报文转发方法、装置及交换服务器
US11483394B2 (en) Delayed proxy-less network address translation decision based on application payload
JP3929969B2 (ja) 通信システム、サーバ、端末装置、通信方法、プログラムおよび記憶媒体
KR101328028B1 (ko) 세션 기반 메시지 전송 시스템 및 그 방법
CN111669319A (zh) 一种tcp数据包定向转发方法、系统及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant