CN114760087B - 软件定义工业互联网中的DDoS攻击检测方法及系统 - Google Patents

软件定义工业互联网中的DDoS攻击检测方法及系统 Download PDF

Info

Publication number
CN114760087B
CN114760087B CN202210158491.7A CN202210158491A CN114760087B CN 114760087 B CN114760087 B CN 114760087B CN 202210158491 A CN202210158491 A CN 202210158491A CN 114760087 B CN114760087 B CN 114760087B
Authority
CN
China
Prior art keywords
network
data
data packet
address
flow
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
CN202210158491.7A
Other languages
English (en)
Other versions
CN114760087A (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 Research Institute of Auotomation for Machinery Industry Co Ltd
Beijing Jiaotong University
Original Assignee
Beijing Research Institute of Auotomation for Machinery Industry Co Ltd
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 Research Institute of Auotomation for Machinery Industry Co Ltd, Beijing Jiaotong University filed Critical Beijing Research Institute of Auotomation for Machinery Industry Co Ltd
Priority to CN202210158491.7A priority Critical patent/CN114760087B/zh
Publication of CN114760087A publication Critical patent/CN114760087A/zh
Application granted granted Critical
Publication of CN114760087B publication Critical patent/CN114760087B/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/1425Traffic logging, e.g. anomaly 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/142Denial of service attacks against network infrastructure

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攻击流量和正常流量,能高效、快速地对DDoS攻击进行检测和响应,并对网络波动、大量正常网络流量的情况有一定的判断能力,在一定程度上弥补了软件定义工业互联网下对DDoS攻击检测方法的不足。

Description

软件定义工业互联网中的DDoS攻击检测方法及系统
技术领域
本申请涉及网络安全技术领域,尤其涉及一种软件定义工业互联网中的DDoS攻击检测方法及系统。
背景技术
近年来,互联网、无线接入技术和智能终端技术极大地推动了工业互联网的发展。对于工业互联网来说,工业生产中的核心控制节点、众多工业设备会连接在互联网中,因此整个工业控制系统中的安全漏洞也会暴露在互联网上。这些安全漏洞很容易成为攻击的对象,一旦发生安全事件会造成较大的工业损失,甚至危害国家信息安全。
分布式拒绝服务攻击DDoS(Distributed denial of service)是当今网络中一种常见的攻击方式,其实施简单且危害巨大。DDoS攻击能在短时间内形成非常高的网络流量,瞬间占据目标网络的带宽,耗尽网络的系统资源,从而使目标网络无法提供正常的服务。DDoS攻击对工业互联网的危害十分严重,对于传统网络中的DDoS攻击方式仍适用于工业互联网,但传统的检测和防护方法却不能应用于新型网络架构的工业互联网中,缺少相应的检测方法。
发明内容
有鉴于此,本申请的目的在于提出一种软件定义工业互联网中的DDoS攻击检测方法及系统。
基于上述目的,本申请提供了一种软件定义工业互联网中的DDoS攻击检测方法,包括:
获取SDN网络节点的网络流量数据包,并对所述数据包进行信息提取,以得到数据信息;
对所述数据信息进行异常检测,得到异常检测结果;
响应于确定所述异常检测结果小于预设阈值,基于所述数据包计算所述网络节点的网络流量的余弦相似度;
响应于确定所述余弦相似度超过预设相似度阈值,将缓冲队列长度加1;
响应于确定所述缓冲队列长度达到预设长度,则所述网络节点的网络流量为DDoS攻击流量。
基于同一发明构思,本公开还提供了一种软件定义工业互联网中的DDoS攻击检测系统,自下而上依次包括工业设施层、数据转发层和控制层,
所述工业设施层包括多个网络节点,多个所述网络节点在该层进行数据交换;同时,接收来自所述数据转发层的策略响应并执行。
所述数据转发层通过交换机接收所述网络节点产生的网络流量数据并对其进行流表项匹配,响应于确定所述网络流量数据与流表项匹配,将该网络流量数据进行封装生成数据包并发送至所述控制层;同时,接收来自所述控制层的策略,生成所述策略响应并下发至所述工业设施层;
所述控制层接收所述数据包,对所述数据包实施如上所述的攻击检测方法,根据攻击检测结果生成所述策略并下发至所述数据转发层。
基于同一发明构思,本公开还提供了一种软件定义工业互联网中的DDoS攻击检测装置,其特征在于,包括:
提取模块,被配置为获取SDN网络节点的网络流量数据包,并对所述数据包进行信息提取,以得到数据信息;
异常检测模块,被配置为对所述数据信息进行异常检测,得到检测结果;
相似度计算模块,被配置为响应于确定所述检测结果超过预设阈值,基于所述数据包计算所述网络节点的网络流量的余弦相似度;
缓冲队列模块,被配置为响应于确定所述余弦相似度超过预设相似度阈值,将缓冲队列长度加1;
判断模块,被配置为响应于确定所述缓冲队列长度达到预设长度,则所述网络节点的网络流量为DDoS攻击流量。
基于同一发明构思,本公开还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现如上所述的方法。
基于同一发明构思,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上所述的方法。
从上面所述可以看出,本申请提供的一种软件定义工业互联网中的DDoS攻击检测方法及系统,通过网络节点的网络流量进行提取得到数据信息,对所述数据信息进行异常检测和余弦相似度检测,初步判断网络流量是否为DDoS攻击流量。同时,还设置了缓冲队列长度的限制条件,如果缓冲队列溢出则可排除网络中的正常波动和大量正常访问的情况,从而判断该网络流量为DDoS攻击流量。本申请的攻击检测方法通过结合不同的检测方式更加精确的对DDoS攻击进行判断,区分DDoS攻击流量和正常流量,能高效、快速地对DDoS攻击进行检测和响应,并对网络波动、大量正常网络流量的情况有一定的判断能力,在一定程度上弥补了软件定义工业互联网下对DDoS攻击检测方法不足。
附图说明
为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的软件定义工业互联网中的DDoS攻击检测方法流程示意图;
图2为本申请实施例的异常检测算法流程示意图;
图3为本申请实施例的余弦相似度算法流程示意图;
图4为本申请实施例的网络正常运行时的检测结果示意图;
图5为本申请实施例的网络遭受DDoS攻击的检测结果示意图;
图6为本申请实施例的25%攻击强度下Renyi熵值与余弦相似度仿真实验检测结果示意图;
图7为本申请实施例的50%攻击强度下Renyi熵值与余弦相似度仿真实验检测结果示意图;
图8为本申请实施例的75%攻击强度下Renyi熵值与余弦相似度仿真实验检测结果示意图;
图9为本申请实施例的SDN网络架构示意图;
图10为本申请实施例的软件定义工业互联网中的DDoS攻击检测装置结构示意图;
图11为本申请实施例的电子设备硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术所述,工业互联网(Industrial Internet)是将工业控制系统与互联网相结合的产物,是一个开放的、全球性的网络。它将工业生产和高效率的互联网技术融合起来,实现了工业设备的互联互通,最大化地提升了工业生产的效率。
软件定义网络SDN(Software Defined Network)是工业互联网中新兴的一种集中式网络管理技术,是一种实现工业互联网控制的典型网络架构和方式,被广泛应用于工业互联网中。其中,SDN所采用的是一种新型的网络架构,通常使用三层的网络模型,其中以负责整个网络集中控制的控制层为核心,上层通过北向接口连接应用层,下层通过南向接口与数据转发层相连。
目前,在软件定义工业互联网场景下对DDoS攻击检测的研究还处于初步阶段,主要采用改造传统网络的方法,少数人是基于SDN新特性通过统计并分析网络中数据包信息的熵值进行攻击检测。熵值检测是SDN架构下常见的异常检测算法,默认使用的是香农熵,但是在实际应用中,使用Renyi熵具有更好的效果。Renyi熵指的是Hartley熵、Shannon熵、碰撞熵和最小熵的推广,也被称为广义熵。
余弦相似度表示向量空间中两个向量夹角的余弦值作为衡量两个个体之间的相似程度,余弦值越接近1,就表明夹角越接近0度,表示两个向量越相似,因此余弦相似度可以用来表示不同网络流量的相似程度,从而用于检测是否遭受攻击。
本申请通过Renyi熵值检测和余弦相似度结合,能够更高效、准确地对软件定义工业互联网中的DDoS攻击进行检测。
以下结合附图来详细说明本申请的实施例。
本申请提供了一种软件定义工业互联网中的DDoS攻击检测方法,参考图1,包括以下几个步骤:
步骤S101、获取SDN网络节点的网络流量数据包,并对所述数据包进行信息提取,以得到数据信息。
具体的,SDN网络中的网络节点产生网络流量数据,经由SDN交换机对网络流量数据进行流表特征提取并匹配流表项,网络流量数据通常包括正常流量数据和异常流量数据,将与流表项匹配的网络流量数据进行封装成数据包发送到SDN控制器。若与流表项不匹配,则将网络流量数据封装成新的Packet-in数据包并发送至SDN控制器,由SDN控制器下发新的流表。通过SDN控制器对数据包进行信息提取,得到数据信息。
步骤S102、对所述数据信息进行异常检测,得到异常检测结果。通过对数据信息进行异常检测,初步判断该网络流量是否为异常流量。
步骤S103、响应于确定所述异常检测结果小于预设阈值,基于所述数据包计算所述网络节点的网络流量的余弦相似度。
如果该网络流量经初步判断为异常流量,可能无法排除属于网络正常波动和大量正常访问,需要对其进行余弦相似度的计算进行进一步的判断,提高DDoS攻击的检测精确度。
步骤S104、响应于确定所述余弦相似度超过预设相似度阈值,将缓冲队列长度加1。
具体的,为了检测的可靠性和准确性,同时为了避免网络中可能存在某些正常的流量波动情况,以及短时间内可能存在大量的正常访问情况,我们设置了缓冲队列配合各个检测模块。如果所述余弦相似度超过预设相似度阈值,向缓冲队列中添加一个元素,也即将缓冲队列的长度加1,作为受到DDoS攻击的标记。
步骤S105、响应于确定所述缓冲队列长度达到预设长度,则所述网络节点的网络流量为DDoS攻击流量。
缓冲队列用于进一步保证检测算法的有效性,可以一定程度上避免网络波动的轻微异常情况以及大量正常访问时的误判。当持续一段时间经过检测均发现可能遭受到了DDoS攻击,也即缓冲队列长度超过预设长度,产生溢出现象,则判断所述网络节点的网络流量为DDoS攻击流量,并发出攻击报警。
在一些实施例中,所述数据信息至少包括源IP地址、目的IP地址、源端口号和目的端口号,将这些数据信息存入设置的集合中,以供后续进行检测分析。
在一些实施例中,所述对所述数据信息进行异常检测,得到异常检测结果,包括:
构建哈希表,将所述数据包对应的所述源IP地址和所述目的IP地址存储在所述哈希表中;
响应于确定所述所述源IP地址或所述目的IP地址存在于所述哈希表中,则将所述源IP地址或所述目的IP地址在所述哈希表中对应的值加1,
响应于确定所述所述源IP地址或所述目的IP地址不存在于所述哈希表中,则将所述源IP地址或所述目的IP地址在所述哈希表中对应的值置为1,
将所述值的数值作为所述源IP地址或所述目的IP地址的频率;
响应于确定所述数据包的数量达到预设窗口数值,对于每一个所述数据包,基于其对应的所述目的IP地址和所述目的IP地址的频率计算所述数据包的熵值,取全部所述数据包的熵值的平均数作为所述异常检测结果。
具体的,接收到数据信息后,哈希表不断对数据包中的所述源IP地址或所述目的IP地址进行统计处理,将所述源IP地址或所述目的IP地址作为哈希表中的键,将其频率作为哈希表中的值。通过设置预设窗口数值,可以减少对数据包的熵值计算次数,降低网络计算量,节约网络算力资源。当哈希表中统计的数据对应的数据包数量达到预设窗口数值时,进行一次熵值计算,如果哈希表中统计的数据对应的数据包数量没有达到预设窗口数值时,则继续等待下一个数据包直至达到预设窗口数值。本实施例中的预设窗口数值设置为50,当数据包的数量达到50时,对这50个数据包分别进行熵值计算,最后取熵值的平均数作为异常检测结果。
在一些实施例中,所述熵值为Renyi熵值。
具体的,在信息论中,熵(entropy)是一个系统随机程度的度量,也是用来表示系统所能传递的最大信息量的指标。一个系统的熵值越大,说明其信息分布越分散,其系统内的随机程度越高,反之,则越低。
由于DDoS攻击的特性,攻击者为了隐藏其攻击源头,往往会对攻击数据包的源地址进行伪造,而其目的地址往往会集中于攻击目标的地址,因此在受到DDoS攻击后网络的随机程度会快速减小,该时间段内的网络流量熵值也会迅速下降,根据此特点就可以用熵值作为检测的特征值。
通常在基于熵值进行攻击检测时,往往采用香农熵进行。香农熵的概念如下:对于一个包含n个元素的集合W={x1,x2…,xn},其中xi表示集合W中所包含的单个元素,每个元素xi在该集合中发生的概率为
Figure BDA0003513661500000071
因此香农熵表示为
Figure BDA0003513661500000072
但是实际使用中,香农熵具有一定的局限性,其检测效果并不好,因此我们选择Renyi熵进行。Renyi熵指的是Hartley熵,Shannon熵,碰撞熵和最小熵的推广。与香农熵相比,Renyi熵引入了表示阶数的参数α,越高阶的Renyi熵公式越容易突出不同概率事件的影响。α阶的Renyi熵的定义如下:
Figure BDA0003513661500000073
其中xi和pi的含义同上述香农熵的含义相同,约束条件为:
Figure BDA0003513661500000074
和α≥0且α≠1
当α=0时,{x1,x2…,xn}的概率是相当的,因此此时的Renyi熵值是最大的,值为
Figure BDA0003513661500000075
当α→∞时,Renyi熵是最小的,此时值为-log2pi max,其中pi max为所有pi中的最大值。
当α→1时,香农熵和Renyi熵是相等的,证明过程如下:
Figure BDA0003513661500000076
由于
Figure BDA0003513661500000077
故有:
Figure BDA0003513661500000078
又因为α>1时,由于Renyi熵中参数α的指数效应,在{x1,x2…,xn}的高概率事件对Renyi熵值的影响比香农熵要大,因此可以说明Renyi熵比香农熵更能突出两个分布之间的差异。
在计算出Renyi熵值Hα(x)之后与预设阈值比较即可确定当前网络流量是否存在异常。预设阈值的选取是一个基于实验的过程,主要受正常情况下网络流量和攻击流量熵值的影响,还和攻击强度、窗口大小的选取有关。合适的预设阈值需要通过分析网络可能遭受的攻击情况,调整窗口大小后通过多次试验选取,并需要按照网络状况进行更新。
异常检测的算法伪代码如下所示:
Figure BDA0003513661500000081
如上述代码所示,算法的输入项为Renyi熵阶数α和满足窗口大小的哈希表entDic,本实施例的算法中规定熵阶数α为5,预设窗口数值为50。第3步设置熵值存储列表elist为空,熵值存储列表elist中存储每个数据包计算得到的熵值。第4步将窗口熵值列表dstEnt设置为空,窗口熵值列表dstEnt用于存储经过全部数据包的熵值计算得到的总的熵值,也即异常检测结果。第5步开始对哈希表中的键和值进行计算,k表示哈希表中的键,p表示该键对应的值,也即该键出现的概率。第6步设置Renyi熵值公式参数,第7步计算执行计算概率p。第8步根据全部数据包的熵值计算异常检测结果,并将结果记录在熵值存储列表elist和窗口熵值列表dstEnt中。第9步对异常检测结果进行判定,如果小于预设阈值σ,通过第10步向缓冲队列增加异常元素,第11步将异常流量参数μ1记为1。第12步表示如果异常检测结果大于等于预设阈值σ,则在第13步将窗口熵值列表dstEnt设置为空,第14步将将异常流量参数μ1记为0。
综上,对网络流量进行异常检测的方法流程参见图2,首先,步骤S201、构建软件定义工业互联网DDoS攻击检测架构,网络节点的数据流通过传感器、无线热点等到达SDN交换机;步骤S202、交换机对数据包进行流表项匹配并判断匹配结果;步骤S203、若不匹配,由交换机发送packet-in数据包至控制器,控制器下发新的流表;步骤S204、对数据包中的目的IP地址进行判断;若匹配,则直接进行步骤步骤S204对数据包中的目的IP地址进行判断;步骤S205、若目的IP地址存在于哈希表中,则将哈希表中将目的IP地址对应的值加1;步骤S206、若目的IP地址不存在于哈希表中,则将该目的IP地址添加值哈希表,并将其对应值置为1。步骤S207、判断已接收的数据包的数值是否达到预设窗口数值;步骤S208、若达到预设窗口数值则进行Renyi熵值计算;步骤S209、若没有达到预设窗口数值则计算等待接收下一个数据包,异常流量参数置0。步骤S210、对计算得到的总的Renyi熵值,也即异常检测值进行判断;步骤S211、若低于预设阈值,异常流量参数置为1,将对该网络流量进行下一步的检测;步骤S209、若没有低于预设阈值,将异常流量参数置为0,返回步骤S201重新接收数据包并进行计算和判定。
在一些实施例中,所述基于所述数据包计算所述网络节点的网络流量的余弦相似度,包括:
获取发送所述数据包的交换机端口的发送速率,基于全部所述数据包的所述发送速率和所述熵值计算得到数据集;
将所述数据集中的数据按照奇数和偶数进行划分,得到第一向量和第二向量;
计算所述第一向量和所述第二向量的余弦相似度,作为所述网络节点的网络流量的余弦相似度。
具体的,本实施例通过网络中所有交换机各个端口发送packet-in数据包的速率计算其余弦相似度,然后通过余弦相似度的大小来决定是否遭受DDoS攻击。当SDN交换机在处理没有匹配流表项的数据包时,就会将数据包的头部数据封装到packet-in消息发往控制器,并且packet-in消息也会记录这条消息来自哪个端口,借此SDN控制器就有足够的信息来计算余弦相似度。
将每个数据包的发送速率和其熵值相乘,再对该乘积值进行加权处理后得到数据集。将数据集中的全部数据依次按照奇数和偶数进行划分,将全部偶数对应的数值划分为第一向量COS_X=[X1,X2…,Xn],其中i=2k,k∈Z,Xi表示向量X的一个分量,Z表示整数,n表示数据包的个数。将全部奇数对应的数值划分为第二向量COS_Y=[Y1,Y2…,Yn],其中i=2k+1,k∈Z,Yi表示向量Y的一个分量。
计算端口的packet-in速率的余弦相似度公式如下:
Figure BDA0003513661500000101
其中,X与Y表示两个向量,ρX,Y表示两个向量间的余弦相似度,Xi表示向量X的一个分量,Yi表示向量Y的一个分量,由于每个分量都大于0,所以有0≤ρX,Y≤1。当余弦相似度ρX,Y越靠近1,说明两个向量间的夹角就越小,也就说明两个向量之间就越相似,如果ρX,Y=1,则表示向量X与Y方向完全相同;如果ρX,Y=-1,则表示两个向量的方向完全相反。
假设区分DDoS攻击和正常流量的余弦相似度阈值为ηv,可知0≤ηv≤1。如果ηv≤ρX,Y≤1则说明该网络可能遭受了DDoS攻击,如果0≤ρX,Y≤ηv,则可判断该网络流量的数据包可能是正常的请求。如果当前网络余弦相似度高于阈值,则说明其遭受攻击的概率较大,将配合缓冲队列做进一步的判断。
余弦相似度的算法伪代码如下所示
Figure BDA0003513661500000102
Figure BDA0003513661500000111
如上述代码所示,余弦相似度算法的输入项为窗口熵值列表dstEnt、样本窗口的大小W和相似度阈值ηv,输出项为攻击检测参数μ2和缓冲队列。由第1步和第2步所示,如果数据包的数量达到了预设窗口数值W,对数据包进行熵值计算,若异常检测结果低于预设阈值,则进行余弦相似度计算。第3步表示基于熵值存储列表中每个数据包的熵值计算得到数据集,将数据集划分为第4步的第一向量和第5步中的第二向量。通过第6步计算第一向量和第二向量的余弦相似度,再通过第7步判断余弦相似度是否高于相似度阈值,若超过相似度阈值,则在第8步中将缓冲队列长度加1,同时在第9步将攻击检测参数置为1,表示遭受到DDoS攻击,经由第12步返回缓冲队列长度和攻击检测参数。若经步骤10判断余弦相似度没有超过相似度阈值,经由第11步将缓冲队列清零,之后经由第12步将攻击检测参数置0,返回缓冲队列长度和攻击检测参数。
综上,对网络流量进行余弦相似度计算的方法流程参见图3。首先,步骤S301、收集各节点网络流量数据包;步骤S302、处理数据包信息,记录交换机各个端口发送packet-in数据包速率;步骤S303、基于发送速率和数据包熵值计算网络流量的余弦相似度;步骤S304、判断余弦相似度是否高于相似度阈值;步骤S305、若高于相似度阈值,将缓冲队列+1;步骤S306、判断缓冲队列长度是否达到预设长度;步骤S307、达到预设长度,攻击检测参数置1;步骤S308、发出DDoS攻击警报;步骤S309、缓冲队列长度未达到预设长度,返回步骤S301继续运行;步骤S3010、若余弦相似度小于等于相似度阈值,将缓冲队列清零;步骤S3011、攻击检测参数置0;步骤S3012、异常流量参数置0,重新返回步骤S301继续收集网络流量数据包。
下面通过仿真实验对本申请提供的软件定义工业互联网中的DDoS攻击检测方法进行准确率的验证。分别对不同攻击强度(25%、50%、75%)的DDoS攻击进行了检测。测试效果显示,本申请提供DDoS攻击检测方法能准确、高效地检测出DDoS攻击,并能够在不同攻击强度下达到较高的检测率。
在仿真实验过程中,会同时显示当前窗口下的Renyi熵值和余弦相似度。图4和图5分别是正常和受攻击情况下的网络流量Renyi熵值和余弦相似度,可以看到在受到DDoS攻击后Renyi熵值(也即异常检测结果)持续低于预设阈值,余弦相似度持续超过预设相似度阈值,表明当前网络可能遭受攻击,当缓冲队列队满之后判定受到DDoS攻击并报警。
仿真实验对单一设备的DDoS攻击使用α=5阶Renyi熵进行检测,窗口大小W=50个数据包,分别进行攻击强度25%、50%、75%的DDoS攻击,每次记录100个窗口的数据绘制成图表如下图6、图7、图8所示,图6、图7、图8中均从窗口26开始产生对单一设备的DDoS仿真攻击。对图6进行分析可知,在25%的攻击强度下,经过100个窗口的数据记录显示有3个窗口在Renyi熵值超过了预设阈值,且超出范围较小,因此在该网络中遭受25%的攻击强度下的检测成功率为97%,基于余弦相似度的计算结果成功率为100%。同时在图7所示的50%的攻击强度和图8所示的75%的攻击强度下,Renyi熵值和余弦相似度的检测成功率均为100%,并且样本的波动程度也在随着攻击强度的增加而减小。
从仿真实验的测试结果来看,本发明能够有效实现预定效果,对不同攻击强度的DDoS攻击有较高的检测能力,具有良好的应用价值。
基于同一发明构思,本申请还提供了一种软件定义工业互联网中的DDoS攻击检测系统,参考图9,自下而上依次包括工业设施层、数据转发层和控制层,
所述工业设施层包括多个网络节点,多个所述网络节点在该层进行数据交换;同时,接收来自所述数据转发层的策略响应并执行;
所述数据转发层通过交换机接收所述网络节点产生的网络流量数据并对其进行流表项匹配,响应于确定所述网络流量数据与流表项匹配,将该网络流量数据进行封装生成数据包并发送至所述控制层;同时,接收来自所述控制层的策略,生成所述策略响应并下发至所述工业设施层;
所述控制层接收所述数据包,对所述数据包实施如上所述的攻击检测方法,根据攻击检测结果生成所述策略并下发至所述数据转发层。
具体的,工业设施层部署N个工业设备,N为大于零的正整数,这些工业设备通过传感器和无线热点等与数据转发层通信连接,工业设备之间能够进行数据通信。数据转发层主要部署了多个交换机,用于数据信息的传递。控制层中包括多个SDN控制器,其中控制层还可以分为SDN中控层和SDN主控层。SDN中控层中部署多个SDN中控器,SDN主控层中部署一个SDN主控器,SDN主控器负责管理多个SDN中控器。SDN主控层中还包括Web服务器、应用服务器和数据库系统。
在一些实施例中,响应于确定所述网络流量数据与流表项不匹配,将该网络流量数据进行封装生成数据包并发送置所述控制层,所述控制层接收到所述数据包并下发新的流表项。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本申请的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种软件定义工业互联网中的DDoS攻击检测装置。
参考图10,所述软件定义工业互联网中的DDoS攻击检测装置,包括:
提取模块1001,被配置为获取SDN网络节点的网络流量数据包,并对所述数据包进行信息提取,以得到数据信息;
异常检测模块1002,被配置为对所述数据信息进行异常检测,得到异常检测结果;
相似度计算模块1003,被配置为响应于确定所述异常检测结果小于预设阈值,基于所述数据包计算所述网络节点的网络流量的余弦相似度;
缓冲队列模块1004,被配置为响应于确定所述余弦相似度超过预设相似度阈值,将缓冲队列长度加1;
判断模块1005,被配置为响应于确定所述缓冲队列长度超过预设长度,则所述网络节点的网络流量为DDoS攻击流量。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的软件定义工业互联网中的DDoS攻击检测方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的软件定义工业互联网中的DDoS攻击检测方法。
图11示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的软件定义工业互联网中的DDoS攻击检测方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的软件定义工业互联网中的DDoS攻击检测方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的软件定义工业互联网中的DDoS攻击检测方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种软件定义工业互联网中的DDoS攻击检测方法,其特征在于,包括:
获取SDN网络节点的网络流量数据包,并对所述网络流量数据包进行信息提取,以得到数据信息;
对所述数据信息进行异常检测,得到异常检测结果;
响应于确定所述异常检测结果小于预设阈值,基于所述网络流量数据包计算所述网络节点的网络流量的余弦相似度;
响应于确定所述余弦相似度超过预设相似度阈值,将缓冲队列长度加1;
响应于确定所述缓冲队列长度达到预设长度,则所述网络节点的网络流量为DDoS攻击流量。
2.根据权利要求1所述的方法,其特征在于,所述数据信息至少包括源IP地址、目的IP地址、源端口号和目的端口号。
3.根据权利要求2所述的方法,其特征在于,所述对所述数据信息进行异常检测,得到异常检测结果,包括:
构建哈希表,将所述网络流量数据包对应的所述源IP地址和所述目的IP地址存储在所述哈希表中;
响应于确定所述源IP地址或所述目的IP地址存在于所述哈希表中,则将所述源IP地址或所述目的IP地址在所述哈希表中对应的值加1,
响应于确定所述源IP地址或所述目的IP地址不存在于所述哈希表中,则将所述源IP地址或所述目的IP地址在所述哈希表中对应的值置为1,
将所述值的数值作为所述源IP地址或所述目的IP地址的频率;
响应于确定所述网络流量数据包的数量达到预设窗口数值,对于每一个所述网络流量数据包,基于其对应的所述目的IP地址和所述目的IP地址的频率计算所述网络流量数据包的熵值,取全部所述网络流量数据包的熵值的平均数作为所述异常检测结果。
4.根据权利要求3所述的方法,其特征在于,所述熵值为Renyi熵值。
5.根据权利要求3所述的方法,其特征在于,所述基于所述网络流量数据包计算所述网络节点的网络流量的余弦相似度,包括:
获取发送所述网络流量数据包的交换机端口的发送速率,基于全部所述网络流量数据包的所述发送速率和所述熵值计算得到数据集;
将所述数据集中的数据按照奇数和偶数进行划分,得到第一向量和第二向量;
计算所述第一向量和所述第二向量的余弦相似度,作为所述网络节点的网络流量的余弦相似度。
6.一种软件定义工业互联网中的DDoS攻击检测系统,其特征在于,自下而上依次包括工业设施层、数据转发层和控制层,
所述工业设施层包括多个网络节点,多个所述网络节点在该层进行数据交换;同时,接收来自所述数据转发层的策略响应并执行;
所述数据转发层通过交换机接收所述网络节点产生的网络流量数据并对其进行流表项匹配,响应于确定所述网络流量数据与流表项匹配,将该网络流量数据进行封装生成数据包并发送至所述控制层;同时,接收来自所述控制层的策略,生成所述策略响应并下发至所述工业设施层;
所述控制层接收所述数据包,对所述数据包实施如权利要求1至5任一项所述的攻击检测方法,根据攻击检测结果生成所述策略并下发至所述数据转发层。
7.根据权利要求6所述的系统,其特征在于,还包括:
响应于确定所述网络流量数据与流表项不匹配,将该网络流量数据进行封装生成数据包并发送至所述控制层,所述控制层接收到所述数据包并下发新的流表项。
8.一种软件定义工业互联网中的DDoS攻击检测装置,其特征在于,包括:
提取模块,被配置为获取SDN网络节点的网络流量数据包,并对所述网络流量数据包进行信息提取,以得到数据信息;
异常检测模块,被配置为对所述数据信息进行异常检测,得到异常检测结果;
相似度计算模块,被配置为响应于确定所述异常检测结果小于预设阈值,基于所述网络流量数据包计算所述网络节点的网络流量的余弦相似度;
缓冲队列模块,被配置为响应于确定所述余弦相似度超过预设相似度阈值,将缓冲队列长度加1;
判断模块,被配置为响应于确定所述缓冲队列长度达到预设长度,则所述网络节点的网络流量为DDoS攻击流量。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任意一项所述的方法。
10.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,其特征在于,所述计算机指令用于使计算机执行权利要求1至5任一所述方法。
CN202210158491.7A 2022-02-21 2022-02-21 软件定义工业互联网中的DDoS攻击检测方法及系统 Active CN114760087B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210158491.7A CN114760087B (zh) 2022-02-21 2022-02-21 软件定义工业互联网中的DDoS攻击检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210158491.7A CN114760087B (zh) 2022-02-21 2022-02-21 软件定义工业互联网中的DDoS攻击检测方法及系统

Publications (2)

Publication Number Publication Date
CN114760087A CN114760087A (zh) 2022-07-15
CN114760087B true CN114760087B (zh) 2023-02-24

Family

ID=82325526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210158491.7A Active CN114760087B (zh) 2022-02-21 2022-02-21 软件定义工业互联网中的DDoS攻击检测方法及系统

Country Status (1)

Country Link
CN (1) CN114760087B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115412343B (zh) * 2022-08-29 2024-09-20 西安热工研究院有限公司 一种工控网络安全运维方法及装置
CN116232777B (zh) * 2023-05-10 2023-07-18 北京交通大学 SDN-IIOT中基于统计度量的DDoS攻击检测与防御方法及相关设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107426199A (zh) * 2017-07-05 2017-12-01 浙江鹏信信息科技股份有限公司 一种网络异常行为检测与分析的方法及系统
CN109617868A (zh) * 2018-12-06 2019-04-12 腾讯科技(深圳)有限公司 一种ddos攻击的检测方法、装置及检测服务器
CN113422785A (zh) * 2021-08-20 2021-09-21 北京生泰尔科技股份有限公司 基于网络流量的恶意攻击检测方法、系统和可读存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9843488B2 (en) * 2011-11-07 2017-12-12 Netflow Logic Corporation Method and system for confident anomaly detection in computer network traffic
CN106663040A (zh) * 2014-05-01 2017-05-10 网络流逻辑公司 用于计算机网络业务中的信任异常检测的方法及系统
CN110166418B (zh) * 2019-03-04 2020-11-13 腾讯科技(深圳)有限公司 攻击检测方法、装置、计算机设备和存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107426199A (zh) * 2017-07-05 2017-12-01 浙江鹏信信息科技股份有限公司 一种网络异常行为检测与分析的方法及系统
CN109617868A (zh) * 2018-12-06 2019-04-12 腾讯科技(深圳)有限公司 一种ddos攻击的检测方法、装置及检测服务器
CN113422785A (zh) * 2021-08-20 2021-09-21 北京生泰尔科技股份有限公司 基于网络流量的恶意攻击检测方法、系统和可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于"进化"主成分分析法的用户分类及其应用;和敬涵等;《电力建设》;20170301(第03期);全文 *

Also Published As

Publication number Publication date
CN114760087A (zh) 2022-07-15

Similar Documents

Publication Publication Date Title
CN112003870B (zh) 一种基于深度学习的网络加密流量识别方法及装置
CN114760087B (zh) 软件定义工业互联网中的DDoS攻击检测方法及系统
CN108429651B (zh) 流量数据检测方法、装置、电子设备及计算机可读介质
CN109587008B (zh) 检测异常流量数据的方法、装置及存储介质
US20190260778A1 (en) Unsupervised spoofing detection from traffic data in mobile networks
CN111866024B (zh) 一种网络加密流量识别方法及装置
CN112448947A (zh) 网络异常确定方法、设备及存储介质
CN112165484B (zh) 基于深度学习与侧信道分析的网络加密流量识别方法装置
CN105917632A (zh) 用于电信中的可扩缩分布式网络业务分析的方法
CN108390856B (zh) 一种DDoS攻击检测方法、装置及电子设备
CN112671724B (zh) 一种终端安全检测分析方法、装置、设备及可读存储介质
CN114422267A (zh) 流量检测方法、装置、设备及介质
CN109873790A (zh) 网络安全检测方法、装置以及计算机可读存储介质
CN109587145B (zh) 一种电力网络中的虚假数据入侵检测方法、装置及设备
CN116112287B (zh) 基于时空关联的网络攻击组织追踪方法与装置
CN111478861B (zh) 流量识别方法、装置、电子设备、及存储介质
CN116232777B (zh) SDN-IIOT中基于统计度量的DDoS攻击检测与防御方法及相关设备
CN112507265A (zh) 基于树结构进行异常侦测的方法、装置及相关产品
CN115987549A (zh) 移动终端的异常行为检测方法、装置及存储介质
CN114362972B (zh) 一种基于流量摘要和图采样的僵尸网络混合检测方法及系统
CN116055092A (zh) 一种隐蔽隧道攻击行为检测方法和装置
CN114448661A (zh) 慢速拒绝服务攻击检测方法及相关设备
CN115175174A (zh) 一种基于物联网平台实现探针设备管控系统的方法
CN115037791A (zh) 事件推送方法、装置、系统、电子设备及存储介质
CN112307475A (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