CN112261021B - 软件定义物联网下DDoS攻击检测方法 - Google Patents

软件定义物联网下DDoS攻击检测方法 Download PDF

Info

Publication number
CN112261021B
CN112261021B CN202011102564.8A CN202011102564A CN112261021B CN 112261021 B CN112261021 B CN 112261021B CN 202011102564 A CN202011102564 A CN 202011102564A CN 112261021 B CN112261021 B CN 112261021B
Authority
CN
China
Prior art keywords
network
things
network flow
window
data packet
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
CN202011102564.8A
Other languages
English (en)
Other versions
CN112261021A (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.)
Beijing Jiaotong University
Original Assignee
Beijing Jiaotong University
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 Beijing Jiaotong University filed Critical Beijing Jiaotong University
Priority to CN202011102564.8A priority Critical patent/CN112261021B/zh
Publication of CN112261021A publication Critical patent/CN112261021A/zh
Application granted granted Critical
Publication of CN112261021B publication Critical patent/CN112261021B/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
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供了一种软件定义物联网下DDoS攻击检测方法,包括:通过软件定义物联网的控制器周期性的收集软件定义物联网交换机中的数据包头信息;根据五元组对数据包头信息进行数据预处理分成不同的网络流;利用CNN算法对预处理后的数据进行检测,根据检测结果识别网络中的DDoS攻击。本方法可以识别出网络中的DDoS攻击,为SD‑IoT网络响应做出判定,为软件定义物联网提供安全保障,提高了软件定义物联网的安全性与可靠性。

Description

软件定义物联网下DDoS攻击检测方法
技术领域
本发明涉及网络安全技术领域,尤其涉及一种软件定义物联网下DDoS攻击检测方法。
背景技术
近年来,网络安全问题变得越来越重要。DDoS(Distributed Denial of Service,分布式拒绝服务)攻击对互联网安全构成了极大的威胁。DDoS攻击者有目的地向受害者发送大量恶意请求,目的是耗尽受害者的计算资源,如CPU和内存,迫使受害者拒绝向合法用户提供服务。随着雇佣攻击服务的激增和启用物联网(IoT,Internet of Things)的僵尸网络的出现,DDoS攻击在数量、频率、复杂程度和影响方面都有了显著地增长。它们已经演变成对服务提供商和网络运营商造成破坏性以及强大的附带损害。2016年10月,Mirai僵尸网络命令大量的物联网设备对动态域名服务器(Dyn DNS,Dynamic Domain Name Server)基础设施进行DDoS攻击,结果会导致许多流行的互联网服务在数小时内不可用,如亚马逊、推特和GitHub。这个攻击被认为是有史以来最大的DDoS攻击,峰值流量是1.35Tbps。随着不安全的物联网设备数量的快速增长,到2020年年底,估计将有500亿个连接设备,可以增强和促进大规模攻击的能力。目前,物联网设备已成为DDoS攻击增长的主要来源,图1为利用软件定义物联网的结构,攻击者开展对软件定义物联网架构的DDoS攻击示意图,参照图1,DDoS攻击发起者首先利用互联网用户的漏洞,收集大量的傀儡机,然后协同调度这些傀儡机同时伪造数据,发送非法请求导致目标主机瘫痪。DDoS攻击主要分为两种类型:带宽消耗型和资源消耗型,带宽消耗型攻击通过发送大量无用的数据包给受害主机或网络,占用网络带宽,从而使正常请求流量不可达;资源消耗型攻击通过消耗目标主机的资源,比如CPU、内存和硬盘等,使目标主机无法回应正常用户的请求。DDoS攻击发起简单且危害性大,由于软件定义物联网的特点,当发生DDoS攻击时不仅危害被攻击主机,还会引发交换机流表项大量增长,产生大量packet_in消息发送到控制器。在这个过程中,软件定义物联网的控制器、被攻击的主机及其所连接的交换机都会受到极大的影响,所以DDoS攻击对于软件定义物联网的危害是巨大的。因此,如何有效地检测DDoS攻击是物联网安全管理过程中迫切需要解决的问题。
新兴网络体系架构软件定义网络(SDN,Software-Defined Networking)的出现,为上述问题的解决提供了新的契机。鉴于SDN在网络管理和安全维护等方面的成功,越来越多的国内外研究学者尝试将其设计理念引入到物联网领域中,提出软件定义物联网(SD-IoT,Software-defined Internet of Things)的架构,SD-IoT的关键特性是将网络控制和转发功能解耦。控制层的SD-IoT控制器通常运行于性能强大的服务器平台,具有集中管理和实时监控的能力,可以将传统物联网、无线传感网络(WSN,Wireless Sensor Network)中难以实现的安全策略和检测机制方便地实现在控制器中,并利用全局拓扑视图实现灵活的攻击响应。交换机、基站、路由器和无线接入点等SD-IoT交换机作为物联网的数据层,仅进行流转发。利用统一南向接口,SD-IoT能够有效应对多种类型的物联网网络协议,简化物联网设备的配置和管理,降低业务实现与运维的成本。这种解耦避免了潜在的操作故障和服务中断,确保物联网设备的持续可用性,可防止未授权访问外围设备,监控和控制改变互联网的设备,在物联网设备上检测到合法和恶意流量模式,并最终降低了风险管理的物联网安全。SDN与物联网网络融合的研究仍处于起步阶段,仍存在许多问题,如网络框架和安全。
现有技术中对DDoS攻击进行检测的方法主要包括基于统计的方法和基于策略的方法。基于统计的方法使用统计相关数据的方法来分析SD-IoT网络流量,以区分正常数据流量和DDoS攻击流量。当SD-IoT交换机接收到用户发送的数据包,首先和交换机内的流表进行匹配,如果匹配成功,则按照流表指示进行下一步动作;如果匹配不成功,则SD-IoT交换机将数据包以Packet-in消息发送给SD-IoT控制器,等待控制器指示进行下一步动作。通过计算Packet-in消息中相应字段的熵值来判定DDoS攻击。如通过SD-IoT控制器计算消息中的目标IP地址的熵值,当目标IP地址的熵值小于阈值,则认为有DDoS攻击。其缺点在于:1)考虑到不同网络之间的流量类型和流量的变化,识别出在不同攻击场景中最小化的假阳性和假阴性率的适当检测阈值是一个很大的挑战;2)基于统计的方法检测信息单一,以及对阈值的不确定,导致检测结果错误率较高。基于策略的检测方案是对流量执行某些策略。如果数据符合这些策略或者规则,则将其视为合法数据,否则将报告为攻击数据。有的方案利用TCP连接状态信息对合法和恶意流量进行分类;有的方案中任何信任值小于指定阈值的源都被视为攻击者。其缺点在于:1)在软件定义物联网中,使用基于策略的方法对DDoS攻击进行检测之前,需要在SD-IoT控制器中安装所有的攻击包特征的策略,是一项巨大的工程;2)当网络中出现新的攻击模式时,系统必须重新提取数据特征,重新安装在SD-IoT控制器中,这种做法效率较低。
因此,亟需一种软件定义物联网下DDoS攻击检测方法。
发明内容
本发明提供了一种软件定义物联网中的DDoS攻击检测方法,以解决现有技术问题中的缺陷。
为了实现上述目的,本发明采取了如下技术方案。
本实施例提供一种软件定义物联网下DDoS攻击检测方法,包括:
通过软件定义物联网的控制器周期性的收集软件定义物联网交换机中的数据包头信息;
根据五元组对所述的数据包头信息进行数据预处理分成不同的网络流;
利用CNN算法对预处理后的数据进行检测,根据检测结果识别网络中的DDoS攻击。
优选地,利用CNN算法对预处理后的数据进行检测,根据检测结果识别网络中的DDoS攻击,包括:通过历史数据作为训练样本对CNN模型进行训练得到训练好的CNN模型,根据得到的不同的网络流选取网络流特征,并将所述网络流特征输入至训练好的CNN模型中,得到激活函数值,根据所述激活函数值识别网络中的DDoS攻击。
优选地,根据得到的不同的网络流选取网络流特征,并将所述网络流特征输入至训练好的CNN模型中,包括:把处理后的所有的网络流中的数据包头作为一个整体,以一定个数的数据包头作为一个窗口,如果一个窗口中的子网络流的条数如果小于CNN模型中输入网络流特征的条数,则提取每个子网络流的6个特征,剩余的网络流特征补零,作为CNN模型的输入;如果一个窗口中的子网络流的条数等于CNN模型中输入网络流特征的条数,则将一个窗口中的子网络流特征组成作为CNN模型的输入;如果一个窗口中的子网络流的条数大于CNN模型中输入网络流特征的条数,则将一个窗口中的子网络流特征分批次依次作为CNN模型的输入,直至窗口的网络流条数输入完毕。
优选地,通过软件定义物联网的控制器周期性的收集软件定义物联网交换机中的数据包头信息,包括:软件定义物联网控制器每6秒收集一次软件定义物联网交换机中的数据包头信息。
优选地,一定个数为250个。
优选地,五元组为源IP,源端口,目的IP,目的端口和协议。
优选地,提取每个子网络流的6个特征,包括提取每个子网络流的包数、每个子网络流的字节数、每个子网络流的字节数、流速率、源IP地址和目的IP地址。
优选地,CNN模型的结构为3C2P2F。
优选地,CNN模型中输入网络流特征的条数为20。
优选地,根据所述激活函数值识别网络中的DDoS攻击,包括:将激活函数值σ(x)限制为0到1之间的值,得到返回给定流为恶意DDoS攻击的概率p∈[0,1],当p>0.5时,网络流被识别为DDoS攻击流,否则为正常流,其中,p值是数据包头窗口中被检测为是DDoS攻击流与数据包头窗口中所有网络流的比值。
由上述本发明的软件定义物联网下DDoS攻击检测方法提供的技术方案可以看出,本发明通过软件定义物联网的控制器周期性的收集软件定义物联网交换机中的数据包头,具有较低的处理开销;根据五元组分成不同的网络流,提取每个网络流的流特征进行检测,相比于检测每个数据包,属于轻量级DDoS攻击检测;对收集到的数据包头进行数据预处理,然后利用CNN算法进行检测,识别网络中的DDoS攻击,为SD-IoT网络响应做出判定,为软件定义物联网提供安全保障,提高了软件定义物联网的安全性与可靠性,利用CNN来学习DDoS的行为和良性流量,比机器学习算法提高了检测准确性。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为利用软件定义物联网的结构,攻击者开展对软件定义物联网架构的DDoS攻击示意图;
图2为本实施例提供的软件定义物联网下DDoS攻击检测方法流程示意图;
图3为CNN模型示意图;
图4为范例1的场景示意图;
图5为范例2的4种CNN模型的混淆矩阵示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以具体实施例为例做进一步的解释说明,且并不构成对本发明实施例的限定。
实施例
图2为本实施例提供的软件定义物联网下DDoS攻击检测方法流程示意图,参照图2,该方法包括:
S1通过软件定义物联网的控制器周期性的收集软件定义物联网交换机中的数据包头信息。
软件定义物联网的控制器通过设置会向交换机发送指令来收集数据包头。收集数据包头的时间间隔的选定非常重要。如果时间间隔过长,则检测到攻击将存在延迟,因此将减少可用于缓解的可用时间。另一方面,如果收集的时间间隔太短,则会增加请求数据包头的流量,这将导致检测机制的开销增加。本实施例优选软件定义物联网控制器每6秒收集一次软件定义物联网交换机中的数据包头信息。
S2根据五元组对所述的数据包头信息进行数据预处理分成不同的网络流。
其中,五元组为源IP,源端口,目的IP,目的端口和协议。
网络流通常被描述为共享相同信息的数据包序列<源IP,源端口,目的IP,目的端口,协议>。从形式上讲,由N个数据包组成的网络流可以被描述为一个序列:S={f(1),p(2),...,p(i),...,p(N)},其中p(i)(1≤i≤N)代表流S的第i个包。每个包
Figure BDA0002725889890000071
都是m维向量。例如,数据包头中有源IP地址,目的IP地址等信息。获取数据包头以后,根据五元组<源IP,源端口,目的IP,目的端口,协议>把数据包头分成不同的网络流。
S3利用卷积神经网络(CNN,Convolutional Neural Networks)算法对预处理后的数据进行检测,根据检测结果识别网络中的DDoS攻击。
通过历史数据作为训练样本对CNN模型进行训练得到训练好的CNN模型,根据得到的不同的网络流选取网络流特征,并将所述网络流特征输入至训练好的CNN模型中,得到激活函数值,根据所述激活函数值识别网络中的DDoS攻击。
把处理后的所有的网络流中的数据包头作为一个整体,以一定个数的数据包头作为一个窗口,如果一个窗口中的子网络流的条数如果小于CNN模型中输入网络流特征的条数,则提取每个子网络流的6个特征,剩余的网络流特征补零,作为CNN模型的输入;如果一个窗口中的子网络流的条数等于CNN模型中输入网络流特征的条数,则将一个窗口中的子网络流特征组成作为CNN模型的输入;如果一个窗口中的子网络流的条数大于CNN模型中输入网络流特征的条数,则将一个窗口中的子网络流特征分批次依次作为CNN模型的输入,直至窗口的网络流条数输入完毕。示意性地,把处理后的所有的网络流中的数据包头作为一个整体,假设共有A个数据包头。在这A个数据包头中,以n个数据包头为一个窗口,一个窗口中有h个子网络流。本实施例中选择以250个数据包头为一个窗口,也就是n为250,如果h<x,则提取每个子网络流的6个特征,其余x-h个网络流特征补零,作为CNN的输入;如果h=x,则将一个窗口中的子网络流特征组成作为CNN模型的输入;如果h>x,则将一个窗口中的子网络流特征分批次依次作为CNN模型的输入,直至窗口的网络流条数输入完毕。这里的x指的是CNN模型中输入网络流特征的条数。
本实施例优选250个数据包头作为一个窗口。CNN模型的结构为3C2P2F。CNN模型中输入网络流特征的条数为20。
DDoS攻击者可以使用多种攻击手段和方法,但大多数攻击流量都遵循某些规则,因此,可以使用流特征进行检测。例如,发生DDoS攻击时,主要的攻击方式是源IP地址欺骗,这会使源IP更加分散。根据攻击流量的特征,并针对SDN架构的网络特征。通过以上分析,本实施例提取每个子网络流的6个特征如下:
1)每个子流的包数(NPf)
2)每个子流的字节数(DNf)
3)每个子流的持续时间(DNf)
4)流速率(RNf)
5)源IP地址(SIP)
6)目的IP地址(DIP)
因为正常流量和攻击流量的特点不同。因此,攻击检测可以看作是检测当前网络是否正常的一个分类问题。
图3为CNN模型示意图,参照图3:CNN的基本结构包括输入层、卷积层、池化层、全连接层和输出层。输入层用于接收多维数据,卷积层从数据输入中提取特征。特征的数量可以通过改变卷积核、步骤和填充参数来控制;池化层通过改变池化大小、步长和填充参数来减少数据量,从而进一步简化了功能;全连接层对特征进行非线性组合和分类;最后输出层输出分类结果。
输入层:如前所述,每个网络流都按照数据预处理方式进行处理,并被重塑成一个包含流特征的二维矩阵,从而创建了一个新的空间表示,使CNN能够学习流之间的相关性。因此,CNN的输入是h×f的矩阵F,F包含窗口中h个子网络流向量,F={flow1,flow2,...,flowh},flowh是窗口中第h个子网络流,每个子网络流有f个特征值。
CNN层:每个输入矩阵F由一个卷积层操作,有k个大小为h×i的滤波器,其中h为每个滤波器的长度。滤波器也被称为内核或者滑动窗口,对F进行卷积,以提取和学习包含有用信息的局部特征,用于检测DDoS攻击和正常流。每一个滤波器生成一个大小为(f-i+1)的激活映射,使满足下式(1):
ak=ReLU(Conv(F)Wk,bk) (1)
其中,Wk和bk分别是训练阶段学习到的第k个滤波器的权值和偏置参数。为了在学习过的滤波器中引入非线性,本实施例采用经过修正的线性激活函数,公式如下式(2)所示:
ReLU(x)=max{0,x} (2)
对所有激活映射进行堆叠,创建大小为(f-i+1)×k的激活矩阵。
池化层:对于最大池化层,沿A的第一维进行下采样,该维表示输入的时间性质。一个q大小的池产生一个大小为(f-i+1)/q×k的输出矩阵qo,其中包含每个学习滤波器的最大q个激活函数,因此qo=[max(a1)|...|max(ak)]。通过这种方式,忽略了产生相对较小激活函数值的不太有用的信息,而是关注相对较大的激活函数值。这也意味着需要处理激活的位置信息,即它在原始流中发生的位置,从而提供更压缩的特征编码,进而降低网络的复杂性。然后将qo扁平化,生成最终要输入到分类层的一维特征向量v。
分类层:v输入到相同大小的全连接层,输出层只有一个节点。这个输出x被传递给如下式(3)所示的sigmoid激活函数:
σ(x)=1/(1+e-x) (3)
将激活函数值σ(x)限制为0到1之间的值,得到返回给定流为恶意DDoS攻击的概率p∈[0,1],当p>0.5时,也就是σ(x)>0.5时,网络流被识别为DDoS攻击流,否则为正常流,其中,p值是数据包头窗口中被检测为是DDoS攻击流与数据包头窗口中所有网络流的比值。
以下为应用本实施例方法的范例:
范例1:图4为范例1的场景示意图,如图4所示,攻击者控制僵尸主机向网络中发送DDoS攻击,SD-IoT控制器间隔6秒周期性的提取SD-IoT交换机中的数据包头,进行数据预处理。数据包头根据五元组<源IP,源端口,目的IP,目的端口,协议>被分成不同的网络流。在A个数据包头中,以n个数据包头为一个窗口,一个窗口中有h个子流。我们择以250个数据包头为一个窗口。如果h<x,则提取每个流的6个特征,其余x-h个网络流特征补零,作为CNN的输入。如果h>x,则每h个网络流特征组成CNN的输入。本范例研究不同h值对DDoS检测模型性能的影响。本实施例用h∈{5,10,15,20,25,30}来训练所提出的模型。
通过对训练数据的分析,可以观察到数据包数量大的网络流通常是合法的流。模型可能已经学习了这个特殊的特性,并简单地做出相应的决定。
表1为给出了不同h值训练CNN模型的结果。Ave是平均值。从表1中可以看出,随着h值的增加,允许模型检查更多的网络流。随着h的增加,模型的性能逐渐下降,但下降的幅度不同。检查了25个网络流显著降低了方案的性能。在预定义的包窗口中,网络流较少的包窗口将用零填充。这些填充值可能会混淆系统并导致性能下降。表1的后两列显示了CNN算法在不同的h值下的训练时间(以分钟为单位)和CPU(%)利用率。随着h的增加,训练时间越来越短,CPU使用率越来越大。结合检测性能可以得出,当h为20时,CNN模型的性能最好。
表1不同h值下CNN的性能
Figure BDA0002725889890000111
范例2:图4中的DDoS检测模型用了不同深度的卷积层CNN模型进行实验。实验过程中建立了4种不同深度的CNN模型。采用3层卷积层的神经网络模型(3C2P2F、3C3P2F)效果明显优于采用2层卷积层的神经网络模型(2C2P2F、2C2P3F)。其中,F1分数表示精确度和召回率的调和平均值,能够更准确地评估模型性能,
Figure BDA0002725889890000121
可以看出,3C2P2F模型在精确度、召回率和F1分数上的指标均高于3C3P2F模型,但是在准确度上略低于3C3P2F模型。
表2为比较3C2P2F(3个卷积层,2个最大池化层和3个全连接层)模型和3C3P2F模型的检测效果,通过混淆矩阵分析4种模型。4种CNN模型的混淆矩阵如图5所示。采用2层卷积层的神经网络的模型在判断正常分组和攻击分组的能力上均弱于采用3层卷积层的神经网络的模型。同时3C2P2F模型判断攻击分组的能力(0.99)强于3C3P2F模型(0.98)。考虑到DDoS攻击可能会危害到整个系统的安全性,采用的检测模型必须要对攻击有很强的敏感性,综合考虑,CNN模型采用3C2P2F模型最佳。
表2不同深度的CNN模型
模型 准确率/% 精确率/% 召回率/% F1/%
2C2P2F 98.43 98.89 98.64 98.71
2C2P3F 98.37 98.87 98.51 98.75
3C3P2F 99.07 98.91 98.97 98.87
3C2P2F 99.06 99.11 99.31 98.96
本领域技术人员应能理解,图3仅为简明起见而示出的各类网络元素的数量可能小于一个实际网络中的数量,但这种省略无疑是以不会影响对发明实施例进行清楚、充分的公开为前提的。
本领域技术人员应能理解,上述所举的根据用户信息决定调用策略仅为更好地说明本发明实施例的技术方案,而非对本发明实施例作出的限定。任何根据用户属性来决定调用策略的方法,均包含在本发明实施例的范围内。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (9)

1.一种软件定义物联网下DDoS攻击检测方法,其特征在于,包括:
通过软件定义物联网的控制器周期性的收集软件定义物联网交换机中的数据包头信息;
根据五元组对所述的数据包头信息进行数据预处理分成不同的网络流;
利用CNN算法对预处理后的数据进行检测,根据检测结果识别网络中的DDoS攻击,包括:通过历史数据作为训练样本对CNN模型进行训练得到训练好的CNN模型,根据得到的不同的网络流选取网络流特征,并将所述网络流特征输入至训练好的CNN模型中,得到激活函数值,根据所述激活函数值识别网络中的DDoS攻击。
2.根据权利要求1所述的方法,其特征在于,所述的根据得到的不同的网络流选取网络流特征,并将所述网络流特征输入至训练好的CNN模型中,包括:把处理后的所有的网络流中的数据包头作为一个整体,以一定个数的数据包头作为一个窗口,如果一个窗口中的子网络流的条数小于CNN模型中输入网络流特征的条数,则提取每个子网络流的6个特征,剩余的网络流特征补零,作为CNN模型的输入;如果一个窗口中的子网络流的条数等于CNN模型中输入网络流特征的条数,则将一个窗口中的子网络流特征组成作为CNN模型的输入;如果一个窗口中的子网络流的条数大于CNN模型中输入网络流特征的条数,则将一个窗口中的子网络流特征分批次依次作为CNN模型的输入,直至窗口的网络流条数输入完毕。
3.根据权利要求1所述的方法,其特征在于,所述的通过软件定义物联网的控制器周期性的收集软件定义物联网交换机中的数据包头信息,包括:软件定义物联网控制器每6秒收集一次软件定义物联网交换机中的数据包头信息。
4.根据权利要求2所述的方法,其特征在于,所述的一定个数为250个。
5.根据权利要求1所述的方法,其特征在于,所述五元组为源IP,源端口,目的IP,目的端口和协议。
6.根据权利要求2所述的方法,其特征在于,所述的提取每个子网络流的6个特征,包括提取每个子网络流的包数、每个子网络流的持续时间、每个子网络流的字节数、流速率、源IP地址和目的IP地址。
7.根据权利要求1所述的方法,其特征在于,所述的CNN模型的结构为3C2P2F。
8.根据权利要求2所述的方法,其特征在于,所述的CNN模型中输入网络流特征的条数为20。
9.根据权利要求2所述的方法,其特征在于,所述的根据所述激活函数值识别网络中的DDoS攻击,包括:将激活函数值σ(x)限制为0到1之间的值,得到返回给定流为恶意DDoS攻击的概率p∈[0,1],当p>0.5时,网络流被识别为DDoS攻击流,否则为正常流,其中,p值是数据包头窗口中被检测为是DDoS攻击流与数据包头窗口中所有网络流的比值。
CN202011102564.8A 2020-10-15 2020-10-15 软件定义物联网下DDoS攻击检测方法 Active CN112261021B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011102564.8A CN112261021B (zh) 2020-10-15 2020-10-15 软件定义物联网下DDoS攻击检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011102564.8A CN112261021B (zh) 2020-10-15 2020-10-15 软件定义物联网下DDoS攻击检测方法

Publications (2)

Publication Number Publication Date
CN112261021A CN112261021A (zh) 2021-01-22
CN112261021B true CN112261021B (zh) 2021-08-24

Family

ID=74243299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011102564.8A Active CN112261021B (zh) 2020-10-15 2020-10-15 软件定义物联网下DDoS攻击检测方法

Country Status (1)

Country Link
CN (1) CN112261021B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113242211B (zh) * 2021-04-12 2022-10-25 北京航空航天大学 一种软件定义网络DDoS攻击检测方法
CN117792661A (zh) * 2022-09-20 2024-03-29 中兴通讯股份有限公司 数据流量的访问控制方法、装置、电子设备及存储介质
CN115580480B (zh) * 2022-10-25 2024-04-02 湖南大学 基于卡尔曼滤波和随机森林的fto攻击检测缓解方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106911669A (zh) * 2017-01-10 2017-06-30 浙江工商大学 一种基于深度学习的ddos检测方法
CN109981691A (zh) * 2019-04-30 2019-07-05 山东工商学院 一种面向SDN控制器的实时DDoS攻击检测系统与方法
CN111510433A (zh) * 2020-03-18 2020-08-07 山东大学 一种基于雾计算平台的物联网恶意流量检测方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106656981B (zh) * 2016-10-21 2020-04-28 东软集团股份有限公司 网络入侵检测方法和装置
US11146581B2 (en) * 2018-12-31 2021-10-12 Radware Ltd. Techniques for defending cloud platforms against cyber-attacks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106911669A (zh) * 2017-01-10 2017-06-30 浙江工商大学 一种基于深度学习的ddos检测方法
CN109981691A (zh) * 2019-04-30 2019-07-05 山东工商学院 一种面向SDN控制器的实时DDoS攻击检测系统与方法
CN111510433A (zh) * 2020-03-18 2020-08-07 山东大学 一种基于雾计算平台的物联网恶意流量检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A DDoS Attack Detection Method Based on Information Entropy and Deep Learning in SDN;Lu Wang等;《2020 IEEE 4th Information Technology,Networking,Electronic and Automation Control Conference (ITNEC 2020)》;20200614;第3-4节 *

Also Published As

Publication number Publication date
CN112261021A (zh) 2021-01-22

Similar Documents

Publication Publication Date Title
Yu et al. An efficient SDN-based DDoS attack detection and rapid response platform in vehicular networks
Yang et al. Tree-based intelligent intrusion detection system in internet of vehicles
CN112261021B (zh) 软件定义物联网下DDoS攻击检测方法
Dao et al. Securing heterogeneous IoT with intelligent DDoS attack behavior learning
Phan et al. OpenFlowSIA: An optimized protection scheme for software-defined networks from flooding attacks
Prasad et al. DoS and DDoS attacks: defense, detection and traceback mechanisms-a survey
EP2661049B1 (en) System and method for malware detection
CN108429761B (zh) 智慧协同网络中资源适配解析服务器DDoS攻击检测防御方法
CN110417729B (zh) 一种加密流量的服务与应用分类方法及系统
CN112261007B (zh) 基于机器学习的https恶意加密流量检测方法、系统及存储介质
WO2011154038A1 (en) Traffic classification
JP2008306706A (ja) シグナリングフローの異常を検知する方法及び装置
CN115051836B (zh) 基于sdn的apt攻击动态防御方法及系统
CN111953670A (zh) 基于Meek传输插件的自适应混淆方法、系统及计算机存储介质
MohanaPriya et al. Restricted Boltzmann machine based detection system for DDoS attack in software defined networks
CN116346418A (zh) 基于联邦学习的DDoS检测方法及装置
CN117240560A (zh) 一种基于gan的高仿真蜜罐实现方法及系统
CN108667804B (zh) 一种基于SDN架构的DDoS攻击检测及防护方法和系统
CN106357661B (zh) 一种基于交换机轮换的分布式拒绝服务攻击防御方法
Archibald et al. Disambiguating HTTP: classifying web applications
ASHRAF et al. Intrusion Detection and Prevention System for Secure Multimedia sharing in Future Internet
Rana et al. Automated fast-flux detection using machine learning and genetic algorithms
Lee et al. DDoS attacks detection using GA based optimized traffic matrix
CN115225301B (zh) 基于d-s证据理论的混合入侵检测方法和系统
Bishnoi et al. A deep learning-based methodology in fog environment for DDOS attack detection

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