CN114143107B - 一种低速DDoS攻击检测方法、系统及相关设备 - Google Patents
一种低速DDoS攻击检测方法、系统及相关设备 Download PDFInfo
- Publication number
- CN114143107B CN114143107B CN202111485454.9A CN202111485454A CN114143107B CN 114143107 B CN114143107 B CN 114143107B CN 202111485454 A CN202111485454 A CN 202111485454A CN 114143107 B CN114143107 B CN 114143107B
- Authority
- CN
- China
- Prior art keywords
- data packet
- information
- flow
- sampling
- entropy
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/142—Denial of service attacks against network infrastructure
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种低速DDoS攻击检测方法,包括:对接收到的数据包进行信息采样,获得流量信息;根据流量信息进行熵计算,获得对应数据包的流量熵;判断流量熵是否超出预设阈值;若是,则确定数据包存在低速DDoS攻击。应用本技术方案,对于网络中传输的数据包,先采样获取数据包中的流量信息,然后通过熵计算的方式获得对应数据包的流量熵,这些熵可以对网络中流量的分布情况进行有效表示,更加有助于实现异常流量检测,最后通过判断流量熵是否超出相应的预设阈值来确定数据包中是否存在低速DDoS攻击,从而实现低速DDoS攻击检测。本申请还公开了一种低速DDoS攻击检测系统、计算机设备及计算机可读存储介质,具有上述有益效果。
Description
技术领域
本申请涉及计算机安全技术领域,特别涉及一种低速DDoS攻击检测方法,还涉及一种低速DDoS攻击检测系统、计算机设备及计算机可读存储介质。
背景技术
DDoS(Distributed Denial ofService,分布式拒绝服务攻击)是指处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击。
低速DDoS攻击是DDoS攻击的一种,但它采用与常见DDoS攻击完全不同的攻击方式:发包速率与正常用户相同,但仍然能对服务器造成巨大的压力,由于是以较慢的速率发送合法的数据包,因此更难被传统的检测方法防御。低速DDoS攻击可能会造成服务器无法正常服务、系统崩溃、数据丢失等严重后果,会对网络安全、财产安全、国家安全造成极大危害。
因此,如何对网络流量进行统计和分析,以便及时发现低速DDoS攻击是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种低速DDoS攻击检测方法,该方法能够对低速DDoS攻击检测方法进行有效检测;本申请的另一目的是提供一种低速DDoS攻击检测系统、计算机设备及计算机可读存储介质,均具有上述有益效果。
第一方面,本申请提供了一种低速DDoS攻击检测方法,包括:
对接收到的数据包进行信息采样,获得流量信息;
根据所述流量信息进行熵计算,获得对应数据包的流量熵;
判断所述流量熵是否超出预设阈值;
若是,则确定所述数据包存在低速DDoS攻击。
优选的,所述对接收到的数据包进行信息采样,获得流量信息,包括:
对所述数据包进行信息采样,获得所述流量信息;
根据所述流量信息计算所述数据包的采样概率;
若所述采样概率不低于预设采样概率,则放行所述数据包,并接收下一数据包,返回所述对所述数据包进行信息采样,获得所述流量信息的步骤;
若所述采样概率低于所述预设采样概率,则利用预设位图判断所述数据包是否为首次出现;
若所述数据包不是首次出现,则放行所述数据包,并接收下一数据包,返回所述对所述数据包进行信息采样,获得所述流量信息的步骤;
若所述数据包为首次出现,则保留所述流量信息。
优选的,所述流量信息包括对应数据包的流标签和流元素,所述根据所述流量信息计算所述数据包的采样概率,包括:
对所述流元素和随机数进行异或运算,获得新的流元素;
对所述新的流元素和所述流标签进行异或运算,获得运算结果;
利用第一哈希函数对所述运算结果进行哈希运算,获得所述数据包的采样概率。
优选的,所述利用预设位图判断所述数据包是否为首次出现,包括:
利用第二哈希函数对所述运算结果进行哈希运算,获得哈希值;
判断所述哈希值对应于所述预设位图上的取值是否为零;
若是,则确定所述数据包为首次出现。
优选的,所述根据所述流量信息进行熵计算,获得对应数据包的流量熵,包括:
利用预设还原算法对所述流量信息进行还原处理,获得还原数据;
利用预设熵函数对所述还原数据进行熵计算,获得对应数据包的流量熵。
优选的,所述对接收到的数据包进行信息采样,获得流量信息之前,还包括:
对所述数据包进行解析,获得源地址信息;
判断所述源地址信息是否存在于预设黑名单中,若是,则确定所述数据包存在所述低速DDoS攻击。
优选的,当所述流量熵超出所述预设阈值,确定所述数据包存在所述低速DDoS攻击时,还包括:
将所述源地址信息添加至所述预设黑名单。
第二方面,本申请还公开了一种低速DDoS攻击检测系统,包括:
信息采样模块,用于对接收到的数据包进行信息采样,获得流量信息;
熵计算模块,用于根据所述流量信息进行熵计算,获得对应数据包的流量熵;
阈值判断模块,用于判断所述流量熵是否超出预设阈值;
攻击确定模块,用于若所述流量熵超出所述预设阈值,则确定所述数据包存在低速DDoS攻击。
第三方面,本申请还公开了一种计算机设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的任一种低速DDoS攻击检测方法的步骤。
第四方面,本申请还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的任一种低速DDoS攻击检测方法的步骤。
本申请提供了一种低速DDoS攻击检测方法,包括对接收到的数据包进行信息采样,获得流量信息;根据所述流量信息进行熵计算,获得对应数据包的流量熵;判断所述流量熵是否超出预设阈值;若是,则确定所述数据包存在低速DDoS攻击。
应用本申请所提供的技术方案,对于网络中传输的数据包,先通过信息采样技术采集获得数据包中的流量信息,然后通过熵计算的方式获得对应数据包的流量熵,这些熵可以对网络中流量的分布情况进行有效表示,更加有助于实现异常流量检测,由此,即可通过判断流量熵是否超出相应的预设阈值来确定数据包中是否存在低速DDoS攻击,从而实现低速DDoS攻击检测。
本申请所提供的一种低速DDoS攻击检测系统、计算机设备及计算机可读存储介质,均具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。
图1为本申请所提供的一种低速DDoS攻击检测方法的流程示意图;
图2为本申请所提供的一种低速DDoS攻击检测装置的结构示意图;
图3为本申请所提供的一种低速DDoS攻击检测系统的结构示意图;
图4为本申请所提供的一种计算机设备的结构示意图。
具体实施方式
本申请的核心是提供一种低速DDoS攻击检测方法,该低速DDoS攻击检测方法能够对低速DDoS攻击检测方法进行有效检测;本申请的另一核心是提供一种低速DDoS攻击检测系统、计算机设备及计算机可读存储介质,也具有上述有益效果。
为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种低速DDoS攻击检测方法。
请参考图1,图1为本申请所提供的一种低速DDoS攻击检测方法的流程示意图,该低速DDoS攻击检测方法可包括:
S101:对接收到的数据包进行信息采样,获得流量信息;
本步骤旨在实现数据包的信息采样,以获得对应数据包的流量信息。其中,数据包即为网络中传输的数据包,可以是对每一个数据包进行信息采样,也可以是按照预先设定的采样规则选择部分数据包,再对其进行信息采样,例如,可以按照预设比例选择部分数据包进行信息采样,也可以只对首次出现的数据包进行信息采样,本申请对此不做限定。由此,当数据包到来时,可以先判断该数据包是否满足预先设定的采样规则,若满足,则对其进行信息采样,获得相应的流量信息,若不满足,则不对其进行信息采样,直接放行即可。
其中,流量信息即为对数据包进行信息采样所获得的采样信息,主要用于进行流量熵计算,其具体内容并不唯一,根据所需要获取的流量熵类型进行选择即可,本申请对此不做限定。例如,流量信息可以包括对应数据包的数据协议、源地址、源端口、目的地址、目的端口等信息。
S102:根据流量信息进行熵计算,获得对应数据包的流量熵;
本步骤旨在实现流量信息的熵计算,以获得对应数据包的流量熵。可以理解的是,流量熵可以很好的表示网络中流量的分布情况,更加有助于实现低速DDoS攻击检测。基于此,在从数据包中采样得到流量信息之后,即可对其进行熵计算,获得相应的流量熵。
需要说明的是,流量熵的种类并不唯一,其种类越多,越有助于提高低速DDoS攻击检测结果的准确性,具有更高的鲁棒性、自适应性。
S103:判断流量熵是否超出预设阈值;若是,则执行S104;若否,则执行S105;
S104:确定数据包存在低速DDoS攻击;
S105:确定数据包不存在低速DDoS攻击。
以上步骤旨在基于流量熵实现低速DDoS攻击检测,以确定对应数据包中是否存在低速DDoS攻击。具体而言,在获得数据包对应的流量熵之后,即可对其进行阈值判断,以确定流量熵是否超出预设阈值,若超出,则说明数据包中存在于低速DDoS攻击,若不超出,则说明数据包中不存在低速DDoS攻击。
如上所述,流量熵的种类并不唯一,基于此,当数据包对应的流量熵的数量为多个时,需要判断是否每一个流量熵均不超出其对应的预设阈值(不同种类的流量熵,一般对应于不同的预设阈值),若全部不超出各自对应的预设阈值,则可以确定对应数据包中不存在低速DDoS攻击,若存在一个或多个超出对应预设阈值的流量熵,则可以确定数据包中存在低速DDoS攻击。
当然,上述预设阈值的具体取值并不唯一,其可以根据实际需求,如实际应用场景等进行动态调整,本申请对此不做限定。
可见,本申请所提供的低速DDoS攻击检测方法,对于网络中传输的数据包,先通过信息采样技术采集获得数据包中的流量信息,然后通过熵计算的方式获得对应数据包的流量熵,这些熵可以对网络中流量的分布情况进行有效表示,更加有助于实现异常流量检测,由此,即可通过判断流量熵是否超出相应的预设阈值来确定数据包中是否存在低速DDoS攻击,从而实现低速DDoS攻击检测。
在本申请的一个实施例中,上述对接收到的数据包进行信息采样,获得流量信息,可以包括:对数据包进行信息采样,获得流量信息;根据流量信息计算数据包的采样概率;若采样概率不低于预设采样概率,则放行数据包,并接收下一数据包,返回对数据包进行信息采样,获得流量信息的步骤;若采样概率低于预设采样概率,则利用预设位图判断数据包是否为首次出现;若数据包不是首次出现,则放行数据包,并接收下一数据包,返回对数据包进行信息采样,获得流量信息的步骤;若数据包为首次出现,则保留流量信息。
本优选实施例提供了一种具体类型的信息采样规则:(1)对首次出现的数据包进行信息采样,(2)各数据包的采样概率基本一致。
具体而言,当数据包到来时,先对其进行信息采样,获得对应的流量信息,需要说明的是,这里对数据包进行信息采样旨在计算其采样概率,以确定该数据包是否满足信息采样规则,并不是指保留采样得到的流量信息,只有在满足信息采样规则时,才会保留其流量信息。
进一步,判断数据包的采样概率是否低于预设采样概率,若不低于预设采样概率,则说明当前数据包的采样概率不满足信息采样规则(2),此时无需对其进行下一步判断,直接放行即可,并继续接收下一数据包,并进行采样概率计算与判断;若数据包的采样概率低于预设采样概率,则说明当前数据包的采样概率满足信息采样规则(2),此时,则可以对其进行下一步判断,即判断该数据包是否为首次出现。其中,预设采样概率的具体取值并不唯一,其可以根据实际需求,如实际应用场景等进行动态调整,本申请对此不做限定。
在判断数据包是否为首次出现时,可以采样预设位图实现,若为首次出现,则说明当前数据包满足信息采样规则(1),此时,可以确定该数据包为需要进行信息采样的数据包,保留其流量信息即可;若当前数据包不是首次出现,则说明当前数据包不满足信息采样规则(1),此时,可以确定该数据包不是需要进行信息采样的数据包,直接对其进行放行即可,并继续接收下一数据包,进行新一轮的判断,此外,也无需对其对应的流量信息进行保留。
由此,实现了基于信息采样规则的数据包采样。
在本申请的一个实施例中,上述流量信息包括对应数据包的流标签和流元素,根据流量信息计算数据包的采样概率,可以包括:对流元素和随机数进行异或运算,获得新的流元素;对新的流元素和流标签进行异或运算,获得运算结果;利用第一哈希函数对运算结果进行哈希运算,获得数据包的采样概率。
本申请实施例提供了一种数据包采样概率的计算方法。具体而言,在对数据包进行信息采样过程中,所获得的流量信息具体可以包括对应数据包的流标签和流元素,在实现过程中,可以先产生一个随机数,然后计算数据包流元素与该随机数的异或运算结果,获得新的流元素,进一步,计算新的流元素与流标签的异或运算结果,并利用预设的哈希函数,即上述第一哈希函数对该运算结果进行哈希运算,即可得到该数据包的采样概率。
在本申请的一个实施例中,上述利用预设位图判断数据包是否为首次出现,可以包括:利用第二哈希函数对运算结果进行哈希运算,获得哈希值;判断哈希值对应于预设位图上的取值是否为零;若是,则确定数据包为首次出现。
本申请实施例提供了一种判断数据包是否为首次出现的实现方法。具体而言,在计算获得新的流元素与流标签的异或运算结果之后,可以继续利用预设哈希函数,即上述第二哈希函数对其进行哈希运算,获得相应的哈希值,当然,第一哈希函数与第二哈希函数并不相同;进一步,将哈希值映射到预设位图上,判断其对应的取值是否为零,若为零,则可以确定该数据包是首次出现,若不为零,则可以确定该数据包不是首次出现。
在本申请的一个实施例中,上述根据流量信息进行熵计算,获得对应数据包的流量熵,可以包括:利用预设还原算法对流量信息进行还原处理,获得还原数据;利用预设熵函数对还原数据进行熵计算,获得对应数据包的流量熵。
本申请实施例提供了一种流量熵的计算方法。具体而言,在采样获得数据包的流量信息之后,可以先对该流量信息进行还原处理,以获得对应的还原数据;然后在对还原数据进行熵计算,获得对应的流量熵。其中,还原处理可以基于预先设定的还原算法实现,熵计算处理可以基于预先设定的熵函数实现,当然,还原算法与熵函数的具体类型可参照已有技术,本申请在此不再赘述。
在本申请的一个实施例中,上述对接收到的数据包进行信息采样,获得流量信息之前,还可以包括:对数据包进行解析,获得源地址信息;判断源地址信息是否存在于预设黑名单中,若是,则确定数据包存在低速DDoS攻击。
为进一步提高低速DDoS攻击检测效率,还可创建黑名单匹配机制。具体而言,可以对历史数据包中已判定存在低速DDoS攻击的数据包的源地址信息进行汇总,生成预设黑名单,由此,当数据包到来时,则可以向对其进行解析获得源地址信息,进而判断该源地址信息是否命中预设黑名单,若命中预设黑名单,则可以直接确定该数据包存在低速DDoS攻击,若未命中,也无法说明该数据包不存在低速DDoS攻击,因为有可能是新的低速DDoS攻击,基于此,可以进入S101~S105进行低速DDoS攻击检测。
在本申请的一个实施例中,当流量熵超出预设阈值,确定数据包存在低速DDoS攻击时,还可以包括:将源地址信息添加至预设黑名单。
具体而言,在基于S101~S105实现低速DDoS攻击检测,确定当前数据包存在低速DDoS攻击时,说明此次低速DDoS攻击为预设黑名单中不存在的新的低速DDoS攻击,此时,则可以将该数据包的源地址信息加入至预设黑名单中,实现预设黑名单的更新,由此,当相同类型的低速DDoS攻击再次发生时,则可以直接命中预设黑名单,无需再利用S101~S105进行低速DDoS攻击检测,有效的提高了低速DDoS攻击检测效率。
在上述各实施例的基础上:
请参考图2,图2为本申请所提供的一种低速DDoS攻击检测装置的结构示意图,该装置分为三个模块:在线编码模块、离线译码模块、攻击防御模块,其中,在线编码模块在FPGA网络探针上实现,离线译码模块在防御服务器上实现,攻击防御模块在中心路由器上实现。
1、在线编码模块:
在线编码模块基于FPGA网络探针进行设计,放置于一个中心路由器的上游,用于对数据包进行采样,并无条件转发,因此,该模块可以透明地存在于网络中,不对网络造成任何影响。在每个测量周期开始时,执行采样算法,并在防御服务器上存储采样信息,其中,对于每一个到达的数据包,均通过采样算法判断是否将该数据包的采样信息发送到防御服务器。
其中,采样算法的目标在于:在保证减少采样丢失的情况下,降低存储开销,其核心思想在于必须要记住当前处于的状态,或者说是已经采样的包的情况:对于重复的元素,要保证不被重复采样;对于每个第一次出现的元素,要保证被采样的概率相同。此外,还需要保证能够在一定精度下还原采样前的数据。
首先,考虑到片上和片下的优势与劣势,片上具有足够快的处理速度,但存储严重受限;片下有足够的存储空间,但是受制于访存速度。假设t为片下存储容器的访存速度,r为线上的数据包处理速度,那么,可以设置采样比例P=t/r。基于此,在线上可以通过过滤掉重复元素和概率取样的方式,在r个包中选取t个包的采样信息传输到片下进行存储。
其次,在每个采样周期开始之前,先初始化一个大小为m的位图B,且设置各位均为0,并使用随机数产生器RANDINT产生一个具有n个随机数的数组N,同时,设置一个计数器c,用于记录采样的数据包个数。
基于以上准备工作,对每一个到达的数据包,整个采样过程分为如下两步:
步骤一、对数据包的流元素e和流标签f做Hash,从而判断该数据包是否被选择。具体的,先生成一个[0,n-1]之间的随机数i,然后将流元素e与随机数N[i]的异或运算结果作为新的流元素e1,接着使用一个性能良好且值域在(0,1)上的Hash函数h1对流标签f和新的流元素e1的异或运算结果进行Hash运算,若结果小于p1,则执行步骤二,否则继续处理下一个数据包;
步骤二、使用位图B过滤重复元素。具体的,先使用另一个性能良好且值域在[0,m-1]上的Hash函数h2对流标签f和流元素e1的异或运算结果进行Hash运算,得到结果k,然后将该元素映射到B中的一个位置B[k],如果该元素已经出现过,那么B[k]为1,此时不对数据包进行采样,并继续处理下一个数据包;如果这个元素第一次出现,则B[k]为0,此时采样该数据包,并将B[k]置为1,同时c加1。
其中,在实际应用中,该元素的采样概率可以设置为等于片下访存速度与片上处理速度的比值,因此,则有:(m-c)/m*p1=P,基于通过该等式即可计算得出p1的值。
2、离线译码模块:
在每个周期结束时,对采样得到的数据包数据进行还原和分析,并将可能的攻击者数据传送给中心路由器。该过程可以分为数据统计阶段和数据分析阶段。
(1)数据统计阶段:负责从片下存储数据中抽取所需的采样信息,并组织成数据分析阶段所需要的数据结构。由于片下存储的是采样后的数据,因此,可以执行还原算法还原采样前的数据。
(2)数据分析阶段:计算防御攻击所需要的熵值,具体可以计算如下熵值:源端口熵值H(src_port),数据协议熵值H(protocol),源地址熵值H(src),以目的端口为前置条件的源端口熵值H(src_port|dst_port),以源地址为前置条件的源端口熵值H(src_port|src),以目的端口为前置条件的源地址熵值H(src|dst_port),其中,H函数为熵计算函数。特别的,单变量熵H(x)可以看作是其中代表前置条件为空。
3、攻击防御模块:
攻击防御模块维护了一个攻击者黑名单,在每个周期结束时,可以更新攻击者信息至该黑名单中。具体来说,对离线译码模块计算得到的每条流的熵值进行阈值判断,若所有值都超过了阈值,则认为该条流是可能的攻击流,此时,即可将该条流的源地址IP加入黑名单中。基于此,对于到来的数据包,也可以根据黑名单中已存储的攻击者源地址IP信息进行数据包的过滤和转发,若该数据包的源地址IP出现在黑名单中,则对该数据包进行丢弃,否则转发该数据包。
最后,基于上述低速DDoS攻击检测进行低速DDoS攻击检测的实现流程如下:
首先,设置测量周期T=3min。
在每个周期开始时,FPGA网络探针开始执行预先定义好的采样算法,也就是对网络上经过中心路由器的数据包进行采样,并转发到防御服务器中。假设线上为一个高速主干网,传输速度r=100Gbit/s,线下是一个普通宿主机,内存访问速度为10Gbit/s,可以计算出采样率P=0.1。在周期内,将每一个数据包作为采样算法的输入,决定是否将其采样信息发送到防御服务器。由于FPGA完全采用硬件对数据进行处理,因此能够有效符合实时性要求。
在每个周期结束时,防御服务器对该周期内采样得到的数据包信息进行统计和分析。具体的,对于每一个采样信息,先使用还原算法进行还原,然后使用熵函数计算出对应的熵值,最后通过对各熵值进行阈值判断将有可能的攻击者加入黑名单,并记录在中心路由器中。
其中,防御服务器可以是一个普通主机,也可以是另一个高速FPGA或者云计算服务平台。为保证其能够在十分之一个测量周期(本案例中为18s)内计算出结果,可以为每个熵值提供一个CPU,使各个熵值独立计算,且该计算机中可以不配置操作系统;另一种方案是可以使用类似FPGA的纯电路,为每一个熵计算编写一个IP核,使其实现并行计算。
在中心路由器停止接受可能的攻击者时,时间为开始采样后的3分18秒。在即将到来的3分钟内,其将利用黑名单对即将到来周期的数据包进行判断:如果数据包符合黑名单条件,则过滤该数据包,否则根据网络规则转发该数据包。其中,每一个路由器内都设有一张转发表,以便于将符合黑名单条件的数据包发送到一个不接入网络的端口或一个下游任务端口。
可见,本申请实施例所提供的低速DDoS攻击检测装置以及方法,具有如下技术效果:
(1)采用前后端分离的思想,将网络探针和防御服务器分离,后端服务器可以是并行服务器或另一个高速硬件处理器。该种实现方式使整个系统可扩展,可灵活配置,可以利用云计算平台强大的数据处理能力来处理海量网络流量,提高网络流量测量的效率,同时,可以根据流量动态分配计算资源和存储资源,减少浪费。
(2)在可编程硬件FPGA上实现网络探针部分,FPGA具有高速、可扩展、便于维护、升级等特性,是一种可重构硬件。这种新一代的硬件架构使网络流量测量与分析等算法能够以组件的形式集成到高速路由器等网络设备中,能够有效满足高速链路上高性能、实时性的需求。
(3)采用了创新的采样算法,该算法具有准确性、自适应性、可扩展性。首先,该采样算法可自适应调整算法参数,保证采样率刚好匹配线上网络速度和线下存储速度;其次,可以动态地调整抽样参数,在充分利用硬件的条件下,提高了估计精度;最后,可以根据应用场景改变流和标签的定义,只需要更改很少的代码就可扩展到其他应用,便于后续的开发和移植。
(4)采用新的基于多特征熵的检测算法,具有较好的鲁棒性、准确性、自适应性,可以根据DDoS攻击的特点,对协议、源地址、相同目的地址的源端口等变量计算熵,并使用阈值判断是否存在低速DDoS攻击。其中,阈值可以根据应用场景动态调整,提高了算法的自适应性;多特征熵的综合设计在实验中显示了其准确性;同时,该算法也可用于检测其他异常,如蠕虫攻击,扫描器等,具有很好的鲁棒性。
本申请实施例提供了一种低速DDoS攻击检测系统。
请参考图3,图3为本申请所提供的一种低速DDoS攻击检测系统的结构示意图,该低速DDoS攻击检测系统可包括:
信息采样模块1,用于对接收到的数据包进行信息采样,获得流量信息;
熵计算模块2,用于根据流量信息进行熵计算,获得对应数据包的流量熵;
阈值判断模块3,用于判断流量熵是否超出预设阈值;
攻击确定模块4,用于若流量熵超出预设阈值,则确定数据包存在低速DDoS攻击。
可见,本申请实施例所提供的低速DDoS攻击检测系统,对于网络中传输的数据包,先通过信息采样技术采集获得数据包中的流量信息,然后通过熵计算的方式获得对应数据包的流量熵,这些熵可以对网络中流量的分布情况进行有效表示,更加有助于实现异常流量检测,由此,即可通过判断流量熵是否超出相应的预设阈值来确定数据包中是否存在低速DDoS攻击,从而实现低速DDoS攻击检测。
在本申请的一个实施例中,上述信息采样模块可包括:
信息采样单元,用于对数据包进行信息采样,获得流量信息;
概率计算单元,用于根据流量信息计算数据包的采样概率;
第一数据包放行单元,用于若采样概率不低于预设采样概率,则放行数据包,并接收下一数据包,返回对数据包进行信息采样,获得流量信息的步骤;
出现次数判断单元,用于若采样概率低于预设采样概率,则利用预设位图判断数据包是否为首次出现;
第二数据包放行单元,用于若数据包不是首次出现,则放行数据包,并接收下一数据包,返回对数据包进行信息采样,获得流量信息的步骤;
信息保留单元,用于若数据包为首次出现,则保留流量信息。
在本申请的一个实施例中,上述概率计算单元可具体用于对流元素和随机数进行异或运算,获得新的流元素;对新的流元素和流标签进行异或运算,获得运算结果;利用第一哈希函数对运算结果进行哈希运算,获得数据包的采样概率。
在本申请的一个实施例中,上述出现次数判断单元可具体用于利用第二哈希函数对运算结果进行哈希运算,获得哈希值;判断哈希值对应于预设位图上的取值是否为零;若是,则确定数据包为首次出现。
在本申请的一个实施例中,上述熵计算模块2可包括:
数据还原单元,用于利用预设还原算法对流量信息进行还原处理,获得还原数据;
熵计算单元,用于利用预设熵函数对还原数据进行熵计算,获得对应数据包的流量熵。
在本申请的一个实施例中,该低速DDoS攻击检测系统还可以包括黑名单匹配模块,用于在上述对接收到的数据包进行信息采样,获得流量信息之前,对数据包进行解析,获得源地址信息;判断源地址信息是否存在于预设黑名单中,若是,则确定数据包存在低速DDoS攻击。
在本申请的一个实施例中,该低速DDoS攻击检测系统还可以包括黑名单更新单元,用于当流量熵超出预设阈值,确定数据包存在低速DDoS攻击时,将源地址信息添加至预设黑名单。
对于本申请提供的系统的介绍请参照上述方法实施例,本申请在此不做赘述。
本申请实施例提供了一种计算机设备。
请参考图4,图4为本申请所提供的一种计算机设备的结构示意图,该计算机设备可包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时可实现如上述任意一种低速DDoS攻击检测方法的步骤。
如图4所示,为计算机设备的组成结构示意图,计算机设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。
在本申请实施例中,处理器10可以为中央处理器(Central Processing Unit,CPU)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行低速DDoS攻击检测方法的实施例中的操作。
存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本申请实施例中,存储器11中至少存储有用于实现以下功能的程序:
对接收到的数据包进行信息采样,获得流量信息;
根据流量信息进行熵计算,获得对应数据包的流量熵;
判断流量熵是否超出预设阈值;
若是,则确定数据包存在低速DDoS攻击。
在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能所需的应用程序等;存储数据区可存储使用过程中所创建的数据。
此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
当然,需要说明的是,图4所示的结构并不构成对本申请实施例中计算机设备的限定,在实际应用中计算机设备可以包括比图4所示的更多或更少的部件,或者组合某些部件。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如上述任意一种低速DDoS攻击检测方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本申请提供的计算机可读存储介质的介绍请参照上述方法实施例,本申请在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请的保护范围内。
Claims (9)
1.一种低速DDoS攻击检测方法,其特征在于,包括:
对接收到的数据包进行信息采样,获得流量信息;
根据所述流量信息进行熵计算,获得对应数据包的流量熵;
判断所述流量熵是否超出预设阈值;
若是,则确定所述数据包存在低速DDoS攻击;
其中,所述对接收到的数据包进行信息采样,获得流量信息,包括:
对所述数据包进行信息采样,获得所述流量信息;
根据所述流量信息计算所述数据包的采样概率;
若所述采样概率不低于预设采样概率,则放行所述数据包,并接收下一数据包,返回所述对所述数据包进行信息采样,获得所述流量信息的步骤;
若所述采样概率低于所述预设采样概率,则利用预设位图判断所述数据包是否为首次出现;
若所述数据包不是首次出现,则放行所述数据包,并接收下一数据包,返回所述对所述数据包进行信息采样,获得所述流量信息的步骤;
若所述数据包为首次出现,则保留所述流量信息。
2.根据权利要求1所述的低速DDoS攻击检测方法,其特征在于,所述流量信息包括对应数据包的流标签和流元素,所述根据所述流量信息计算所述数据包的采样概率,包括:
对所述流元素和随机数进行异或运算,获得新的流元素;
对所述新的流元素和所述流标签进行异或运算,获得运算结果;
利用第一哈希函数对所述运算结果进行哈希运算,获得所述数据包的采样概率。
3.根据权利要求2所述的低速DDoS攻击检测方法,其特征在于,所述利用预设位图判断所述数据包是否为首次出现,包括:
利用第二哈希函数对所述运算结果进行哈希运算,获得哈希值;
判断所述哈希值对应于所述预设位图上的取值是否为零;
若是,则确定所述数据包为首次出现。
4.根据权利要求1所述的低速DDoS攻击检测方法,其特征在于,所述根据所述流量信息进行熵计算,获得对应数据包的流量熵,包括:
利用预设还原算法对所述流量信息进行还原处理,获得还原数据;
利用预设熵函数对所述还原数据进行熵计算,获得对应数据包的流量熵。
5.根据权利要求1所述的低速DDoS攻击检测方法,其特征在于,所述对接收到的数据包进行信息采样,获得流量信息之前,还包括:
对所述数据包进行解析,获得源地址信息;
判断所述源地址信息是否存在于预设黑名单中,若是,则确定所述数据包存在所述低速DDoS攻击。
6.根据权利要求5所述的低速DDoS攻击检测方法,其特征在于,当所述流量熵超出所述预设阈值,确定所述数据包存在所述低速DDoS攻击时,还包括:
将所述源地址信息添加至所述预设黑名单。
7.一种低速DDoS攻击检测系统,其特征在于,包括:
信息采样模块,用于对接收到的数据包进行信息采样,获得流量信息;
熵计算模块,用于根据所述流量信息进行熵计算,获得对应数据包的流量熵;
阈值判断模块,用于判断所述流量熵是否超出预设阈值;
攻击确定模块,用于若所述流量熵超出所述预设阈值,则确定所述数据包存在低速DDoS攻击;
其中,所述信息采样模块具体用于对所述数据包进行信息采样,获得所述流量信息;根据所述流量信息计算所述数据包的采样概率;若所述采样概率不低于预设采样概率,则放行所述数据包,并接收下一数据包,返回所述对所述数据包进行信息采样,获得所述流量信息的步骤;若所述采样概率低于所述预设采样概率,则利用预设位图判断所述数据包是否为首次出现;若所述数据包不是首次出现,则放行所述数据包,并接收下一数据包,返回所述对所述数据包进行信息采样,获得所述流量信息的步骤;若所述数据包为首次出现,则保留所述流量信息。
8.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的低速DDoS攻击检测方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的低速DDoS攻击检测方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111485454.9A CN114143107B (zh) | 2021-12-07 | 2021-12-07 | 一种低速DDoS攻击检测方法、系统及相关设备 |
PCT/CN2022/084396 WO2023103231A1 (zh) | 2021-12-07 | 2022-03-31 | 一种低速DDoS攻击检测方法、系统及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111485454.9A CN114143107B (zh) | 2021-12-07 | 2021-12-07 | 一种低速DDoS攻击检测方法、系统及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114143107A CN114143107A (zh) | 2022-03-04 |
CN114143107B true CN114143107B (zh) | 2023-03-07 |
Family
ID=80384508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111485454.9A Active CN114143107B (zh) | 2021-12-07 | 2021-12-07 | 一种低速DDoS攻击检测方法、系统及相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114143107B (zh) |
WO (1) | WO2023103231A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114143107B (zh) * | 2021-12-07 | 2023-03-07 | 苏州大学 | 一种低速DDoS攻击检测方法、系统及相关设备 |
CN114866350B (zh) * | 2022-07-06 | 2022-09-27 | 南京明博互联网安全创新研究院有限公司 | Sdn数据平面低速率攻击检测方法及系统 |
CN117857080B (zh) * | 2023-11-23 | 2024-10-25 | 北京大学深圳研究生院 | DDoS攻击的检测方法、系统、设备及介质 |
CN117411726B (zh) * | 2023-12-13 | 2024-03-12 | 天津市亿人科技发展有限公司 | 一种基于神经网络的抗DDoS攻击及云WAF防御方法 |
CN118233221B (zh) * | 2024-05-24 | 2024-07-19 | 中国电子科技集团公司第三十研究所 | 一种基于熵的网络攻防不确定性度量计算方法 |
CN118509269B (zh) * | 2024-07-22 | 2024-10-29 | 国网安徽省电力有限公司信息通信分公司 | 一种电网智能监控系统中的实时流量筛选方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010105843A1 (en) * | 2009-03-20 | 2010-09-23 | Eth Zurich | Detecting network traffic anomalies in a communication network |
CN104202336A (zh) * | 2014-09-22 | 2014-12-10 | 浪潮电子信息产业股份有限公司 | 一种基于信息熵的DDoS攻击检测方法 |
CN106330906A (zh) * | 2016-08-23 | 2017-01-11 | 上海海事大学 | 一种大数据环境下的DDoS攻击检测方法 |
CN106561016A (zh) * | 2015-11-19 | 2017-04-12 | 国网智能电网研究院 | 一种基于熵的SDN控制器DDoS攻击检测装置和方法 |
CN109005157A (zh) * | 2018-07-09 | 2018-12-14 | 华中科技大学 | 一种软件定义网络中DDoS攻击检测与防御方法与系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110138463A1 (en) * | 2009-12-07 | 2011-06-09 | Electronics And Telecommunications Research Institute | Method and system for ddos traffic detection and traffic mitigation using flow statistics |
CN111181930A (zh) * | 2019-12-17 | 2020-05-19 | 中移(杭州)信息技术有限公司 | DDoS攻击检测的方法、装置、计算机设备及存储介质 |
CN114143107B (zh) * | 2021-12-07 | 2023-03-07 | 苏州大学 | 一种低速DDoS攻击检测方法、系统及相关设备 |
-
2021
- 2021-12-07 CN CN202111485454.9A patent/CN114143107B/zh active Active
-
2022
- 2022-03-31 WO PCT/CN2022/084396 patent/WO2023103231A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010105843A1 (en) * | 2009-03-20 | 2010-09-23 | Eth Zurich | Detecting network traffic anomalies in a communication network |
CN104202336A (zh) * | 2014-09-22 | 2014-12-10 | 浪潮电子信息产业股份有限公司 | 一种基于信息熵的DDoS攻击检测方法 |
CN106561016A (zh) * | 2015-11-19 | 2017-04-12 | 国网智能电网研究院 | 一种基于熵的SDN控制器DDoS攻击检测装置和方法 |
CN106330906A (zh) * | 2016-08-23 | 2017-01-11 | 上海海事大学 | 一种大数据环境下的DDoS攻击检测方法 |
CN109005157A (zh) * | 2018-07-09 | 2018-12-14 | 华中科技大学 | 一种软件定义网络中DDoS攻击检测与防御方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2023103231A1 (zh) | 2023-06-15 |
CN114143107A (zh) | 2022-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114143107B (zh) | 一种低速DDoS攻击检测方法、系统及相关设备 | |
US10735379B2 (en) | Hybrid hardware-software distributed threat analysis | |
CN108701187B (zh) | 用于混合硬件软件分布式威胁分析的设备和方法 | |
JP4759389B2 (ja) | パケット通信装置 | |
CN111935170B (zh) | 一种网络异常流量检测方法、装置及设备 | |
CN109617931B (zh) | 一种SDN控制器的DDoS攻击防御方法及防御系统 | |
CN101800707B (zh) | 建立流转发表项的方法及数据通信设备 | |
CN108632269B (zh) | 基于c4.5决策树算法的分布式拒绝服务攻击检测方法 | |
US9356844B2 (en) | Efficient application recognition in network traffic | |
US11979326B2 (en) | Tool port throttling at a network visibility node | |
EP2227889A1 (en) | Method of detecting anomalies in a communication system using symbolic packet features | |
Li et al. | Detecting saturation attacks based on self-similarity of OpenFlow traffic | |
CA3159619C (en) | Packet processing method and apparatus, device, and computer-readable storage medium | |
Janabi et al. | Convolutional neural network based algorithm for early warning proactive system security in software defined networks | |
CN107113282A (zh) | 一种抽取数据报文的方法及装置 | |
CN112422567B (zh) | 一种面向大流量的网络入侵检测方法 | |
CN104883362A (zh) | 异常访问行为控制方法及装置 | |
CN112073376A (zh) | 一种基于数据面的攻击检测方法及设备 | |
CN115017502A (zh) | 一种流量处理方法、及防护系统 | |
CN107210969B (zh) | 一种基于软件定义网络的数据处理方法及相关设备 | |
CN115190056B (zh) | 一种可编排的流量协议识别与解析方法、装置及设备 | |
KR100608541B1 (ko) | 샘플링과 시그너쳐 검색 기능을 구비한 인터넷 프로토콜패킷 수집 장치 및 그 방법 | |
CN116264520A (zh) | 使用数据处理单元的人工智能支持的网络遥测 | |
CN106817268B (zh) | 一种ddos攻击的检测方法及系统 | |
Revathi et al. | RMCARTAM For DDoS Attack Mitigation in SDN Using Machine Learning. |
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 |