CN111431942B - 一种cc攻击的检测方法、装置及网络设备 - Google Patents

一种cc攻击的检测方法、装置及网络设备 Download PDF

Info

Publication number
CN111431942B
CN111431942B CN202010520772.3A CN202010520772A CN111431942B CN 111431942 B CN111431942 B CN 111431942B CN 202010520772 A CN202010520772 A CN 202010520772A CN 111431942 B CN111431942 B CN 111431942B
Authority
CN
China
Prior art keywords
request
response
message
retransmission
request message
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.)
Active
Application number
CN202010520772.3A
Other languages
English (en)
Other versions
CN111431942A (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.)
Hangzhou Yuanshi Network Security Technology Co ltd
Original Assignee
Hangzhou Yuanshi Network Security Technology 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 Hangzhou Yuanshi Network Security Technology Co ltd filed Critical Hangzhou Yuanshi Network Security Technology Co ltd
Priority to CN202010520772.3A priority Critical patent/CN111431942B/zh
Publication of CN111431942A publication Critical patent/CN111431942A/zh
Application granted granted Critical
Publication of CN111431942B publication Critical patent/CN111431942B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请提供一种CC攻击的检测方法、装置及网络设备,包括:针对服务器的每一请求事件,基于本设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延;所述请求报文和响应报文为基于传输层协议的报文;基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延;若所述平均响应时延大于或等于预设阈值,则确定所述服务器遭受CC攻击。使用本申请提供的方法,可以提高CC攻击检测的准确率,还可以提高CC攻击检测的适用场景范围。

Description

一种CC攻击的检测方法、装置及网络设备
技术领域
本申请涉及计算机通信领域,尤其涉及一种CC攻击的检测方法、装置及网络设备。
背景技术
CC(Challenge Collapsar,挑战黑洞)攻击是DDOS:(Distributed Denial ofService,分布式拒绝服务)攻击的一种类型。攻击者使用代理服务器或者控制某些主机向受害服务器发送大量貌似合法的请求,造成服务器资源耗尽,从而导致正常的访问被终止处理。
现有的CC攻击检测方式通常是检测基于HTTP(HyperText Transfer Protocol,超文本传输协议)协议的网站服务的CC攻击。具体地,统计访问Web(World Wide Web,万维网)页面的请求频率,将该频率与预设的阈值做比较,如果发现统计的请求频率已经超过阈值,则判定检测到了CC攻击。
然而请求频率很难准确反映服务器的负载情况。例如,黑客可以使用低频针对特别耗费资源的URL(Uniform Resource Locator,统一资源定位符)发起攻击(例如大量数据库查询),来绕过该高频请求检测。现有的CC攻击的检测方式的准确性较低。
发明内容
有鉴于此,本申请提供一种CC攻击的检测方法、装置及网络设备,用于提高CC攻击检测的准确性、以及CC攻击检测的适用范围。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提供一种CC攻击的检测方法,所述方法应用于网络设备,包括:
针对服务器的每一请求事件,基于所述网络设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延;所述请求报文和响应报文为基于传输层协议的报文;
基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延;
若所述平均响应时延大于或等于预设阈值,则确定所述服务器遭受CC攻击。
可选的,所述基于所述网络设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延,包括:
基于已接收到的该请求事件的请求报文的接收时刻,确定接收到完整的该请求事件的第一时刻;
基于已接收到的该请求事件的响应报文的接收时刻,确定接收到该请求事件的响应的第二时刻;
基于所述第一时刻、所述第二时刻,确定所述服务器响应该请求事件的响应时延。
可选的,所述基于已接收到的该请求事件的请求报文的接收时刻,确定接收到完整的该请求事件的第一时刻;基于已接收到的该请求事件的响应报文的接收时刻,确定接收到该请求事件的响应的第二时刻;包括:
在接收与该请求事件对应的请求报文时,若该请求报文是非重传请求报文,则将已记录的该请求事件对应的请求接收时刻变量的取值,更新为该请求报文的接收时刻,若该请求报文是重传请求报文,则维持已记录的请求接收时刻变量;所述非重传请求报文包括:首个非重传请求报文或非首个非重传请求报文;
在接收到与该请求事件对应的响应报文时,若该响应报文是首个非重传响应报文,则将该请求事件对应的响应接收时刻变量的取值,更新为该响应报文的接收时刻;若该响应报文是重传响应报文,或者是非首个非重传响应报文,则维持已记录的响应接收时刻;
在对响应接收时刻变量进行更新后,将当前记录的请求接收时刻变量的取值作为第一时刻,将当前记录的响应接收时刻变量的取值作为第二时刻。
可选的,所述请求报文的类型通过如下方式确定:
若该请求报文的序列号范围不在已记录的、且与该请求事件对应的请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第一值,则确定所述请求报文为首个非重传请求报文;所述第一值表示未开始所述请求事件的报文交互;
若该请求报文的序列号范围不在已记录的所述请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第二值,则确定所述请求报文为非首个非重传请求报文;所述第二值表示已开始所述请求事件的报文交互;
若该请求报文的序列号范围在已记录的所述请求序列号范围内,则确定所述请求报文为重传报文。
可选的,所述方法还包括:
在确定所述请求报文为首个非重传请求报文后,将该交互标志更新为第二值,并在该请求报文携带序列号时,将该请求报文的序列号范围合并到已记录的请求序列号范围中;
在确定所述请求报文为非首个非重传请求报文后,维持该交互标志,并在该请求报文携带序列号时,将该请求报文的序列号范围合并到已记录的请求序列号范围中;
在确定所述请求报文为重传请求报文后,维持该交互标志以及已记录的请求序列号范围。
可选的,所述响应报文的类型通过如下方式确定:
若所述响应报文序列号范围在已记录的,且与该响应报文对应的响应序列号范围内,则确定所述响应报文为重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且预配置的交互标志为第二值,则确定所述响应报文为首个非重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且所述交互标志为第一值,则确定该响应报文为非首个非重传响应报文。
可选的,所述方法还包括:
若确定所述响应报文为首个非重传响应报文,则将所述交互标志更新为第一值,以及在该响应报文携带序列号时,将该响应报文的序列号范围合并到已记录的响应序列号范围中;
若确定所述响应报文为非首个非重传响应报文,则维持该交互标志,以及在该响应报文携带序列号时,将该响应报文的序列号范围合并到已记录的响应序列号范围中;
若确定所述响应报文为重传响应报文,则维持该交互标志、以及已记录的响应序列号范围。
根据本申请的第二方面,提供一种CC攻击的检测装置,所述装置应用于网络设备,包括:
第一确定单元,用于针对服务器的每一请求事件,基于所述网络设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延;所述请求报文和响应报文为基于传输层协议的报文;
第二确定单元,用于基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延;
检测单元,用于若所述平均响应时延大于或等于预设阈值,则确定所述服务器遭受CC攻击。
可选的,所述第一确定单元,在基于所述网络设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延时,用于基于已接收到的该请求事件的请求报文的接收时刻,确定接收到完整的该请求事件的第一时刻;基于已接收到的该请求事件的响应报文的接收时刻,确定接收到该请求事件的响应的第二时刻;基于所述第一时刻、所述第二时刻,确定所述服务器响应该请求事件的响应时延。
根据本申请的第三方面,提供一种网络设备,所述网络设备包括可读存储介质和处理器;
其中,所述可读存储介质,用于存储机器可执行指令;
所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现所述方法。
由上述描述可知,由于服务器的平均响应时延可以更为准确地反映服务器的负载状态,所以通过平均响应时延来确定服务器是否发生CC攻击,可以提高CC攻击检测地准确性。
此外,由于本申请是通过基于传输层协议的请求报文和响应报文来确定服务器的平均响应时延的,所以本申请提供的CC攻击检测在不解析应用层协议的情况下就能计算服务器的平均响应时延,从而能够更广泛的适用于基于TCP/UDP开发的互联网协议对应的业务场景的CC攻击检测。
附图说明
图1是本申请一示例性实施例示出的一种CC攻击检测组网的组网示意图;
图2是本申请一示例性实施例示出的另一种CC攻击检测组网的组网示意图;
图3是本申请一示例性实施例示出的一种CC攻击的检测方法的流程图;
图4是本申请一示例性实施例示出的一种网络设备的硬件结构图;
图5是本申请一示例性实施例示出的一种CC攻击的检测装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
现有的CC攻击检测大多是基于HTTP协议的检测,这使得网络设备在获取到Web页面的HTTP报文后,需要对HTTP报文进行解析,获取到HTTP报文的相关信息,才能进行Web页面的CC攻击检测。
但是,现有的CC攻击并不只存在于HTTP协议的场景,比如基于TCP协议开发的游戏、应用服务的场景也会遭受CC攻击。所以现有的CC攻击检测并不能覆盖到大多数业务。
在实际应用中,一方面,互联网中绝大多数业务都会依赖于传输层协议(比如TCP协议,UDP协议等)。例如常见的HTTP协议、DNS(Domain Name System,域名解析***)协议、Telnet(远程终端协议)协议、SSH(Secure Shell,安全壳协议)协议、HTTPS(Hyper TextTransfer Protocol over Secure Socket Layer,超文本传输安全协议)协议、SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)协议、FTP(File TransferProtocol,文本传输协议)协议、SNMP(Simple Network Management Protocol,简单网络管理协议)协议等均依赖于TCP/UDP协议。
另一方面,大多数TCP/UDP协议的工作模式为半双工模式。即客户端与服务端在同一时间内,一方发送数据,另一方接收数据。
基于上述两方面因素,为了提高CC攻击检测的准确性、以及CC攻击检测的适用范围,本申请提供了一种基于半双工模式的CC攻击检测方式。
一方面,通过服务器的平均响应时延来判定服务器是否遭受CC攻击检测。具体地,由于服务器的平均响应时延可以更为准确地反映服务器的负载状态,所以相比于背景技术中的通过请求频率来进行CC攻击检测,本申请通过平均响应时延来确定服务器是否发生CC攻击,可以提高CC攻击检测地准确性;
另一方面,由于本申请是通过基于传输层协议的请求报文和响应报文来确定服务器的平均响应时延的,所以本申请提供的CC攻击检测在不解析应用层协议的情况下就能计算服务器的平均响应时延,从而能够更广泛的适用于基于TCP/UDP开发的互联网协议对应的业务场景的CC攻击检测。
在本申请实施例中,CC攻击检测组网至少包括:终端、网络设备和服务器。当然,该组网还可包括其他设备,比如网关设备、NAT转换设备,转发设备等等。这里只是对该CC攻击检测组网进行示例性地说明,不对其进行具体地限定。
在一种可选的实现方式中,如图1所示,网络设备可以部署于终端和服务器之间的路径上。
终端用于发起针对服务器的请求事件,服务器用于响应该请求事件。
终端在向服务器发送该请求事件的请求报文时,可将该请求报文发送给网络设备。网络设备可将该请求报文发送给服务器。
网络设备可接收服务器针对该请求报文的响应报文,并将响应报文发送给终端。
网络设备基于该请求事件的请求报文、响应报文对服务器进行CC攻击检测。
其中,该网络设备可以是服务器和终端之间的转发设备(比如交换机、路由器等),也可以是服务器和终端之间的其他设备(比如接入服务器等),这里只是对网络设备进行示例性地说明,不对其进行具体地限定。
在另一种可选的实现方式中,网络设备可以部署在终端与服务器之间的路径的旁路上。例如,如图2所示,终端通过转发设备与服务器相连,网络设备与转发设备相连,网络设备可部署在服务器的入口转发设备的旁路上。
终端在向服务器发送该请求事件的请求报文时,可将该请求报文发送给转发设备。转发设备一方面可将该请求报文的镜像发送给网络设备,另一方面,转发设备可将该请求报文发送给服务器。
转发设备在接收到服务器针对该请求报文的响应报文时,将该响应报文的镜像发送给网络设备,以及将该响应报文返回给终端。
网络设备基于接收到该请求事件的请求报文和响应报文,对服务器进行CC攻击检测。
这里只是对CC攻击检测的组网架构进行示例性地说明,不对其进行具体地限定。
在介绍本申请提供的CC攻击检测之前,先对本申请涉及的概念进行详细地说明。
1、请求事件
终端对于服务器的一次请求被记为一次请求事件。
2、请求事件的请求报文、响应报文
终端在对服务器进行请求时,终端可向服务器发送请求报文,若不考虑连接稳定性,请求报文载荷大小的情况,请求事件的请求报文即为该请求报文,请求事件的响应报文即为该请求报文的响应报文。
然而,在实际的报文转发过程中,当该请求报文为TCP(Transmission ControlProtocol,传输控制协议)报文时,为了确保终端和服务器之间数据的可靠传输,该请求报文可能被重传。或者,当该请求报文为UDP(User Datagram Protocol,用户数据报协议)报文或者为TCP报文时,若该请求报文的载荷部过大时,该请求报文还会被终端分片发送给服务器。因此,在实际应用中,针对一次请求事件的请求报文可包括:非重传完整请求报文、重传完整请求报文(即完整请求报文的重传报文)。当然,该请求报文也可包括:非重传分片请求报文(即非重传的完整请求报文的分片报文)、以及重传分片请求报文(也被称为分片请求报文的重传报文)。这些请求报文均可以称为该请求事件的请求报文。
同理该请求事件的响应报文可包括:非重传完整响应报文、重传完整响应报文(也被称为完整响应报文的重传报文)。当然该请求事件的响应报文也可包括非重传分片响应报文(也被称为非重传的完整响应报文的分片报文)、以及重传分片响应报文(也被称为分片响应报文的重传报文)。
在介绍完上述概念之后,下面对本申请提供的CC攻击检测方法进行详细地说明。
参见图3,图3是本申请一示例性实施例示出的一种CC攻击的检测方法的流程图,该方法可应用在网络设备上,可包括如下所示步骤。
步骤301:针对服务器的每一请求事件,基于本设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延;请求报文和响应报文为基于传输层协议的报文。
在实现时,本申请中的请求报文和响应报文可以是标准网络架构中的传输层的报文。由于是传输层报文,所以在实际传输过程,考虑到终端与服务端数据传输的可靠性、报文载荷大小等,会对传输层报文进行重传发送和/或分片发送。所以针对一次请求事件,网络设备可接收到针对该请求事件的至少一个请求报文,和至少一个响应报文。
在一种可选的实现方式中,网络设备可基于已接收到的该请求事件的至少一个请求报文的接收时刻,确定接收到完整的该请求事件的第一时刻,并基于已接收到的该请求事件的至少一个响应报文的接收时刻,确定接收到该请求事件的响应的第二时刻。网络设备基于所述第一时刻、所述第二时刻,确定所述服务器响应该请求事件的响应时延。
其中,由于本申请下文所述的预设阈值考虑了服务器与网络设备之间的链路传输时间的影响,所以本申请的第一时刻用于表征服务器接收到完整的请求事件的接收时刻,第二时刻用于表征服务器发送该请求事件的响应时刻。
然后,网络设备通过第一时刻和第二时刻,确定服务器响应该请求事件的响应时延。比如,网络设备可将第二时刻减去第一时刻,确定服务器响应该请求事件的响应时延。当然,该网络设备还可将第二时刻减去第一时刻,再减去预设时长,确定出服务器响应该请求事件的响应时延,该预设时长可以表征服务器与网络设备之间的链路传输时长。这里只是对“网络设备通过第一时刻和第二时刻,确定服务器响应该请求事件的响应时延”进行示例性地说明,不对其进行具体地限定。
下面对“基于已接收到的该请求事件的请求报文的接收时刻,确定接收到完整的该请求事件的第一时刻;基于已接收到的该请求事件的响应报文的接收时刻,确定接收到该请求事件的响应的第二时刻”进行详细地说明。
针对一次请求事件,终端可向服务器发送至少一个请求报文,因此网络设备可接收到针对该请求事件的至少一个请求报文。
网络设备上预设有请求接收时刻变量、和响应接收时刻变量。
网络设备在接收到请求报文时,可检测请求报文的类型,若该请求报文是首个非重传请求报文(包括:非重传完整请求报文,或者首个非重传分片请求报文),则将该请求接收时刻变量的取值,更新为该请求报文的接收时刻。
若该请求报文是非首个非重传请求报文(包括非首个非重传分片请求报文),则将已记录的该请求事件对应的请求接收时刻变量的取值,更新为该请求报文的接收时刻。
若该请求报文是重传请求报文,则维持已记录的请求接收时刻变量。需要说明的是,该重传请求报文可以是完整请求报文的重传报文,也可以是完整请求报文的分片报文的重传报文。这里只是对重传请求报文进行示例性地说明,不对其进行具体地限定。
同理,针对一次请求事件,服务器可向终端返回请求报文对应的响应报文。因此网络设备可接收到针对该请求事件的至少一个响应报文。
网络设备在接收到与该请求事件对应的响应报文时,服务器可检测该响应报文的类型。
若该响应报文是首个非重传响应报文(包括:非重传完整响应报文,或者首个非重传分片响应报文),则将该请求事件对应的响应接收时刻变量的取值,更新为该响应报文的接收时刻。
若该响应报文是重传响应报文或者是非首个非重传响应报文(包括非首个非重传分片响应报文),则维持该响应接收时刻变量。
在本申请实施例中,当该响应接收时刻变量被更新后,则可将当请求接收时刻变量的取值作为第一时刻,将当前响应接收时刻变量的取值作为第二时刻。
当然,还能通过其他方式确定第一时刻和第二时刻,比如,网络设备可以通过请求报文中的字段等,识别出请求事件的完整非重传请求报文、或者最后一个非重传分片请求报文,并将这两种报文的接收时刻记录为第一时刻。网络设备可通过响应报文中的字段等,识别出请求事件的首个非重传响应报文,并将该类型的响应报文的接收时刻记录为第二时刻。这里只是示例性地说明,不对其进行具体地限定。
步骤302:基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延。
在实现时,网络设备可周期性地基于本周期内服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延。当然,也可以是网络设备在接收到指令后,依据指令中携带的时间段,来确定该时间段内的服务器的平均响应时延,这里只是示例性地说明,不对其进行具体地限定。
针对该服务器,网络设备可确定各请求事件的响应时延之和,以及针对该服务器的请求事件的总个数,并基于各请求事件的响应时延之和、以及该服务器的请求事件的总个数,确定该服务器的平均响应时延。
在一种可选的实现方式中,网络设备上配置有响应时延和变量T,以及请求事件个数变量N。
针对该服务器的每一请求事件,在通过上述步骤,在确定出该请求事件的响应时延后,可将T的取值增加该响应时延,以及将N的取值增加1。
在基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延时,网络设备可依据T的取值,确定出各请求事件的响应时延之和,依据N的取值,确定出请求事件的个数,并基于统计出的各请求事件的响应时延之和,以及请求事件的个数确定该服务器的平均响应时延。
在另一种可选的实现方式中,针对该服务器的每一请求事件,网络设备在确定出该请求事件的响应时延后,可记录该响应时延。
在基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延时,网络设备可基于已记录的各请求事件对应的响应时延,统计各请求事件的响应时延之和,以及请求事件的个数,并基于统计出的各请求事件的响应时延之和,以及请求事件的个数确定该服务器的平均响应时延。
这里只是示例性地说明了“确定时延之和、以及请求事件总个数”的实现方式,当然还可以通过其他方式来实现该步骤,本申请不进行具体地限定。
步骤303:若所述平均响应时延大于或等于预设阈值,则确定所述服务器遭受CC攻击。
在本申请实施例中,预配置了预设阈值,该预设阈值可以是基于服务器正常响应请求时间的平均响应时延、以及服务器与网络设备之间的链路传输时间等确定。当然,该预设阈值也可以是基于服务器正常响应请求时间的平均响应时延来确定,这里只是示例性地说明,不进行具体地限定。
在本申请实施例中,在确定出服务器地平均响应时延后,网络设备可检测该平均响应时延是否大于或等于预设阈值。
若该平均响应时延大于或等于预设阈值,则确定该服务器遭受CC攻击,此时网络设备可向管理员发送告警信息。在发送告警信息时,网络设备可通过邮件、短信等通信方式向管理员发送告警信息。这里不进行具体地限定。
若该平均响应时延小于预设阈值,则确定该服务器正常,未遭受CC攻击。
由上述描述可知,一方面,由于服务器的平均响应时延可以更为准确地反映服务器的负载状态,所以通过平均响应时延来确定服务器是否发生CC攻击,可以提高CC攻击检测地准确性。
另一方面,由于网络设备是基于针对服务器的请求事件的请求报文和响应报文的接收时刻来确定响应时延,而该请求报文和响应报文是传输层报文,使得本申请的网络设备不仅可以检测针对HTTP协议的网站服务的检测,还可以实现上层业务为非HTTP协议的业务的检测。也就是说,现有的CC检测通常只能检测Web页面的CC攻击,而由于本申请是基于传输层报文来确定服务器的响应时延的,使得本申请提供的CC攻击检测在不解析应用层协议的情况下就能计算服务器的平均响应时延,从而使得本申请的CC检测不依赖于上层业务,除了可以检测Web页面的CC攻击,还可以实现检测互联网中的绝大多数应用协议、以及业务私有协议的CC攻击。所以本申请提供的CC攻击检测的适用范围更广。
第三方面,对于需要证书才能识别内容的加密业务的CC攻击(例如SSL),由于本申请是基于传输层报文的接收时刻来确定服务器的响应时延,所以本申请的网络设备在无证书的情况下也可以识别该加密业务的CC攻击。
第四方面,由于本申请是基于传输层报文的接收时刻来确定服务器的响应时延的,所以本申请还根据传输层报文的传输特点,确定了对于分片报文、重传报文的接收时刻确定机制。
下面介绍下网络设备确定请求报文的类型和响应报文的类型的方式。
1、确定请求报文的类型
若该请求报文的序列号范围不在已记录的、且与该请求事件对应的请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第一值,则确定所述请求报文为首个非重传请求报文;所述第一值表示未开始所述请求事件的报文交互;
若该请求报文的序列号范围不在已记录的所述请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第二值,则确定所述请求报文为非首个非重传请求报文;所述第二值表示已开始所述请求事件的报文交互;
若该请求报文的序列号范围在已记录的所述请求序列号范围内,则确定所述请求报文为重传报文。
1.1)对于请求报文是TCP报文来说,网络设备接收到的请求报文是携带序列号的。
在该场景中,网络设备上记录有请求事件对应的请求接收时刻变量、响应接收时 刻变量和交互标志。也就是说,网络设备上记录了请求事件标识、序列号范围和交互标志的 对应关系。其中,请求事件标识可以以该请求事件的请求报文或者响应报文的五元组信息 表示。该对应关系可如表1所示。
Figure 190963DEST_PATH_IMAGE001
其中,交互标志表示请求事件的报文交互状态。该交互标志为第一值(比如0)表示未开始该请求事件的报文交互。该交互标志为第二值(比如1)表明已开始该请求事件的报文交互。
在网络设备接收到请求报文后,网络设备可确定与该请求报文对应的请求序列号范围、以及交互标志。
在实现时,网络设备可在表1所示的对应关系中,确定与该请求报文对应的对应关系。
若未查找到与该请求报文五元组匹配的对应关系,则建立与该请求报文的五元组信息对应的对应关系,并将该对应关系中的请求序列号范围、响应序列号范围以及交互标志设置为初始值,并将该建立的对应关系作为该请求报文对应的对应关系。
若查找到查找该请求报文的五元组信息对应的对应关系,则将查找到的对应关系确定该请求报文对应的对应关系。
然后,网络设备可获取该请求报文对应的对应关系中记录的请求序列号范围和交互标志。此外,网络设备还可通过该请求报文携带的序列号和该请求报文的载荷部长度,确定出该请求报文的序列号范围。
若该请求报文的序列号范围在已记录的请求序列号范围内,则确定该请求报文为重传报文(即重传的完整请求报文,或者重传的分片请求报文)。此外,网络设备可维持该对应关系中的请求序列号范围不变,以及维持交互标志不变。
若该请求报文的序列号范围不在已记录的请求序列号范围内,且该交互标志为第一值,网络设备则确定该请求报文为首个非重传请求报文。此时,网络设备还可将该交互标志更新为第二值,以及将该请求报文的序列号范围合并到已记录的请求序列号范围中。
若该请求报文的序列号范围在已记录的请求报文序列号范围内,且该交互标志为第二值,网络设备则确定该请求报文为非首个非重传请求报文。此时,网络设备可维持该交互标志,并将该请求报文的序列号范围合并到已记录的请求序列号范围中。
1.2)对于请求报文是UDP报文来说,网络设备接收到的请求报文是不携带序列号的。
在该场景中,网络设备上记录有请求事件对应的交互标志。也就是说,网络设备上 记录了请求事件标识和交互标志的对应关系。其中,请求事件标识可以以该请求事件的请 求报文或者响应报文的五元组信息表示。该对应关系可如表2所示。
Figure 484541DEST_PATH_IMAGE002
其中,交互标志表示请求事件的报文交互状态。该交互标志为第一值(比如0)表示未开始该请求事件的报文交互。该交互标志为第二值(比如1)表明已开始该请求事件的报文交互。
在网络设备接收到请求报文后,网络设备可确定与该请求报文对应的交互标志。
在实现时,网络设备可在表2所示的对应关系中,确定与该请求报文对应的对应关系。
若未查找到与该请求报文五元组匹配的对应关系,则建立与该请求报文的五元组信息对应的对应关系,并将该对应关系中交互标志设置为初始值,并将该建立的对应关系作为该请求报文对应的对应关系。
若查找到查找该请求报文的五元组信息对应的对应关系,则将查找到的对应关系确定该请求报文对应的对应关系。
然后,网络设备可获取该请求报文对应的对应关系中记录的交互标志。
若该交互标志为第一值,网络设备则确定该请求报文为首个非重传请求报文。此时,网络设备还可将该交互标志更新为第二值。
若该请求报文的交互标志为第二值,网络设备则确定该请求报文为非首个非重传请求报文。此时,网络设备可维持该交互标志。
2、确定响应报文的类型
若所述响应报文序列号范围在已记录的,且与该响应报文对应的响应序列号范围内,则确定所述响应报文为重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且所述交互标志为第二值,则确定所述响应报文为首个非重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且所述交互标志为第一值,则确定该响应报文为非首个非重传响应报文。
2.1)对于响应报文是TCP报文来说,网络设备接收到的响应报文是携带序列号的。
在该场景中,网络设备上记录有请求事件标识、请求序列号范围、响应序列号范围和交互标志的对应关系。其中,该请求事件标识可以以该请求事件中的请求报文或者响应报文的五元组信息来表示。该对应关系可如表1所示。
在网络设备接收到响应报文后,网络设备可确定与该响应报文对应的响应序列号范围、以及交互标志。
在实现时,网络设备可在表1所示的对应关系中,确定与该响应报文对应的对应关系。然后在确定出的对应关系中获取已记录的响应序列号范围、以及交互标志。此外,网络设备还可通过该响应报文携带的序列号和该响应报文的载荷部长度,确定出该响应报文的序列号范围。
若该响应报文序列号范围在已记录的响应序列号范围内,则确定所述响应报文为重传响应报文(如重传的完整响应报文、或者重传的分片响应报文等)。此时,网络设备可维持该对应关系的响应序列号范围、以及交互标志不变。
若所述响应报文序列号范围不在所述响应序列号范围内、且该交互标志为第二值,则确定所述响应报文为首个非重传响应报文。此时,网络设备可将交互标志更新为第一值,以及将该响应报文的序列号范围合并到已记录的响应序列号范围中。
若所述响应报文序列号范围不在所述响应序列号范围内、且所述交互标志为第一值,则确定该响应报文为非首个非重传响应报文。此外,网络设备可维持该交互标志,并将该响应报文的序列号范围合并到已记录的响应序列号范围中。
2.2)对于响应报文是UDP报文来说,网络设备接收到的响应报文是不携带序列号的。
在该场景中,网络设备上记录有请求事件标识和交互标志的对应关系。其中,该请求事件标识可以以该请求事件中的请求报文或者响应报文的五元组信息来表示。该对应关系可如表2所示。
在网络设备接收到响应报文后,网络设备可确定与该响应报文对应的交互标志。
在实现时,网络设备可在表2所示的对应关系中,确定与该响应报文对应的对应关系。然后在确定出的对应关系中获取交互标志。
若该交互标志为第二值,则确定所述响应报文为首个非重传响应报文。此时,网络设备可将交互标志更新为第一值。
若交互标志为第一值,则确定该响应报文为非首个非重传响应报文。此时,网络设备可维持该交互标志。
以上完成了请求报文、响应报文的类型确定方式的描述。
下面通过两个具体地例子,对本申请提供的CC攻击检测方式进行详细地说明。
实施例1:
下面以请求报文和响应报文为TCP报文为例,对本申请提供的CC攻击检测方法进行示例性地说明。
假设,请求事件标识为该请求事件的五元组信息。网络设备通过会话表项来记录 请求事件标识、请求接收时刻、响应接收时刻、请求序列号范围、响应序列号范围、交互标志 的对应关系。记录该对应关系的会话表项如表3所示。
Figure 931703DEST_PATH_IMAGE003
表3为该对应关系所在的会话表项,在实际应用中,该会话表项还可包括其他内容,这里只是示例性地说明,不对该会话表项进行具体地限定。
假设,网络设备上还配置有响应时延和变量T,以及请求事件个数变量N。T和N的初始值为0。
网络设备在接收到发往服务器的请求报文时,在会话列表中,查找与该请求报文的五元组匹配的会话表项。
若未查找到匹配的会话表项,则创建与该请求报文的五元组信息匹配的会话表项,并将该会话表项中记录的请求接收时刻、响应接收时刻、请求序列号范围、响应序列号范围、以及交互标志设置为初始值。交互标志的初始值为第一值。
若查找到匹配的会话表项,则获取该会话表项中记录的请求接收时刻、响应接收时刻、请求序列号范围、响应序列号范围、以及交互标志。
此外,网络设备还可基于请求报文携带的序列号以及该请求报文的载荷部的长度,确定该请求报文的序列号范围。
若该请求报文的序列号范围在该请求序列号范围内,则确定该请求报文为重传请求报文。此时,网络设备可维持该会话表项中的各项内容不变。
若该请求报文的序列号范围不在该请求序列号范围内、且该交互标志为第一值,则确定该请求报文为首个非重传请求报文。此时,网络设备可将接收时刻变量的取值更新为该请求报文的接收时刻,将交互标志更新为第二值,以及将该请求报文的序列号范围合并到已记录的请求序列号范围中,以及维持会话表项中的其他内容不变。
若该请求报文的序列号范围不在该请求序列号范围内、且该交互标志为第二值,则确定该请求报文为非首个非重传请求报文。此时,网络设备可将接收时刻变量的取值更新为该请求报文的接收时刻,维持交互标志不变,以及将该请求报文的序列号范围合并到已记录的请求序列号范围中,以及维持会话表项中的其他内容不变。
网络设备在接收到服务器返回的响应报文时,在会话列表中,查找与该响应报文的五元组匹配的会话表项,并从查找到的会话表项中获取请求接收时刻、响应接收时刻、请求序列号范围、响应序列号范围、以及交互标志设置。
此外,网络设备还可基于响应报文携带的序列号以及该响应报文的载荷部的长度,确定该响应报文的序列号范围。
若该响应报文的序列号范围在该响应序列号范围内,则确定所述响应报文为重传响应报文。此时,网络设备可维持该会话表项中的各项内容不变。
若该响应报文的序列号范围不在该响应序列号范围内、且所述交互标志为第二值,则确定该响应报文为首个非重传响应报文。此时,网络设备可将响应接收时刻的取值更新为该响应报文的接收时刻,交互标志更新为第一值,以及将该响应报文的序列号范围合并到已记录的响应序列号范围中,以及维持会话表项中的其他内容不变。
若该响应报文的序列号范围不在所述响应序列号范围内、且所述交互标志为第一值,则确定该响应报文为非首个非重传响应报文。此外,网络设备可维持该响应接收时刻的取值不变,并维持该交互标志不变,并将该响应报文的序列号范围合并到已记录的响应序列号范围中,以及维持会话表项中的其他内容不变。
在完成响应接收时刻的更新后,网络设备可将该会话表项中当前记录的请求接收时刻的取值作为第一时刻,将当前记录的响应接收时刻的取值作为第二时刻。然后,网络设备可基于第一时刻和第二时刻,确定服务器响应会话表项对应的请求事件的响应时延。接着,网络设备可将T的取值增加该确定出的响应时延,并将N的取值增加1。
网络设备可以周期性地读取T的取值和N的取值,并基于T的取值确定出本周期内的请求事件的响应时延和,以及基于N的取值确定出本周期内的请求事件的总个数,并基于响应时延和和总个数确定本周期内的服务器的平均响应时延。
在一种实现方式中,T和N会周期性地清零,网络设备将T的取值确定为上述响应时延和,将N的取值确定为上述总个数。在另一种实现方式中,T和N不会被清零,每个周期会记录T和N的取值。网络设备可基于当前T的取值和上个周期记录的T的取值之差作为上述响应时延和,将当前N的取值和上个周期记录的N的取值之差作为上述总个数。这里只是对确定响应时延和、总个数的确定方式进行示例性地说明,不对其进行具体地限定。
在本申请实施例中,若该平均响应时延大于或等于预设阈值,则确定该服务器遭受CC攻击,并发出CC攻击告警。
若该平均响应时延小于预设阈值,则确定该服务器未遭受CC攻击。
此外,在本申请实施例中,网络设备在检测到与该会话表项匹配的客户端与服务器之间的连接断开时,可将该会话表项从会话列表中删除。
实施例2:
下面以请求报文和响应报文为UDP报文为例,对本申请提供的CC攻击检测方法进行示例性地说明。
假设,请求事件标识为该请求事件的五元组信息。网络设备通过会话表项来记录请求事件标识、请求接收时刻、响应接收时刻、交互标志的对应关系。该对应关系如表4所示。
Figure 918114DEST_PATH_IMAGE004
表4为该对应关系所在的会话表项,在实际应用中,该会话表项还可包括其他内容,这里只是示例性地说明,不对该会话表项进行具体地限定。
假设,网络设备上还配置有响应时延和变量T,以及请求事件个数变量N。T和N的初始值为0。
网络设备在接收到发往服务器的请求报文时,在会话列表中,查找与该请求报文的五元组匹配的会话表项。
若未查找到匹配的会话表项,则创建与该请求报文的五元组信息匹配的会话表项,并将该会话表项中记录的请求接收时刻、响应接收时刻以及交互标志设置为初始值。交互标志的初始值为第一值。
若查找到匹配的会话表项,则获取该会话表项中记录的请求接收时刻、响应接收时刻、以及交互标志。
若该交互标志为第一值,网络设备则确定该请求报文为首个非重传请求报文。此时,网络设备还将该请求接收时刻的取值,更新为该请求报文的接收时刻,以及将该交互标志更新为第二值,以及维持会话表项中的其他内容不变。
若该请求报文的交互标志为第二值,网络设备则确定该请求报文为非首个非重传请求报文。此时,网络设备可将该请求接收时刻的取值更新为该请求报文的接收时刻,并维持该交互标志不变,以及维持会话表项中的其他内容不变。
网络设备在接收到服务器返回的响应报文时,在会话列表中,查找与该响应报文的五元组匹配的会话表项,并从查找到的会话表项中获取请求接收时刻、响应接收时刻、以及交互标志。
若该交互标志为第二值,则确定所述响应报文为首个非重传响应报文。此时,网络设备可将响应接收时刻的取值,更新为该响应报文的接收时刻,并将交互标志更新为第一值,以及维持会话表项中的其他内容不变。
若交互标志为第一值,则确定该响应报文为非首个非重传响应报文。此外,网络设备可维持该响应接收时刻的取值不变,以及维持该交互标志不变,以及维持会话表项中的其他内容不变。
在完成响应接收时刻的更新后,网络设备可将该会话表项中当前记录的请求接收时刻的取值作为第一时刻,将当前记录的响应接收时刻的取值作为第二时刻。然后,网络设备可基于第一时刻和第二时刻,确定服务器响应会话表项对应的请求事件的响应时延。接着,网络设备可将T的取值增加该确定出的响应时延,并将N的取值增加1。
网络设备可以周期性地读取T的取值和N的取值,并基于T的取值确定出本周期内的请求事件的响应时延和,以及基于N的取值确定出本周期内的请求事件的总个数,并基于响应时延和和总个数确定本周期内的服务器的平均响应时延。
在一种实现方式中,T和N会周期性地清零,网络设备将T的取值确定为上述响应时延和,将N的取值确定为上述总个数。在另一种实现方式中,T和N不会被清零,每个周期会记录T和N的取值。网络设备可基于当前T的取值和上个周期记录的T的取值之差作为上述响应时延和,将当前N的取值和上个周期记录的N的取值之差作为上述总个数。这里只是对确定响应时延和、总个数的确定方式进行示例性地说明,不对其进行具体地限定。
在本申请实施例中,若该平均响应时延大于或等于预设阈值,则确定该服务器遭受CC攻击,并发出CC攻击告警。
若该平均响应时延小于预设阈值,则确定该服务器未遭受CC攻击。
此外,在本申请实施例中,网络设备在检测到与该会话表项匹配的客户端与服务器之间的连接断开时,可将该会话表项从会话列表中删除。
由上述描述可以看出,一方面,由于服务器的平均响应时延可以更为准确地反映服务器的负载状态,所以通过平均响应时延来确定服务器是否发生CC攻击,可以提高CC攻击检测地准确性。
另一方面,由于网络设备是基于针对服务器的请求事件的请求报文和响应报文的接收时刻来确定响应时延,而该请求报文和响应报文是传输层报文,使得本申请的网络设备不仅可以检测针对HTTP协议的网站服务的检测,还可以实现上层业务为非HTTP协议的业务的检测。也就是说,现有的CC检测通常只能检测Web页面的CC攻击,而由于本申请是基于传输层报文来确定服务器的响应时延的,使得本申请提供的CC攻击检测在不解析应用层协议的情况下就能计算服务器的平均响应时延,从而使得本申请的CC检测不依赖于上层业务,除了可以检测Web页面的CC攻击,还可以实现检测互联网中的绝大多数应用协议、以及业务私有协议的CC攻击。所以本申请提供的CC攻击检测的适用范围更广。
第三方面,对于需要证书才能识别内容的加密业务的CC攻击(例如SSL),由于本申请是基于传输层报文的接收时刻来确定服务器的响应时延,所以本申请的网络设备在无证书的情况下也可以识别该加密业务的CC攻击。
第四方面,由于本申请是基于传输层报文的接收时刻来确定服务器的响应时延的,所以本申请还根据传输层报文的传输特点,确定了对于分片报文、重传报文的接收时刻确定机制,使得确定出的请求和响应的接收时刻更为准确。
参见图4,图4是本申请一示例性实施例示出的一种网络设备的硬件结构图。
该网络设备包括:通信接口401、处理器402、机器可读存储介质403和总线404;其中,通信接口401、处理器402和机器可读存储介质403通过总线404完成相互间的通信。处理器402通过读取并执行机器可读存储介质403中与CC攻击的检测控制逻辑对应的机器可执行指令,可执行上文描述的CC攻击的检测方法。
本文中提到的机器可读存储介质403可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,机器可读存储介质403可以是RAM(Radom Access Memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。
参见图5,图5是本申请一示例性实施例示出的一种CC攻击的检测装置的框图,该检测装置可应用在图4所示的网络设备上,可包括如下所示单元。
第一确定单元501,用于针对服务器的每一请求事件,基于本设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延;所述请求报文和响应报文为基于传输层协议的报文;
第二确定单元502,用于基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延;
检测单元503,用于若所述平均响应时延大于或等于预设阈值,则确定所述服务器遭受CC攻击。
可选的,所述第一确定单元501,在基于本设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延时,具体用于基于已接收到的该请求事件的请求报文的接收时刻,确定接收到完整的该请求事件的第一时刻;基于已接收到的该请求事件的响应报文的接收时刻,确定接收到该请求事件的响应的第二时刻;基于所述第一时刻、所述第二时刻,确定所述服务器响应该请求事件的响应时延。
可选的,所述第一确定单元501,在基于已接收到的该请求事件的请求报文的接收时刻,确定接收到完整的该请求事件的第一时刻;基于已接收到的该请求事件的响应报文的接收时刻,确定接收到该请求事件的响应的第二时刻时,具体用于在接收与该请求事件对应的请求报文时,若该请求报文是非重传请求报文,则将已记录的该请求事件对应的请求接收时刻变量的取值,更新为该请求报文的接收时刻,若该请求报文是重传请求报文,则维持已记录的请求接收时刻变量;所述非重传请求报文包括:首个非重传请求报文、或非首个非重传请求报文;在接收到与该请求事件对应的响应报文时,若该响应报文是首个非重传响应报文,则将该请求事件对应的响应接收时刻变量的取值,更新为该响应报文的接收时刻;若该响应报文是重传响应报文,或者是非首个非重传响应报文,则维持已记录的响应接收时刻;在对响应接收时刻变量进行更新后,将当前记录的请求接收时刻变量的取值作为第一时刻,将当前记录的响应接收时刻变量的取值作为第二时刻。
可选的,所述请求报文的类型通过如下方式确定:
若该请求报文的序列号范围不在已记录的、且与该请求事件对应的请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第一值,则确定所述请求报文为首个非重传请求报文;所述第一值表示未开始所述请求事件的报文交互;
若该请求报文的序列号范围不在已记录的所述请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第二值,则确定所述请求报文为非首个非重传请求报文;所述第二值表示已开始所述请求事件的报文交互;
若该请求报文的序列号范围在已记录的所述请求序列号范围内,则确定所述请求报文为重传报文。
可选的,所述装置还包括:
更新单元(图5中未示出),用于在确定所述请求报文为首个非重传请求报文后,将该交互标志更新为第二值,并在该请求报文携带序列号时,将该请求报文的序列号范围合并到已记录的请求序列号范围中;
在确定所述请求报文为非首个非重传请求报文后,维持该交互标志,并在该请求报文携带序列号时,将该请求报文的序列号范围合并到已记录的请求序列号范围中;
在确定所述请求报文为重传请求报文后,维持该交互标志、以及已记录的请求序列号范围。
可选的,所述响应报文的类型通过如下方式确定:
若所述响应报文序列号范围在已记录的,且与该响应报文对应的响应序列号范围内,则确定所述响应报文为重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且所述交互标志为第二值,则确定所述响应报文为首个非重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且所述交互标志为第一值,则确定该响应报文为非首个非重传响应报文。
可选的,所述装置还包括:
更新单元(图5中未示出),用于若确定所述响应报文为首个非重传响应报文,则将所述交互标志更新为第一值,以及在该响应报文携带序列号时,将该响应报文的序列号范围合并到已记录的响应序列号范围中;
若确定所述响应报文为非首个非重传响应报文,则维持该交互标志,以及在该响应报文携带序列号时,将该响应报文的序列号范围合并到已记录的响应序列号范围中;
若确定所述响应报文为重传响应报文,则维持该交互标志、以及已记录的响应序列号范围。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (6)

1.一种CC攻击的检测方法,其特征在于,所述方法应用于网络设备,包括:
针对服务器的每一请求事件,基于所述网络设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延;其中,所述请求报文和响应报文为基于传输层协议的报文;
基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延;
若所述平均响应时延大于或等于预设阈值,则确定所述服务器遭受CC攻击;
所述基于所述网络设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延,包括:
在接收与该请求事件对应的请求报文时,若该请求报文是非重传请求报文,则将已记录的该请求事件对应的请求接收时刻变量的取值,更新为该请求报文的接收时刻,若该请求报文是重传请求报文,则维持已记录的请求接收时刻变量;所述非重传请求报文包括:首个非重传请求报文或非首个非重传请求报文;
在接收到与该请求事件对应的响应报文时,若该响应报文是首个非重传响应报文,则将该请求事件对应的响应接收时刻变量的取值,更新为该响应报文的接收时刻;若该响应报文是重传响应报文,或者是非首个非重传响应报文,则维持已记录的响应接收时刻;
在对响应接收时刻变量进行更新后,将当前记录的请求接收时刻变量的取值作为第一时刻,将当前记录的响应接收时刻变量的取值作为第二时刻;
基于所述第一时刻、所述第二时刻,确定所述服务器响应该请求事件的响应时延;
所述请求报文的类型通过如下方式确定:
若该请求报文的序列号范围不在已记录的、且与该请求事件对应的请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第一值,则确定所述请求报文为首个非重传请求报文;所述第一值表示未开始所述请求事件的报文交互;
若该请求报文的序列号范围不在已记录的所述请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第二值,则确定所述请求报文为非首个非重传请求报文;所述第二值表示已开始所述请求事件的报文交互;
若该请求报文的序列号范围在已记录的所述请求序列号范围内,则确定所述请求报文为重传报文。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定所述请求报文为首个非重传请求报文后,将该交互标志更新为第二值,并在该请求报文携带序列号时,将该请求报文的序列号范围合并到已记录的请求序列号范围中;
在确定所述请求报文为非首个非重传请求报文后,维持该交互标志,并在该请求报文携带序列号时,将该请求报文的序列号范围合并到已记录的请求序列号范围中;
在确定所述请求报文为重传请求报文后,维持该交互标志以及已记录的请求序列号范围。
3.根据权利要求1所述的方法,其特征在于,所述响应报文的类型通过如下方式确定:
若所述响应报文序列号范围在已记录的,且与该响应报文对应的响应序列号范围内,则确定所述响应报文为重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且预配置的交互标志为第二值,则确定所述响应报文为首个非重传响应报文;
若所述响应报文序列号范围不在所述响应序列号范围内或者所述响应报文未携带序列号、且预配置的交互标志为第一值,则确定该响应报文为非首个非重传响应报文。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若确定所述响应报文为首个非重传响应报文,则将所述交互标志更新为第一值,以及在该响应报文携带序列号时,将该响应报文的序列号范围合并到已记录的响应序列号范围中;
若确定所述响应报文为非首个非重传响应报文,则维持该交互标志,以及在该响应报文携带序列号时,将该响应报文的序列号范围合并到已记录的响应序列号范围中;
若确定所述响应报文为重传响应报文,则维持该交互标志、以及已记录的响应序列号范围。
5.一种CC攻击的检测装置,其特征在于,所述装置应用于网络设备,包括:
第一确定单元,用于针对服务器的每一请求事件,基于所述网络设备接收到的与该请求事件对应的请求报文和响应报文,确定该服务器响应该请求事件的响应时延;所述请求报文和响应报文为基于传输层协议的报文;
第二确定单元,用于基于所述服务器响应各请求事件的响应时延,确定所述服务器的平均响应时延;
检测单元,用于若所述平均响应时延大于或等于预设阈值,则确定所述服务器遭受CC攻击;
所述第一确定单元,具体用于在接收与该请求事件对应的请求报文时,若该请求报文是非重传请求报文,则将已记录的该请求事件对应的请求接收时刻变量的取值,更新为该请求报文的接收时刻,若该请求报文是重传请求报文,则维持已记录的请求接收时刻变量;所述非重传请求报文包括:首个非重传请求报文或非首个非重传请求报文;
在接收到与该请求事件对应的响应报文时,若该响应报文是首个非重传响应报文,则将该请求事件对应的响应接收时刻变量的取值,更新为该响应报文的接收时刻;若该响应报文是重传响应报文,或者是非首个非重传响应报文,则维持已记录的响应接收时刻;
在对响应接收时刻变量进行更新后,将当前记录的请求接收时刻变量的取值作为第一时刻,将当前记录的响应接收时刻变量的取值作为第二时刻;
基于所述第一时刻、所述第二时刻,确定所述服务器响应该请求事件的响应时延;
所述请求报文的类型通过如下方式确定:
若该请求报文的序列号范围不在已记录的、且与该请求事件对应的请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第一值,则确定所述请求报文为首个非重传请求报文;所述第一值表示未开始所述请求事件的报文交互;
若该请求报文的序列号范围不在已记录的所述请求序列号范围内或者所述请求报文未携带序列号、并且预配置的交互标志为第二值,则确定所述请求报文为非首个非重传请求报文;所述第二值表示已开始所述请求事件的报文交互;
若该请求报文的序列号范围在已记录的所述请求序列号范围内,则确定所述请求报文为重传报文。
6.一种网络设备,其特征在于,所述网络设备包括可读存储介质和处理器;
其中,所述可读存储介质,用于存储机器可执行指令;
所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现权利要求1-4任一所述方法。
CN202010520772.3A 2020-06-10 2020-06-10 一种cc攻击的检测方法、装置及网络设备 Active CN111431942B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010520772.3A CN111431942B (zh) 2020-06-10 2020-06-10 一种cc攻击的检测方法、装置及网络设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010520772.3A CN111431942B (zh) 2020-06-10 2020-06-10 一种cc攻击的检测方法、装置及网络设备

Publications (2)

Publication Number Publication Date
CN111431942A CN111431942A (zh) 2020-07-17
CN111431942B true CN111431942B (zh) 2020-09-15

Family

ID=71551254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010520772.3A Active CN111431942B (zh) 2020-06-10 2020-06-10 一种cc攻击的检测方法、装置及网络设备

Country Status (1)

Country Link
CN (1) CN111431942B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118493B (zh) * 2022-06-27 2023-11-10 北京天融信网络安全技术有限公司 报文查询方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1898923A (zh) * 2004-10-28 2007-01-17 日本电信电话株式会社 拒绝服务攻击检测***及拒绝服务攻击检测方法
CN102790700A (zh) * 2011-05-19 2012-11-21 北京启明星辰信息技术股份有限公司 一种识别网页爬虫的方法和装置
CN103179132A (zh) * 2013-04-09 2013-06-26 中国信息安全测评中心 一种检测和防御cc攻击的方法及装置
CN103916387A (zh) * 2014-03-18 2014-07-09 汉柏科技有限公司 一种防护ddos攻击的方法及***
CN106850351A (zh) * 2017-02-10 2017-06-13 北京浩瀚深度信息技术股份有限公司 一种非对称链路环境下http业务近似时延统计方法及装置
US10326673B2 (en) * 2015-06-05 2019-06-18 Cisco Technology, Inc. Techniques for determining network topologies

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106131036B (zh) * 2016-07-22 2019-05-07 广州华多网络科技有限公司 Cc攻击的处理方法、装置及终端

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1898923A (zh) * 2004-10-28 2007-01-17 日本电信电话株式会社 拒绝服务攻击检测***及拒绝服务攻击检测方法
CN102790700A (zh) * 2011-05-19 2012-11-21 北京启明星辰信息技术股份有限公司 一种识别网页爬虫的方法和装置
CN103179132A (zh) * 2013-04-09 2013-06-26 中国信息安全测评中心 一种检测和防御cc攻击的方法及装置
CN103916387A (zh) * 2014-03-18 2014-07-09 汉柏科技有限公司 一种防护ddos攻击的方法及***
US10326673B2 (en) * 2015-06-05 2019-06-18 Cisco Technology, Inc. Techniques for determining network topologies
CN106850351A (zh) * 2017-02-10 2017-06-13 北京浩瀚深度信息技术股份有限公司 一种非对称链路环境下http业务近似时延统计方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"一种针对AODV协议黑洞攻击的检测策略";卜飞飞 等;《计算机应用与软件》;20150531;第32卷(第5期);全文 *

Also Published As

Publication number Publication date
CN111431942A (zh) 2020-07-17

Similar Documents

Publication Publication Date Title
US20210126899A1 (en) Detecting relayed communications
US9497208B2 (en) Distributed network protection
US7171683B2 (en) Protecting against distributed denial of service attacks
US8397284B2 (en) Detection of distributed denial of service attacks in autonomous system domains
US7818786B2 (en) Apparatus and method for managing session state
Gadge et al. Port scan detection
US10237151B2 (en) Attributing network address translation device processed traffic to individual hosts
US11811820B2 (en) Malicious C and C channel to fixed IP detection
Zhang et al. Onis: Inferring tcp/ip-based trust relationships completely off-path
CN115499230A (zh) 网络攻击检测方法和装置、设备及存储介质
Luckie et al. Resilience of deployed TCP to blind attacks
CN111431942B (zh) 一种cc攻击的检测方法、装置及网络设备
KR101081433B1 (ko) IPv6 기반 네트워크의 공격 패킷의 역추적 방법 및 그 기록매체
CN112153001B (zh) 基于waf的网络通信方法、***、电子装置和存储介质
Pilli et al. Data reduction by identification and correlation of TCP/IP attack attributes for network forensics
CN113726689B (zh) 一种安全业务处理方法以及装置
Gupta et al. Predictable Internet Clients and In-Switch Deep Packet Inspection
CN117354182A (zh) 业务识别方法、***、装置、存储介质及程序产品
CN115643079A (zh) 数据包安全风险检测方法、装置、电子设备和存储介质

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