CN110011983B - 一种基于流表特征的拒绝服务攻击检测方法 - Google Patents

一种基于流表特征的拒绝服务攻击检测方法 Download PDF

Info

Publication number
CN110011983B
CN110011983B CN201910207350.8A CN201910207350A CN110011983B CN 110011983 B CN110011983 B CN 110011983B CN 201910207350 A CN201910207350 A CN 201910207350A CN 110011983 B CN110011983 B CN 110011983B
Authority
CN
China
Prior art keywords
flow
flow table
similarity
time
attack
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
CN201910207350.8A
Other languages
English (en)
Other versions
CN110011983A (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.)
Civil Aviation University of China
Original Assignee
Civil Aviation University of China
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 Civil Aviation University of China filed Critical Civil Aviation University of China
Priority to CN201910207350.8A priority Critical patent/CN110011983B/zh
Publication of CN110011983A publication Critical patent/CN110011983A/zh
Application granted granted Critical
Publication of CN110011983B publication Critical patent/CN110011983B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • 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)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于流表特征的拒绝服务攻击检测方法。其包括利用提取出源IP地址熵、流表相似度、最大匹配数据包增长率以及空闲时间表相似度共四个流表特征;采用三层BP神经网络建立攻击分类器,输入层由4个输入神经元组成,分别对应上述源IP地址熵、流表相似性、最大匹配数据包增长率和空闲时间表相似度四个流表特征,由这些流表特征组成训练集对攻击分类器进行训练,输出层由三个神经元组成,分别表示正常流、T‑DoS攻击流和N‑DoS攻击流等步骤。本发明效果:通过多个流表特征对网络中的流量进行攻击检测,可以很好地区分网络中的合法突发流和DoS攻击流,可以同时检测出传统的拒绝服务攻击和新型的拒绝服务攻击两种模式的攻击。

Description

一种基于流表特征的拒绝服务攻击检测方法
技术领域
本发明属于计算机网络技术领域,特别是涉及一种基于流表特征的拒绝服务攻击检测方法。
背景技术
软件定义网络(Software Defined Network,SDN)是一种新型网络架构,它能够给网络提供灵活的控制功能并拥有强大的可编程能力,将传统网络的控制平面和数据平面完美地分离,因此SDN已经被广泛地应用在网络虚拟化、无线局域网和云计算等领域。然而,SDN同时也面临着严重的安全威胁。拒绝服务(DoS)攻击是一种广泛存在于网络中的攻击,其通过控制一个或多个主机向目标发送大量连接请求以耗尽所有可用的操作系统资源,达到使计算机或网络无法提供正常服务的目的,最后导致合法的用户请求无法通过,常用的攻击手段有:同步洪流、WinNuke、Echl攻击、ICMP/SMURF、Land攻击、Ping洪流、Rwhod、tearDrop、TARGA3、UDP攻击、OOB等。
在减轻DoS攻击方面,SDN是一种很有前途的网络架构。然而,SDN本身就可能成为DoS攻击的目标,如何在SDN中有效地防御这类攻击已经引起了广泛的关注。在SDN中检测DoS攻击的一般方法可以分为两种,一种是基于阈值的检测方法,另一种是基于特征的检测方法。基于阈值的检测方法通常是实时监控网络行为,一旦某一指标超过预先设定的阈值,就认为发生了攻击。M.Dhawan提出了一种DoS检测方法,通过监控规则的安装速率,如果规则的安装速度超过某个阈值,则可能攻击网络并触发防御机制。S.M.Mousav等人提出了一种基于目标IP地址熵变的早期检测算法,如果熵小于预先设定的阈值,则该算法确定攻击正在进行中。H.Wang等人提出了监控交换机缓冲区、控制器CPU和内存使用情况,以减轻饱和攻击。一般来说,基于阈值的检测方法具有实现简单的优点,同时,数据处理不需要复杂的算法,实时性好。然而,这种检测方法通常只依赖于几个指标,因此在实际网络中很容易将正常的随机突发误认为攻击。此外,这些方法的结果对检测阈值的选择也很敏感。阈值会随着网络场景的发生而产生相应的变化,否则会严重影响准确的检测概率。基于特征的检测方法的本质是建立一个分类器对正常流和攻击流进行分类。一般采用统计分析、神经网络、支持向量机等方法对攻击特征进行处理,进一步建立检测模型。R.Braga等人提出了一种基于流量6元组特征的DDoS攻击检测的轻量级方法。他们使用自组织映射(SOM)将网络流量分为正常和异常。实验结果表明,该方法具有较好的检测效果。T.Wang等人提出了一种SDN安全卫士(SGuard)体系结构来识别来自正常流量的攻击。该分类模块由数据采集器、特征提取器和分类器组成。他们使用Mininet在软件环境中评估SGuard。结果表明SGuard是一种轻量级高效的软件。J.Zheng等人提出了RADAR(实时增强反DDoS行为),通过建立在未修改的商用(COTS)SDN交换机上的自适应相关分析来检测和抑制DDoS攻击。他们考虑了三个特征(链路利用率、拥塞链路数量和拥塞持续时间)来识别可疑流,然后通过自适应相关分析来定位攻击者(或受害者)并节流攻击流量。
与基于阈值的检测相比,基于特征的检测具有检测精度高、错检率低的优点。然而,现有的大多数方法主要是检测由多个欺骗IP源发起的新型DoS攻击(N-DoS),不能检测由一个IP源发起的传统DoS攻击(T-DoS)。
发明内容
为了解决上述问题,本发明的目的在于提供一种基于流表特征的拒绝服务攻击检测方法。
为了达到上述目的,本发明提供的基于流表特征的拒绝服务攻击检测方法包括按顺序进行的下列步骤:
1)利用软件定义网络控制器从软件定义网络交换机流表中提取出源IP地址熵、流表相似度、最大匹配数据包增长率以及空闲时间表相似度共四个流表特征;
2)采用三层BP神经网络建立攻击分类器,输入层由4个输入神经元组成,分别对应上述源IP地址熵、流表相似性、最大匹配数据包增长率和空闲时间表相似度四个流表特征,由这些流表特征组成训练集对攻击分类器进行训练,输出层由三个神经元组成,分别表示正常流、T-DoS攻击流和N-DoS攻击流,由此识别出N-DoS攻击和T-DoS攻击;在BP算法中,选择sigmoidal函数作为激活函数,权值由Levenberg Marquardt算法调整。
在步骤1)中,所述的提取源IP地址熵的方法如下:
设n为流表中流表项的个数,k为流表中源IP地址的个数,xi为第i个源地址IP所对应的流表项的个数,pxi=xi/n表示第i个源地址IP地址所对应的流表项的概率,则源IP地址熵表示为:
Figure BDA0001999402240000031
在步骤1)中,所述的提取流表相似度的方法如下:
设fe(IPsrc,IPdst,Portsrc,Portdst,Protocol)表示包含五个流表特征的流条目,分别是源IP地址、目的IP地址、源端口、目的端口以及协议号,ft={fe1,fe2…fen}为由所有流条目所组成的集合即流表;流表相似度定义如下:
SFT=FSFT(fti,fti+1), (2)
其中FSFT函数的算法功能是计算i时刻的流表fti和i+1时刻的流表fti+1的相似度,该函数的输入是i时刻的流表fti和i+1时刻的流表fti+1,输出为i时刻的流表fti和i+1时刻的流表fti+1的相似度;设变量l为i时刻的流表fti和i+1时刻的流表fti+1的长度和,fts表示i时刻的流表fti和i+1时刻的流表fti+1长度短的集合,ftl为长度长的集合,相似计数器similarity_count初值为0;首先遍历长度短的集合fts,每取出长度短的集合fts中的一个元素后都和长度长的集合ftl中的全部元素进行比对,如果元素相同,即流条目fe相同,相似计数器similarity_count+1加1,直到遍历完长度短的集合fts中的所有元素,最终输出的i时刻的流表fti和i+1时刻的流表fti+1的相似度表示为:
Figure BDA0001999402240000041
在步骤1)中,所述的提取最大匹配数据包增长率的方法如下:
设Mi=max(n_packet1,n_packet2…n_packetn)表示n条流表项中最大匹配数据包个数,Mi+1表示下一个时间间隔Δt之后的最大匹配数据包个数,则最大匹配数据包增长率表示为:
Figure BDA0001999402240000042
在步骤1)中,所述的提取空闲时间表相似度的方法如下:
提取空闲时间表相似度的方法由两个步骤组成:首先是对所有的流条目进行转化和计算;ft’表示包含空闲时间属性的流条目fe’的集合即流表,首先在滑动窗口tw时间内,以时间间隔ta对流表ft’进行转换,转换公式表示为:
iat=Transform(ft’) (5)
Transform函数的算法是首先遍历采样后的流表ft’,对每一个流条目fe’进行计算,如果该流条目的空闲时间间隔idle_age=0,则将此流条目fe’添加到集合iat中,由此将该时刻所有空闲时间间隔为0的流条目组成了一个新的流表;
第二步是处理和对比所有采样后的流表iat,从中计算出空闲时间表相似度,公式如下:
SIAT=FSIAT(iat) (6)
FSIAT函数的算法是首先找出提取的n个流表iat中长度最短的集合fts,相似度初始值为0;遍历长度最短的集合fts,如果长度最短的集合fts中的流条目fe’存在于所有时刻的流表iat中,则相似度Similarity+1,最终得到流表的空闲时间表相似度;空闲时间表相似度表示在滑动窗口tw期间,持续存在的空闲时间间隔idle_age=0的流条目数量;在正常情况下空闲时间表相似度的值将保持为零,因为空闲时间表随时间的推移具有随机性;但是,当遭受T-DoS攻击时,所有攻击包都由相同的流条目转发,空闲时间间隔idle_age=0的流条目持续存在而进一步导致空闲时间表相似度大于零。
本发明提供的基于流表特征的拒绝服务攻击检测方法具有如下有益效果:通过多个流表特征对网络中的流量进行攻击检测,可以很好地区分网络中的合法突发流和DoS攻击流,可以同时检测出传统的拒绝服务攻击和新型的拒绝服务攻击两种模式的攻击,检测精度与现有方法相比有所提高且运算复杂度更低,同时虚警率和漏警率也优于现有方法。
附图说明
图1为SIAT计算流程图。
图2为BP神经网络模型图。
图3为实验拓扑图。
图4为基于ESIPs特征的测试结果图。
图5为基于SFT特征的测试结果图。
图6为基于GRMMP特征的测试结果图。
图7为基于SIAT特征的测试结果图。
图8为受到N-DoS攻击时分类器的分类效果。
图9为受到T-DoS攻击时分类器的分类效果。
图10为受到T-DoS和N-DoS混合攻击时分类器的分类效果。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
本发明提供的基于流表特征的拒绝服务攻击检测方法包括按顺序进行的下列步骤:
1)利用软件定义网络控制器从软件定义网络(SDN)交换机流表中提取出源IP地址熵(EIPs)、流表相似度(SFT)、最大匹配数据包增长率(GRMMP)以及空闲时间表相似度(SIAT)共四个流表特征;
源IP地址熵(EIPs):
针对攻击者常利用欺骗源IP构造大量新的数据包,使攻击难以检测的特点,本发明从SDN交换机流表中提取出源IP地址熵进行DoS攻击流检测,该熵值可以很好地体现一个系统的集散程度,当大量的欺骗源IP地址的流涌来时,源IP地址会变得分散,熵值也会随之增大。设n为流表中流表项的个数,k为流表中源IP地址的个数,xi为第i个源地址IP所对应的流表项的个数,pxi=xi/n表示第i个源地址IP地址所对应的流表项的概率,则源IP地址熵表示为:
Figure BDA0001999402240000071
当网络遭受N-DoS攻击时,源IP地址熵的值会随着源IP地址的分散而显著增加。
流表相似度(SFT):
源IP地址熵只考虑流表中目标IP地址这一个元素。在这里,本发明从全局的角度进一步考虑流表随时间的相关性。在正常情况下,流表具有稳定的流条目分布,以至于流表不会随着时间改变而发生很大变化。然而,N-DoS攻击会导致流表中存储许多新的流条目,流表会随着时间而显著变化。因此,本发明将流表相似度作为N-DoS攻击流的检测特征。设fe(IPsrc,IPdst,Portsrc,Portdst,Protocol)表示包含五个流表特征的流条目,分别是源IP地址、目的IP地址、源端口、目的端口以及协议号,ft={fe1,fe2…fen}为由所有流条目所组成的集合即流表。流表相似度定义如下:
SFT=FSFT(fti,fti+1), (2)
其中FSFT函数的算法功能是计算i时刻的流表fti和i+1时刻的流表fti+1的相似度,该函数的输入是i时刻的流表fti和i+1时刻的流表fti+1,输出为i时刻的流表fti和i+1时刻的流表fti+1的相似度。设变量l为i时刻的流表fti和i+1时刻的流表fti+1的长度和,fts表示i时刻的流表fti和i+1时刻的流表fti+1长度短的集合,ftl为长度长的集合,目的是将i时刻的流表fti和i+1时刻的流表fti+1区分开,相似计数器similarity_count初值为0。首先遍历长度短的集合fts,每取出长度短的集合fts中的一个元素后都和长度长的集合ftl中的全部元素进行比对,如果元素相同,即流条目fe相同,相似计数器similarity_count+1加1,直到遍历完长度短的集合fts中的所有元素,最终输出的i时刻的流表fti和i+1时刻的流表fti+1的相似度表示为:
Figure BDA0001999402240000081
当网络受到N-DoS攻击时,大量的欺骗IP流流入网络,流表中会增加许多没有出现过的流条目,因此流表相似度显著下降。
最大匹配数据包增长率(GRMMP):
本发明通过源IP地址和流表相似度两个流表特征可以很好地检测出网络中的N-DoS攻击。但是,网络中不仅存在着N-DoS攻击,还存在一个由IP地址发起的,用于压倒某个受害主机的T-DoS攻击。为了检测出T-DoS攻击流,本发明首先将最大匹配数据包增长率作为T-DoS攻击的检测特征。当攻击者启动T-DoS攻击时,大量的数据包将与攻击流条目匹配,因此该流条目转发的数据包数量将迅速增加。为了计算最大匹配数据包增长率,本发明设Mi=max(n_packet1,n_packet2…n_packetn)表示n条流表项中最大匹配数据包个数,Mi+1表示下一个时间间隔Δt之后的最大匹配数据包个数,则最大匹配数据包增长率表示为:
Figure BDA0001999402240000082
如上所示,在T-DoS攻击期间,最大匹配数据包增长率将会保持一个很高的值。
空闲时间表相似度(SIAT):
除最大匹配数据包增长率之外,本发明将空闲时间表相似度作为T-DoS攻击的检测特征。空闲时间表相似度是在流表相似度基础上增加了一个空闲时间间隔idle_age.属性,流条目表示为fe’(IPsrc,IPdst,Portsrc,Portdst,Protocol,idle_age),其中idle_age表示相同流条目匹配的时间间隔转发数据包之间的空闲时间间隔,在空闲时间间隔idle_age小于1的流条目持续存在情况下,系统很有可能受到了T-DoS攻击。提取空闲时间表相似度的方法由两个步骤组成:首先是对所有的流条目进行转化和计算,采样流程如图1所示。ft’表示包含空闲时间属性的流条目fe’的集合即流表,首先在滑动窗口tw时间内,以时间间隔ta对流表ft’进行转换,转换公式表示为:
iat=Transform(ft’) (5)
Transform函数的算法是首先遍历采样后的流表ft’,对每一个流条目fe’进行计算,如果该流条目的空闲时间间隔idle_age=0,则将此流条目fe’添加到集合iat中,由此将该时刻所有空闲时间间隔为0的流条目组成了一个新的流表。
第二步是处理和对比所有采样后的流表iat,从中计算出空闲时间表相似度,公式如下:
SIAT=FSIAT(iat) (6)
为了减少运算量,FSIAT函数的算法是首先找出提取的n个流表iat中长度最短的集合fts,相似度初始值为0。遍历长度最短的集合fts,如果长度最短的集合fts中的流条目fe’存在于所有时刻的流表iat中,则相似度Similarity+1,最终得到流表的空闲时间表相似度。空闲时间表相似度表示在滑动窗口tw期间,持续存在的空闲时间间隔idle_age=0的流条目数量。在正常情况下空闲时间表相似度的值将保持为零,因为空闲时间表随时间的推移具有随机性。但是,当遭受T-DoS攻击时,所有攻击包都由相同的流条目转发,空闲时间间隔idle_age=0的流条目持续存在而进一步导致空闲时间表相似度大于零。
2)采用三层BP神经网络建立攻击分类器,输入层由4个输入神经元组成,分别对应上述源IP地址熵、流表相似性、最大匹配数据包增长率和空闲时间表相似度四个流表特征,由这些流表特征组成训练集对攻击分类器进行训练,输出层由三个神经元组成,分别表示正常流、T-DoS攻击流和N-DoS攻击流,由此识别出N-DoS攻击和T-DoS攻击;在BP算法中,选择sigmoidal函数作为激活函数,权值由Levenberg Marquardt算法调整。
BP神经网络由于其非线性映射特性和良好的自学习能力,目前已被广泛应用于入侵领域的综合分类器。本发明采用三层BP神经网络建立攻击分类器,模型如图2所示。输入层由四个输入神经元组成,分别对应上述源IP地址、流表相似性、最大匹配数据包增长率和空闲时间表相似度四个流表特征,由多组这些流表特征组成训练集对攻击分类器进行训练。输出层由三个神经元组成,分别表示正常流、T-DoS攻击流和N-DoS攻击流。在BP算法中,本发明选择sigmoidal函数作为激活函数。此外,权值由Levenberg Marquardt算法调整,以尽可能快地减少输出的期望值和实际值之间的误差平方和。这个过程会一直重复下去,直到训练集的输出与BP神经网络的输出之间的误差达到容限或者达到训练次数的最大值。此外,隐藏神经元数量表示如下:
Figure BDA0001999402240000101
q和t表示输入神经元和输出神经元数量。
为了验证本发明方法的检测效果,本发明通过搭建mininet实验环境来证明。实验拓扑图如图3所示,其中,有1个控制器,2个交换机,1个攻击端,2个客户端,控制器由支持openflow1.3协议的Ryu控制器组成,交换机由OVS 2.5.0组成。正常流量由h1和DITG(Distributed Internet traffic Generator)生成。本发明使用Python工具Scapy在h2中生成N-Dos和T-Dos流量,并将它们发送到h3。实验主要验证:1、基于源IP地址熵、基于流表相似性、基于最大匹配数据包增长率以及基于空闲时间表相似度等四个流表特征检测的检测性能;2、基于上述四种流表特征的BP神经网络分类器的分类效果;3、本发明与现有方法相比的优势。
1、基于四种流表特征的检测性能
在客户端h1持续发送正常流量的情况下,由h2使用scapy工具向h3发送N-DoS攻击流和T-DoS攻击流。本发明每秒收集一次流表信息并提取流表特征,20个ESIPs测试结果如图4所示。在图4中,正常流量和T-DoS攻击流的熵值保持在0.95左右,N-DoS攻击流的熵值一开始急剧增加,然后保持在2.4左右。20个SFT测试结果如图5所示,在图5中,正常流量和T-DoS攻击流的SFT值保持在0.85~0.95之间,N-DoS攻击流的SFT值在开始时减弱,最后保持在0.55左右。从图4和图5可以看出,利用ESIPs和SFT流表特征可以有效识别N-DoS攻击流。
在检测T-DoS攻击流方面,本发明首先以Δt=1s的时间间隔提取最大匹配数据包增长率,最大匹配数据包增长率的测试结果如图6所示。在图6中,最大匹配数据包增长率在正常流量和N-DoS攻击流的情况下都非常低,但在T-DoS攻击流的情况下一直保持一个较高的值。在提取SIAT方面,滑动窗口tw是一个重要参数,滑动窗口tw太小会导致由于缺乏足够的统计信息而将正常流量视为T-DoS攻击流,滑动窗口tw过大(当它超过流表的空闲超时时)则导致将T-DoS攻击流判定为正常流量,因为一旦超时计时器溢出,Openflow将删除不匹配的流条目。在这里,本发明设置滑动窗口tw=10s,它等于默认的空闲超时,并让滑动窗口tw每次滑动1秒。基于SIAT的测试结果如图7所示,在图7中,正常流量和N-DoS攻击流的SIAT值一直为0,而T-DoS攻击流的SIAT值一直大于0。从图6和图7可以看出,利用GRMMP和SIAT流表特征可以有效识别出T-DoS攻击流。
综上所述,基于上述四种流表特征的检测方法可以有效区分出正常流量、N-DoS攻击流和T-DoS攻击流。
2、基于上述四种流表特征的BP神经网络分类器的分类效果
为了更好地对BP神经网络进行训练和测试,本发明提出三种不同的攻击方案进行训练。方案1:正常后台流量混合N-Dos攻击流。方案2:正常后台流量混入T-Dos攻击流。方案3:混合了N-DoS和T-DoS攻击流的正常后台流量。对于每个方案,本发明选择1000组流表特征作为训练集,400组流表特征作为测试集。学习率的个数、训练目标和最大迭代次数分别为0.01、0.001和500。为了确定隐含层神经元的数量,本发明在达到训练目标的前提下,测试网络均方误差(MSE)的性能和训练次数。不同隐含层神经元数量所对应的MSE性能如下:
Figure BDA0001999402240000121
当h=12时,性能最优。
根据之前提出的BP神经网络理论,分类器输出与分类结果对应关系如下:
当输出结果近似(1,0,0)时,分类结果为正常流;当输出结果近似(0,1,0)时,分类结果为N-DoS攻击流;当输出结果近似(0,0,1)时,分类结果为T-DoS攻击流;当输出结果近似(0,1,1)时,分类结果为T-DoS攻击流和N-DoS攻击流的混合流。
进行实验验证时,本发明依次按照上述提出的三种方案进行攻击。进行方案1测试时,h2在10s后对h3发起N-DoS攻击,每秒采集一次分类器输出,共采集20s。方案1的分类效果图如图8所示,在图8中,分类器的输出在10s后发生了改变,输出由(1,0,0)改变为(0,1,0),分类结果表示h3在10s后受到了N-DoS攻击流,符合实验预期。进行方案2测试时,h2在10s后对h3发起T-DoS攻击。方案2的分类效果图如图9所示,在图9中,分类器的输出在10s后发生了改变,输出由(1,0,0)改变为(0,0,1),分类结果表示h3在10s后受到了T-DoS攻击流,符合实验预期。在方案3中,h2在10s后对h3发起N-DoS和T-DoS的混合攻击。方案3的分类效果图如图10所示,在图10中,分类器的输出在10s后发生了改变,输出由(1,0,0)改变为(0,1,1),分类结果表示h3在10s后受到了N-DoS和T-DoS的混合攻击流,符合实验预期。
综上所述,本发明中基于新流特征的BP神经网络分类器能够准确检测出T-DoS和N-DoS攻击流。
3、本发明与现有方法相比的优势
通过大量的测试,得到了准确的准确率(PD)、虚警率(PFN)和漏检率(PFP)。同时,本发明在实验环境中实现了两种现有的方法,并与本发明方法进行了比较。性能比较表示如下:
Figure BDA0001999402240000131
如表中所示,SOM方法和SGuard方法可用于检测N-DoS攻击流,但不能检测T-Dos攻击流。但是,本发明方法可以同时检测N-DoS和T-DoS攻击流。此外,本发明方法在高准确率、低虚检率和低漏检率方面优于SOM方法和SGuard方法。其主要原因是本发明方法中的流表特征不仅考虑了流表中单个指标的变化,而且从全局上考虑了流表项随时间的相似性。因此,这些流表特征具有更好的分辨率,即不容易与正常流动相混淆。此外,SOM方法和SGurad方法都有两个局限性,一方面与静态架构有关,另一方面与数据的层次关系表示能力有限有关。这两个限制都会影响检测性能。此外,本发明方法比其他两种方法花费的时间更少,这是因为SOM方法和SGuard方法都将6个特征向量传递给了分类器,因此实时使用的分类开销更高。
综上所述,本发明方法与现有方法相比具有一定的优势。

Claims (2)

1.一种基于流表特征的拒绝服务攻击检测方法,其特征在于:所述的方法包括按顺序进行的下列步骤:
1)利用软件定义网络控制器从软件定义网络交换机流表中提取出源IP地址熵、流表相似度、最大匹配数据包增长率以及空闲时间表相似度共四个流表特征;
2)采用三层BP神经网络建立攻击分类器,输入层由4个输入神经元组成,分别对应上述源IP地址熵、流表相似度、最大匹配数据包增长率和空闲时间表相似度四个流表特征,由这些流表特征组成训练集对攻击分类器进行训练,输出层由三个神经元组成,分别表示正常流、传统T-DoS攻击流和新型N-DoS攻击流,由此识别出新型N-DoS攻击和传统T-DoS攻击;在BP算法中,选择sigmoidal函数作为激活函数,权值由Levenberg Marquardt算法调整;
在步骤1)中,所述的提取流表相似度的方法如下:
设fe(IPsrc,IPdst,Portsrc,Portdst,Protocol)表示包含五个流表特征的流条目,分别是源IP地址、目的IP地址、源端口、目的端口以及协议号,ft={fe1,fe2…fen}为由所有流条目所组成的集合即流表;流表相似度定义如下:
SFT=FSFT(fti,fti+1), (2)
其中FSFT函数的算法功能是计算i时刻的流表fti和i+1时刻的流表fti+1的相似度,该函数的输入是i时刻的流表fti和i+1时刻的流表fti+1,输出为i时刻的流表fti和i+1时刻的流表fti+1的相似度;设变量l为i时刻的流表fti和i+1时刻的流表fti+1的长度和,fts表示i时刻的流表fti和i+1时刻的流表fti+1长度短的集合,ftl为长度长的集合,相似计数器similarity_count初值为0;首先遍历长度短的集合fts,每取出长度短的集合fts中的一个元素后都和长度长的集合ftl中的全部元素进行比对,如果元素相同,即流条目fe相同,相似计数器similarity_count+1加1,直到遍历完长度短的集合fts中的所有元素,最终输出的i时刻的流表fti和i+1时刻的流表fti+1的相似度表示为:
Figure FDA0002885660910000021
在步骤1)中,所述的提取最大匹配数据包增长率的方法如下:
设Mi=max(n_packet1,n_packet2…n_packetn)表示n条流表项中最大匹配数据包个数,Mi+1表示下一个时间间隔Δt之后的最大匹配数据包个数,则最大匹配数据包增长率表示为:
Figure FDA0002885660910000022
在步骤1)中,所述的提取空闲时间表相似度的方法如下:
提取空闲时间表相似度的方法由两个步骤组成:首先是对所有的流条目进行转化和计算;ft’表示包含空闲时间属性的流条目fe’的集合即流表,首先在滑动窗口tw时间内,以时间间隔ta对流表ft’进行转换,转换公式表示为:
iat=Transform(ft’) (5)
Transform函数的算法是首先遍历采样后的流表ft’,对每一个流条目fe’进行计算,如果该流条目的空闲时间间隔idle_age=0,则将此流条目fe’添加到集合iat中,由此将该时刻所有空闲时间间隔为0的流条目组成了一个新的流表;
第二步是处理和对比所有采样后的流表iat,从中计算出空闲时间表相似度,公式如下:
SIAT=FSIAT(iat) (6)
FSIAT函数的算法是首先找出提取的n个流表iat中长度最短的集合fts,相似度初始值为0;遍历长度最短的集合fts,如果长度最短的集合fts中的流条目fe’存在于所有时刻的流表iat中,则相似度Similarity+1,最终得到流表的空闲时间表相似度;空闲时间表相似度表示在滑动窗口tw期间,持续存在的空闲时间间隔idle_age=0的流条目数量;在正常情况下空闲时间表相似度的值将保持为零,因为空闲时间表随时间的推移具有随机性;但是,当遭受传统T-DoS攻击时,所有攻击包都由相同的流条目转发,空闲时间间隔idle_age=0的流条目持续存在而进一步导致空闲时间表相似度大于零。
2.根据权利要求1所述的基于流表特征的拒绝服务攻击检测方法,其特征在于:在步骤1)中,所述的提取源IP地址熵的方法如下:
设n为流表中流表项的个数,k为流表中源IP地址的个数,xi为第i个源地址IP所对应的流表项的个数,pxi=xi/n表示第i个源地址IP地址所对应的流表项的概率,则源IP地址熵表示为:
Figure FDA0002885660910000031
CN201910207350.8A 2019-03-19 2019-03-19 一种基于流表特征的拒绝服务攻击检测方法 Active CN110011983B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910207350.8A CN110011983B (zh) 2019-03-19 2019-03-19 一种基于流表特征的拒绝服务攻击检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910207350.8A CN110011983B (zh) 2019-03-19 2019-03-19 一种基于流表特征的拒绝服务攻击检测方法

Publications (2)

Publication Number Publication Date
CN110011983A CN110011983A (zh) 2019-07-12
CN110011983B true CN110011983B (zh) 2021-02-19

Family

ID=67167609

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910207350.8A Active CN110011983B (zh) 2019-03-19 2019-03-19 一种基于流表特征的拒绝服务攻击检测方法

Country Status (1)

Country Link
CN (1) CN110011983B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111600859B (zh) * 2020-05-08 2022-08-05 恒安嘉新(北京)科技股份公司 分布式拒绝服务攻击的检测方法、装置、设备及存储介质
CN113268735B (zh) * 2021-04-30 2022-10-14 国网河北省电力有限公司信息通信分公司 分布式拒绝服务攻击检测方法、装置、设备和存储介质
CN113596001B (zh) * 2021-07-19 2023-04-28 中移(杭州)信息技术有限公司 DDoS攻击检测方法、装置、设备及计算机可读存储介质
CN115250193B (zh) * 2021-12-22 2024-02-23 长沙理工大学 一种面向SDN网络的DoS攻击检测方法、装置及介质
CN114906345B (zh) * 2022-07-18 2022-10-04 中国民航大学 一种飞机集中除冰方法、系统、除冰车及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105162759A (zh) * 2015-07-17 2015-12-16 哈尔滨工程大学 一种基于网络层流量异常的SDN网络DDoS攻击检测方法
CN106657107A (zh) * 2016-12-30 2017-05-10 南京邮电大学 一种SDN中基于信任值的自适应启动的ddos防御方法和系统
CN107566192A (zh) * 2017-10-18 2018-01-09 中国联合网络通信集团有限公司 一种异常流量处理方法及网管设备
CN108173812A (zh) * 2017-12-07 2018-06-15 东软集团股份有限公司 防止网络攻击的方法、装置、存储介质和设备
CN108833376A (zh) * 2018-05-30 2018-11-16 中国人民解放军战略支援部队信息工程大学 面向软件定义网络的DoS攻击检测方法
CN108848095A (zh) * 2018-06-22 2018-11-20 安徽大学 SDN环境下基于双熵的服务器DDoS攻击检测与防御方法
CN109005157A (zh) * 2018-07-09 2018-12-14 华中科技大学 一种软件定义网络中DDoS攻击检测与防御方法与系统
CN109120630A (zh) * 2018-09-03 2019-01-01 上海海事大学 一种基于优化BP神经网络的SDN网络DDoS攻击检测方法
CN109274673A (zh) * 2018-09-26 2019-01-25 广东工业大学 一种网络流量异常检测和防御方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101907752B1 (ko) * 2016-10-17 2018-10-12 숭실대학교산학협력단 인공지능을 이용하여 DDoS 공격을 탐지하는 소프트웨어 정의 네트워크 및 이에 포함되는 컨트롤러

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105162759A (zh) * 2015-07-17 2015-12-16 哈尔滨工程大学 一种基于网络层流量异常的SDN网络DDoS攻击检测方法
CN106657107A (zh) * 2016-12-30 2017-05-10 南京邮电大学 一种SDN中基于信任值的自适应启动的ddos防御方法和系统
CN107566192A (zh) * 2017-10-18 2018-01-09 中国联合网络通信集团有限公司 一种异常流量处理方法及网管设备
CN108173812A (zh) * 2017-12-07 2018-06-15 东软集团股份有限公司 防止网络攻击的方法、装置、存储介质和设备
CN108833376A (zh) * 2018-05-30 2018-11-16 中国人民解放军战略支援部队信息工程大学 面向软件定义网络的DoS攻击检测方法
CN108848095A (zh) * 2018-06-22 2018-11-20 安徽大学 SDN环境下基于双熵的服务器DDoS攻击检测与防御方法
CN109005157A (zh) * 2018-07-09 2018-12-14 华中科技大学 一种软件定义网络中DDoS攻击检测与防御方法与系统
CN109120630A (zh) * 2018-09-03 2019-01-01 上海海事大学 一种基于优化BP神经网络的SDN网络DDoS攻击检测方法
CN109274673A (zh) * 2018-09-26 2019-01-25 广东工业大学 一种网络流量异常检测和防御方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
A Machine Learning Approach for Detecting DoS;T. Abhiroop et al.;《2018 Twenty Fourth National Conference on Communications (NCC)》;20180228;全文 *
An Efficient SDN-Based DDoS Attack Detection;Yao Yu et al.;《IEEE Access》;20180709;全文 *
Research on the Aggregation and;Meng Yue et al.;《JOURNAL OF SOFTWARE》;20140731;全文 *
SDN中DDoS攻击检测与流表过载防御技术研究;王晓瑞;《万方学位论文》;20171129;全文 *
一种SDN 中基于熵值计算的异常流量检测方法;王铭鑫 等;《电信科学》;20150930(第9期);全文 *
云计算中基于SAPA的DoS攻击防御方法;岳猛 等;《通信学报》;20170430;全文 *

Also Published As

Publication number Publication date
CN110011983A (zh) 2019-07-12

Similar Documents

Publication Publication Date Title
CN110011983B (zh) 一种基于流表特征的拒绝服务攻击检测方法
Wang et al. An entropy-based distributed DDoS detection mechanism in software-defined networking
Loukas et al. Likelihood ratios and recurrent random neural networks in detection of denial of service attacks
CN108848095B (zh) SDN环境下基于双熵的服务器DDoS攻击检测与防御方法
Mousavi et al. Early detection of DDoS attacks against SDN controllers
Dharma et al. Time-based DDoS detection and mitigation for SDN controller
Hou et al. Machine learning based DDos detection through NetFlow analysis
Vijayasarathy et al. A system approach to network modeling for DDoS detection using a Naive Bayesian classifier
Wu et al. Sequence alignment detection of TCP-targeted synchronous low-rate DoS attacks
CN108289088A (zh) 基于业务模型的异常流量检测系统及方法
Tang et al. Performance and features: Mitigating the low-rate TCP-targeted DoS attack via SDN
Li et al. Detecting saturation attacks based on self-similarity of OpenFlow traffic
Zhang et al. A real-time DDoS attack detection and prevention system based on per-IP traffic behavioral analysis
Hong et al. Dynamic threshold for DDoS mitigation in SDN environment
MohanaPriya et al. Restricted Boltzmann machine based detection system for DDoS attack in software defined networks
Dang-Van et al. A multi-criteria based software defined networking system Architecture for DDoS-attack mitigation
CN112422584A (zh) 一种基于深度学习的DDoS攻击回溯抵御方法
Gharvirian et al. Neural network based protection of software defined network controller against distributed denial of service attacks
Cheng et al. A change-point DDoS attack detection method based on half interaction anomaly degree
CN110336806B (zh) 一种结合会话行为和通信关系的隐蔽通信检测方法
JP2008118242A (ja) 異常トラヒック検出方法およびその装置およびプログラム
Zhai et al. Distributed denial of service defense in software defined network using openflow
Lai et al. F1ow-based anomaly detection using multilayer perceptron in software defined networks
Ozcelik et al. DoS detection is easier now
Saiyed et al. Entropy and divergence-based DDoS attack detection system in IoT networks

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