一种DDOS攻击的检测方法及系统与流程

文档序号:12600433阅读:861来源:国知局
一种DDOS攻击的检测方法及系统与流程

本发明涉及DDOS攻击技术领域,特别是涉及一种DDOS攻击的检测方法及系统。



背景技术:

DDOS攻击(分布式拒绝服务)是一类攻击而不是一种攻击,大致可以分为网络层和应用层两个层面的攻击。本发明中所指的DDOS攻击是针对网络层的DDOS攻击,即在TCP层利用TCP协议的漏洞通过大量密集的非正常TCP请求阻塞被攻击者的网络资源,造成无法提供正常服务。网络层的攻击是目前最普遍也难以防御的DDOS攻击形态,目前新闻上所见到的各大互联网公司遭受大规模DDOS攻击都是来自网络层面的DDOS攻击。

DDOS攻击的检测手段大致可以根据检测的特征划分为以下几类:

1、基于流量变化的检测方法

DDOS攻击最明显的特征就是流量的大幅度增加,基于流量变化检测DDOS攻击也是最常见的方法。

2、基于同协议不同类型数据包数比例

流入一个地址的流量与流出流量在无攻击情况下成一定的比例。与正常流不同,攻击主机向攻击目标发送大量数据包,攻击目标不对攻击数据包作响应或由于拥塞,响应数据包较少,基于这一特点,通过统计进出子网的数据包数检测DDOS攻击。

3、基于源地址数量及分布变化

在出现DDOS攻击时,访问IP数量大幅度增加是攻击的一个明显特征,且此特征无法隐藏。基于这个特征,利用机器学习,能够有效地检测DDOS攻击。

4、基于数据包头统计信息的变化

攻击时,除了包数、源地址分布异常以外,数据包头信息统计分布也与正常情况不同,攻击者可以伪造某一方面信息,如源地址采用合法用户地址,却难以伪造包头的所有信息。熵和卡方检验是两种常用的统计方法,能够有效地计算特征分布变化。通过这两种方法计算数据包头部信息分布,如包长、协议等,与无攻击时的计算值进行比对,可以有效地检测出攻击。

目前,网络层DDOS攻击的特征是非常明显的,DDOS攻击的检测方法发展到目前已经形成非常成熟和可靠算法及经验,从技术上讲这已经没有任何难度。当下各企业、互联网公司对DDOS攻击的检测及防御主要依赖于市面上的盒式安全设备以及IDC服务商、云服务商的抗DDOS攻击能力,而IDC服务商及云服务商则依赖于盒式设备以及ISP的近源防御能力。

对同时运营多个数据中心的IDC服务商及云服务商而言,DDOS攻击的检测和处理能力则是至关重要的。传统的盒式网络检测设备虽然可以做到秒级的检测,但其缺点也很明显:

盒式检测设备都是相对独立的,对运营多个数据中心的IDC/云服务商而言无法得到一个全网、全数据中心的统一视图的预警平台。

此外,盒式检测设备通常检测出报警后无法与IDC/云服务商的CRM系统关联,即无法直接将受攻击的对象与服务商的客户信息直接进行绑定,这对服务商的安全处理中心而言工作上会带来极大的不便。

由此可见,如何实现全局DDOS攻击的检测是本领域技术人员亟待解决的问题。



技术实现要素:

本发明的目的是提供一种DDOS攻击的检测方法,用于实现全局DDOS攻击的检测。此外,本发明的目的还提供一种DDOS攻击的检测系统。

为解决上述技术问题,本发明提供一种DDOS攻击的检测方法,包括:

采集各待检测数据中心的核心交换机的流量数据并传输所述流量数据;

接收所述流量数据,并按照队列的形式周期性地输出至流式计算结点;

为所述流式计算结点分配任务;

根据流式计算模型计算以列队形式输出的流量数据以得到计算结果;

对所述计算结果处理汇总得到检测结果;

当所述检测结果表征出现DDOS攻击现象时报警提示。

优选地,通过sFlow协议采集各待检测数据中心的流量数据。

优选地,通过NetFlow协议采集各待检测数据中心的流量数据。

优选地,通过因特网传输所述流量数据。

优选地,通过隧道协议传输所述流量数据。

优选地,所述周期性地输出至流式计算结点中的周期为500毫秒-3秒范围内的任意值。

优选地,所述流式计算结点根据流式计算模型计算以列队形式输出的流量数据以得到计算结果具体包括:

在所述周期内,根据客户IP地址汇聚流量数据,同时对源IP地址数进行累加并缓存;

根据所述核心交换机的IP地址、端口匹配到对应的待检测数据中心;

统计当前所述核心交换机的总流量、当前IP流量及占比、当前流量占总出口带宽的占比。

优选地,所述对所述计算结果处理汇总得到检测结果具体包括:

根据时间序列算法,对所述客户IP地址访问的请求进行计算以判断是否存在DDOS攻击现象,如果是得到第一检测结果;

判断所述计算结果是否超出对应的待检测数据中心设定的阈值,如果是得到第二检测结果;

根据所述源IP地址数的变化判断是否存在IP地址异常,如果是 得到第三检测结果;

所述当所述检测结果表征出现DDOS攻击现象时报警提示具体包括:

当同时出现所述第一检测结果、所述第二检测结果和所述第三检测结果时,表征出现DDOS攻击现象,则报警提示;

当出现所述第一检测结果、所述第二检测结果和所述第三检测结果中的任意一种时,则进行计数,并进入下一个检测周期;

如果连续三个周期均出现计数,表征出现DDOS攻击现象,则报警提示。

一种DDOS攻击的检测系统,包括:计算节点,其中,所述计算节点具体包括:

采集单元,用于采集各待检测数据中心的核心交换机的流量数据并传输所述流量数据;

数据缓存单元,用于接收所述流量数据,并按照队列的形式周期性地输出至流式计算结点;

调度单元,用于为所述流式计算结点分配任务;

流式计算节点,用于根据流式计算模型计算以列队形式输出的流量数据以得到计算结果;

所述调度单元,还用于对所述计算结果处理汇总得到检测结果;

报警单元,用于当所述检测结果表征出现DDOS攻击现象时报警提示。

优选地,还包括:备用计算节点,用于在所述计算节点出现故障时代替所述计算节点执行DDOS攻击的检测。

本发明所提供的DDOS攻击的检测方法,首先采集各待检测数据中心的核心交换机的流量数据,然后以队列的形式周期性地输出至流式计算节点。通过流式计算节点的计算得到计算结果,然后对计算结果进行汇总得到检测结果。通过对检测结果的判断以获取当前的待检测数据中心是否存在DDOS攻击。该方法能够将各待检测数据中心的流量数据进行汇聚,解决了跨数据中心、跨线路的全局DDOS攻击检 测。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种DDOS攻击的检测方法的流程图;

图2为本发明提供的DDOS攻击的检测系统的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

本发明的核心是提供一种DDOS攻击的检测方法及系统。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

需要说明的是本发明中提到的DDOS攻击为分布式拒绝服务的简称。

实施例一

图1为本发明提供的一种DDOS攻击的检测方法的流程图。DDOS攻击的检测方法,包括:

S10:采集各待检测数据中心的核心交换机的流量数据并传输流量数据。

在具体实施中,步骤S10-S14的执行均通过计算节点完成。计算节点是本发明中的核心,主要负责流量数据的采集、传输、计算、汇总等任务。因此在步骤S10执行之前需要选取计算节点的位置。待检 测数据中心可以为一个或者多个。

在具体实施中,选取计算节点的位置的原则为:选取所述待检测数据中心中总出口带宽最大、抗DDOS攻击能力最强的作为所述计算结点的位置。通过步骤S10获取各待检测数据中心的核心交换机的流量数据后将流量数据传输至下一级待处理。

其中,可以通过sFlow协议采集各待检测数据中心的流量数据;或者,可以通过NetFlow协议采集各待检测数据中心的流量数据。

S11:接收流量数据,并按照队列的形式周期性地输出至流式计算结点。

步骤S11为接收该流量数据,然后以队列的形式输出。之所以以队列的形式输出是因为,由于流量数据采集的速率与检测计算的速率可能不匹配,因此,需要队列形式输出可以起到缓存的作用,使得输入和输出的不匹配的问题得到改善。

其中,可以通过因特网传输流量数据;或者可以通过隧道协议传输流量数据。

其中,周期性地输出至流式计算结点中的周期为500毫秒-3秒范围内的任意值。例如,可以是3秒。

S12:为流式计算结点分配任务。

在具体实施中,流式计算节点可能有多个,因此,在同一时间段内,并不是每个流式计算同时需要执行计算工作,因此,需要为每个流式计算节点分配任务。

S13:根据流式计算模型计算以列队形式输出的流量数据以得到计算结果。

流式计算节点是计算的核心,具体的个数(规模)需要根据实际情况设置。流式计算节点就是根据流式计算模型对分配给其的任务进行计算工作。

S14:对计算结果处理汇总得到检测结果。

根据每个流式计算节点的计算结果进行汇总,得到检测结果。

S15:当检测结果表征出现DDOS攻击现象时报警提示。

步骤S15主要对步骤S14中的检测结果进行判断,当检测结果表明出现DDOS攻击现象时则报警提示。

本发明提供的DDOS攻击的检测方法,首先采集各待检测数据中心的核心交换机的流量数据,然后以队列的形式周期性地输出至流式计算节点。通过流式计算节点的计算得到计算结果,然后对计算结果进行汇总得到检测结果。通过对检测结果的判断以获取当前的待检测数据中心是否存在DDOS攻击。该方法能够将各待检测数据中心的流量数据进行汇聚,解决了跨数据中心、跨线路的全局DDOS攻击检测。

其中,步骤S13:根据流式计算模型计算以列队形式输出的流量数据以得到计算结果具体包括:

在周期内,根据客户IP地址汇聚流量数据,同时对源IP地址数进行累加并缓存;

根据核心交换机的IP地址、端口匹配到对应的待检测数据中心;

统计当前核心交换机的总流量、当前IP流量及占比、当前流量占总出口带宽的占比。

在一个周期内,例如3秒,这里的周期与上述提到的周期为同一个概念,因为,这里的流量数据来源于以列队的形式输出的流量数据。当获取到流量数据后,根据客户IP地址汇聚流量数据,同时对源IP地址数进行累加并缓存。由于同时接收各待检测数据中心的流量数据,因此,需要根据核心交换机的IP地址,端口匹配到对应的待检测数据中心。最后,统计当前核心交换机的总流量、当前IP流量及占比、当前流量占总出口带宽的占比。通过上述三个步骤得到计算结果。

其中,步骤S14:对计算结果处理汇总得到检测结果具体包括:

根据时间序列算法,对客户IP地址访问的请求进行计算以判断是否存在DDOS攻击现象,如果是得到第一检测结果。

判断计算结果是否超出对应的待检测数据中心设定的阈值,如果是得到第二检测结果。

根据源IP地址数的变化判断是否存在IP地址异常,如果是得到第三检测结果。

其中,步骤S15:当检测结果表征出现DDOS攻击现象时报警提示具体包括:

当同时出现第一检测结果、第二检测结果和第三检测结果时,表征出现DDOS攻击现象,则报警提示;

当出现第一检测结果、第二检测结果和第三检测结果中的任意一种时,则进行计数,并进入下一个检测周期;

如果连续三个周期均出现计数,表征出现DDOS攻击现象,则报警提示。

实施例二

图2为本发明提供的DDOS攻击的检测系统的结构图。如图2所示,DDOS攻击的检测系统,包括:计算节点1,其中,计算节点1具体包括:

采集单元10,用于采集各待检测数据中心的核心交换机的流量数据并传输流量数据。

数据缓存单元11,用于接收流量数据,并按照队列的形式周期性地输出至流式计算结点。

调度单元12,用于为流式计算结点分配任务。

流式计算节点13,用于根据流式计算模型计算以列队形式输出的流量数据以得到计算结果。

调度单元12,还用于对计算结果处理汇总得到检测结果。

报警单元14,用于当检测结果表征出现DDOS攻击现象时报警提示。

其中,DDOS攻击的检测系统,还包括:备用计算节点,用于在计算节点出现故障时代替计算节点执行DDOS攻击的检测。

由于实施例二与实施例一具有相同的内容,因此具体的实施方式的描述请参见实施例一,这里暂不赘述。

以上对本发明所提供的DDOS攻击的检测方法及系统进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

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