CN116471048A - 一种实时高效的物联网DDoS攻击检测方法及系统 - Google Patents
一种实时高效的物联网DDoS攻击检测方法及系统 Download PDFInfo
- Publication number
- CN116471048A CN116471048A CN202310275662.9A CN202310275662A CN116471048A CN 116471048 A CN116471048 A CN 116471048A CN 202310275662 A CN202310275662 A CN 202310275662A CN 116471048 A CN116471048 A CN 116471048A
- Authority
- CN
- China
- Prior art keywords
- ddos attack
- detection
- flow
- network
- traffic
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 221
- 238000012549 training Methods 0.000 claims abstract description 54
- 238000000034 method Methods 0.000 claims abstract description 47
- 239000013598 vector Substances 0.000 claims abstract description 24
- 230000004927 fusion Effects 0.000 claims abstract description 5
- 238000013528 artificial neural network Methods 0.000 claims description 20
- 238000000605 extraction Methods 0.000 claims description 17
- 238000010276 construction Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 14
- 230000009466 transformation Effects 0.000 claims description 14
- 238000013135 deep learning Methods 0.000 claims description 11
- 238000010801 machine learning Methods 0.000 claims description 8
- 238000010606 normalization Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 claims description 7
- 238000007637 random forest analysis Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 210000002569 neuron Anatomy 0.000 claims 2
- 230000008569 process Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000011423 initialization method Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000010972 statistical evaluation Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/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
- 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
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- 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)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种实时高效的物联网DDoS攻击检测方法及系统,本发明可分为粗细粒度模型训练阶段和DDoS攻击流量检测阶段。在粗细粒度模型训练阶段,将根据已知类别的物联网DDoS攻击和良性网络流量,训练概率检测模型和流级检测模型中的可学习参数,从而实现自动化的DDoS攻击检测。DDoS攻击流量检测阶段,基于训练完成的概率检测模型和流级检测模型,对网络环境中获取到的真实网络流量进行特征提取并完成DDoS攻击检测。本发明使得经过卷积操作后的特征向量在进行特征权重融合后,能够更加准确地表达网络流量的特征。能实现对DDoS攻击流量的高精度、高效率检测,同时可以适应不同的网络环境,具有更强的泛化能力。
Description
技术领域
本发明涉及根据网络流量的数据报文部分字段,构建统计特征和序列特征,并使用人工智能相关技术,对物联网DDoS攻击流量进行高效、强泛化能力的检测,具体涉及一种实时高效的物联网DDoS攻击检测方法及系统。
背景技术
本发明涉及根据网络流量的统计特征和序列特征,使用传统机器学习和深度学习技术对物联网DDoS攻击进行实时、高效检测。由于DDoS攻击会破坏基本服务的可用性,所以检测DDoS攻击对物联网安全至关重要。具体而言,随着用于感染物联网设备的恶意软件出现,越来越多的物联网设备被感染,成为僵尸网络的一部分,进而成为攻击者用来发动DDoS攻击,威胁整个互联网安全的潜在帮凶。另一方面,随着智能家居的普及,家用物联网设备越来越常见,由于家用网关路由器的安全防护措施和计算能力有限,当家用物联网设备被恶意软件感染后发动DDoS攻击时,很难被检测到。因此,使用物联网设备的DDoS攻击引起了众多学术界和工业界的研究关注。在之前,传统的DDoS攻击检测技术大多采用启发式方法,而近几年,随着人工智能技术的发展,很多采用传统机器学习和深度学习的方法已经在DDoS攻击检测上取得了不错的效果。然而,像上文中提到的,由于家用网关路由器的计算能力和存储空间有限,选用合适的人工智能技术,设计合适的模型以实现能够部署在家用网关路由器的高检测效率、高检测精度以及高鲁棒性的DDoS攻击检测方法仍然是一个非常重要、开放的研究问题。本发明将网络流量的统计特征和序列特征作为输入,并尝试使用传统机器学习和深度学习方法进行更准确和有效的DDoS攻击检测。
本发明设计并实现了一个新颖的物联网DDoS攻击检测方法及系统,该方法通过捕捉网络流量的群体行为,以进行高效的批量检测,并融合传统机器学习和深度学习的优点,以实现准确率更高,效率更高,泛化能力更强的DDoS攻击检测。
发明内容
本发明的目的在于设计并实现一种实时高效的物联网DDoS攻击检测方法及系统,在保证高检测精度的同时,具有高检测效率和强泛化能力。为实现上述目的,本发明采用的技术方案如下:
一种实时高效的物联网DDoS攻击检测方法及系统,其特征在于,包括粗细粒度模型训练阶段和DDoS攻击流量检测阶段;
所述粗细粒度模型训练阶段包括三个部分:(1)DDoS攻击流量的特征提取(2)粗粒度检测模型构建(3)细粒度检测模型构建。
DDoS攻击流量的特征提取包含如下步骤:
1)以一组已知物联网设备产生的、样本数量足够多的DDoS攻击和良性网络流量为输入,获取每个数据报文部分字段信息。
2)通过步骤1)得到的每个数据报文的包长,以时间窗口为单位,构建网络流量的统计特征。
3)通过步骤1)得到的每个数据报文的部分字段信息,以单条流为单位,构建网络流量的序列特征。
粗粒度检测模型构建的具体步骤为:
4)以步骤2)中得到的网络流量统计特征作为输入,通过采取传统机器学习方法中的随机森林算法,得到构建好的概率检测模型。
细粒度检测模型构建的具体步骤为:
5)以步骤3)中得到的网络流量序列特征作为输入,通过采用深度学习当中的神经网络进行训练,得到构建好的流级检测模型。
所述DDoS攻击流量检测阶段包括如下步骤:
6)以待测网络流量数据为输入,进行知识数据库的查询;
7)将待测网络流量按照步骤1)2)3)进行特征提取,得到待测网络流量的统计特征和序列特征;
8)以步骤7)中得到的网络流量特征作为输入,通过步骤4)中得到的概率检测模型进行粗粒度检测,检测单位为时间窗口,最终得到粗粒度检测结果,并更新知识数据库。
9)以步骤8)中得到的检测结果为良性窗口的网络流量序列特征作为输入,通过步骤5)中得到的流级检测模型进行细粒度检测,检测单位为单条网络流量,最终得到细粒度检测结果,并更新知识数据库。
一种实时高效的物联网DDoS攻击检测方法及系统,其特征在于,包括用于粗细粒度检测模型训练阶段的DDoS攻击流量特征提取模块、粗粒度检测模型构建模块和细粒度检测模型构建模块,以及用于DDoS攻击流量检测阶段的知识数据库查询模块、DDoS攻击流量特征提取模块、粗粒度DDoS攻击流检测模块;其中,
DDoS攻击流量特征提取模块负责对输入的原始物联网DDoS攻击和良性网络流量数据提取时间窗口级别的统计特征和单条流量级别的序列特征;
粗细粒度检测模型训练阶段的粗粒度检测模型构建模块负责根据网络流量的统计特征,使用传统机器学习方法中的随机森林算法,进行概率检测模型的训练,以供DDoS攻击流量检测阶段使用;
粗细粒度检测模型训练阶段的细粒度检测模型构建模块负责根据网络流量的序列特征,使用深度学习方法,基于带有序列特征权重生成的神经网络进行流级检测模型的训练,以供DDoS攻击流量检测阶段使用。
DDoS攻击流量检测阶段的知识数据库的查询模块负责根据网络流量的五元组信息,采用黑名单和白名单机制,进行网络流量的拦截与放行。
DDoS攻击流量检测阶段的粗粒度DDoS攻击检测模块负责根据粗细粒度检测模型训练阶段所生成的概率检测模型,对网络流量以时间窗口为单位进行粗粒度检测,并输出判别结果,更新知识数据库。
DDoS攻击流量检测阶段的细粒度DDoS攻击检测模块负责根据粗细粒度检测模型训练阶段所生成的流级检测模型,对粗粒度检测结果中良性窗口的网络流量,以单条流量为单位进行细粒度检测,并输出判别结果,更新知识数据库。
本发明的关键技术点在于:
1.设计了一种实时高效的物联网DDoS攻击检测方法及系统,能实现对DDoS攻击流量的高精度、高效率检测,同时可以适应不同的网络环境,具有更强的泛化能力。
2.本发明观察DDoS攻击流量的群体行为,通过群体行为,本发明可以一次检测多条流,大大提高了检测效率。因此,本发明基于时间窗口计算DDoS攻击流量的统计特征,并将这些统计特征作为DDoS攻击流量群体行为。
3.设计了特征权重生成机制,该机制能够学习不同序列特征的重要性,从而使得经过卷积操作后的特征向量在进行特征权重融合后,能够更加准确地表达网络流量的特征。
利用本发明的方法可以解决在DDoS攻击发生时,进行高效高精度检测。与已公开的相关技术相比,具有如下优点:
1.设计了一种实时高效的物联网DDoS攻击检测方法及系统。与以前的方法在DDoS攻击类型种类发生变化和网络环境发生变化的情况下泛化能力不足相比,本发明可以适应不同的DDoS攻击和网络环境,具有更强的泛化能力。
2.本发明采用以时间窗口为单位计算的网络流量统计特征作为网络流量的群体行为,这些统计特征在DDoS攻击发生和正常网络环境下有很大的区分度。通过这些统计特征,能够对网络流量进行批量检测,具有更高的检测效率和检测精度。
附图说明
图1是实时高效的物联网DDoS攻击检测方法的粗细粒度检测模型训练阶段流程图。
图2是细粒度检测模型构建的神经网络结构图。
图3是实时高效的物联网DDoS攻击检测方法的DDoS攻击流量检测阶段流程图。
图4是实时高效的物联网DDoS攻击检测方法系统架构图。
具体实施方式
本发明的工作流程,可分为粗细粒度模型训练阶段和DDoS攻击流量检测阶段。在粗细粒度模型训练阶段,将根据已知类别的物联网DDoS攻击和良性网络流量,训练概率检测模型和流级检测模型中的可学习参数,从而实现自动化的DDoS攻击检测。DDoS攻击流量检测阶段,基于训练完成的概率检测模型和流级检测模型,对网络环境中获取到的真实网络流量进行特征提取并完成DDoS攻击检测。
粗细粒度检测模型训练阶段中,本发明的关键技术部分在于概率检测模型和流级检测模型的构建,流程如图1所示。概率检测模型构建过程的输入是网络流量的统计特征,流级检测模型构建过程的输入是网络流量的序列特征。粗细粒度检测模型训练阶段的输出为满足DDoS攻击流量检测需求的概率检测模型和流级检测模型。
粗细粒度检测模型训练阶段的具体实施步骤如下:
1.给定网络流量数据报文序列集合(集合包含M条网络流量,其中w(m,i)代表第m条网络流量流中的第i个数据报文,N代表第m条网络流量所有N个数据报文)。首先需要对网络流量数据报文序列进行预处理,提取相应的统计特征以及序列特征。
提取统计特征的步骤如下:
①根据数据报文的时间戳获取属于当前时间窗口的数据报文包长集合 (集合包含M条网络流量,其中pl(m,i)代表第m条网络流量中的第i个数据报文的包长,N代表第m条网络流量所有N个数据报文)。
②根据以下公式,以数据报文包长为属性,构建四个维度的统计特征,分别为,包长最小值,包长平均值,包长标准差和包长的峰度。
③根据当前时间窗口中DDoS攻击数据报文的比例标记时间窗口。如果比例大于给定阈值T,则时间窗口标记为恶意窗口;否则,时间窗口标记为良性窗口。(此步骤只在本专利的粗细粒度检测模型训练阶段的统计特征提取中出现,在DDoS攻击流量检测阶段并无。)
④处理完当前时间窗口的所有数据报文后,滑动到下一个时间窗口,直到捕获完所有的网络流量,最终得到DDoS攻击流量和良性流量的统计特征集合(其中,si表示第i个时间窗口的四个维度的特征,Nc表示总共有Nc个时间窗口。)
接着,本发明进行网络流量的序列特征提取,需要注意的是,上述的统计特征以时间窗口为单位,而序列特征以每条网络流量为单位,具体步骤如下:
根据数据报文的时间戳获取属于当前时间窗口的数据报文的包长集合 数据报文的IP标志位(IP Flags)集合/>数据报文的TCP标志位(TCPFlags)集合/>处理完当前时间窗口的所有数据报文后,滑动到下一个时间窗口,直到捕获完所有的网络流量。
2.在进行完特征提取后,本发明进行粗粒度检测模型的构建,粒度检测模型的功能是将每个时间窗口检测为恶意或良性。本发明使用随机森林算法来构建粗粒度检测模型,将每个时间窗口的统计特征集合,即输入,得到时间窗口的检测结果通过多棵决策树不断更新节点信息,得到最终的随机森林。将粗粒度检测模型的训练参数保存,作为概率检测模型输出。
3.在构建完成粗粒度检测模型后,本发明进行细粒度检测模型的训练,本发明的细粒度检测模型基于深度神经网络模型的训练方法来构建,流级检测模型所构建的神经网络结构如图2所示,构建过程的终止条件为L。在开始神经网络结构训练前,需要根据超参数设置,对神经网络中的可训练参数进行初始化。神经网络参数初始化可以使用加载现有模型参数、随机初始化、自定义初始化等方法进行,在本发明中,使用随机初始化的方法为神经网络中的可训练参数赋予初始值。
若使用后需要对本发明中神经网络的可学习参数进行微调,也可跳过此步骤,不进行参数初始化,而是直接加载原有参数,在原有参数基础上调整模型效果。
4.给定经过特征提取后的网络流量序列特征集合 和/>作为输入数据,初始特征变换操作对输入数据进行维度变换,首先将三个集合拼接在一起作为特征组合集合/>其中f(m,i)={pl(m,i),if(m,i),tf(m,i)}。为便于理解,后续步骤中,将使用单个特征组合f(m,i)作为讨论对象,介绍本发明的初始特征变换操作。
本发明中,使用1D卷积完成当前步骤的维度变换和形式变换操作。由于f(m,i)={pl(m,i),if(m,i),tf(m,i)},其中pl(m,i),if(m,i),tf(m,i)的维度大小均为(N×1),所以本步骤的输入数据f(m,i)的维度为(N×3);所使用的卷积层的卷积核大小为(k0×3)、通道数(即卷积核个数)为C0;经卷积操作后的输出数据维度为(C0×3),即F'={f'1,f2',f3'}(fi'维度为(C0×1))。
在卷积层的转换完成后,需要使用非线性激活函数和数据归一化,以优化数据分布、加快神经网络整体训练速度、提升训练效果。本发明使用的非线性激活函数为ReLU函数(Rectified Linear Unit)、数据归一化方式是批次归一化(batch normalization),在网络结构中所有需要非线性激活和归一化的步骤,也可使用其他方法。
5.为了能够学习到每个序列特征的权重,将三个序列特征集合 和/>分成3个分支,3个分支彼此独立,并行地进行特征运算。
各分支均包含有两个1D卷积层:第一层卷积层的卷积核维度为k1,卷积核通道个数为C;第二层1D卷积层的卷积核维度为k2、通道个数为C0。两次卷积操作后的特征向量维度为(C0×N)。在经过卷积操作后,使用平均池化平均特征向量的值,得到维度为(C0×1)的输出。
此外,各分支在完成所有卷积操作后,均使用批归一化方法对本分支所形成的特征进行分布空间调整。最终,将三个分支的输出拼接在一起,获得维度为(C0×3)的特征权重。
6.在完成初始特征变换、序列特征权重生成后,本发明使用带权重求和的形式,将初始特征变换后的特征向量合并为带权特征向量。对于单条网络流量,给定各分支生成的特征向量集合F'={f'1,f2',f3'}(fi'维度为(C0×1)),分支权重集合{w1,w2,w3}(wi维度为(1×N)),则该条网络流量对应的特征向量可表示为输出数据F(x)的维度为(C0×N)。
7.完成特征带权融合后,网络流量已转换为对应的特征向量,为将特征向量值所代表的语义信息与DDoS攻击流量和良性网络流量对应,本发明使用一个全连接层(fully-connected)进行从特征向量到网络流量类型推断的映射。对于单条网络流量,输出的维度为(d×1),由于最终的检测结果只有DDoS攻击流量或者良性网络流量,所以d=2,取值最大的维度代表着本次运算对该条网络流量是否为DDoS攻击流量的检测结果。为对于参与当前迭代的所有网络流量的检测结果的集合,可以计算损失函数,以评估当前计算结果与实际数据的拟合程度。本发明所使用的损失函数为交叉熵函数(Cross Entropy)。
8.完成特征分类后,判断神经网络计算结果是否满足结束条件L:(a)若计算结果满足结束条件L,则停止神经网络的训练过程,将包含神经网络参数值的流级检测模型输出,以供DDoS攻击流量检测阶段进行细粒度检测;(b)若计算结果不满足结束条件,则根据网络分类结果计算损失函数值,使用反向传播更新神经网络参数,返回步骤(4)初始特征变换,重复(4)-(8)流程。结束条件L的设置,可包括但不局限于下述条件:达到最大迭代周期、达到期望损失函数值、达到期望统计评价指标等。
DDoS攻击流量检测阶段的工作流程如图3所示,该阶段以粗细粒度检测模型训练阶段所得到的概率检测模型和流级检测模型参数为基础、以网络流量为输入,对捕获的网络流量进行DDoS攻击检测。
1.本发明在DDoS攻击流量检测阶段增加了知识数据库,通过白名单和黑名单策略来存储网络流量的五元组信息(源IP地址、目的IP地址、源端口、目的端口和传输层协议)。每次获取到网络流量时,先查看其是否在知识数据库当中,若在黑名单中,则直接检测为DDoS攻击流量;若在白名单中,则直接检测为良性流量。
2.未在知识数据库中被查询到的网络流量交给特征提取模块。首先,预设时间窗口的持续时间t,按照上述粗细粒度检测模型训练阶段描述过的特征提取步骤,提取网络流量的统计特征和序列特征的提取。
3.粗粒度DDoS攻击流量检测模块依据粗细粒度检测模型训练阶段生成的概率检测模型。以经过预处理的网络流量统计特征,进行粗粒度检测,将时间窗口检测为恶意窗口或者良性窗口。粗粒度检测结果中,被检测为恶意窗口中的网络流量,全部被拦截,不再进行细粒度检测,并且将它们的五元组更新到知识数据库的黑名单中。被检测为良性窗口中的网络流量,将进行细粒度检测。
4.细粒度DDoS攻击流量检测模块依据粗细粒度检测模型训练阶段生成的流级检测模型。将粗粒度检测结果中为良性窗口里的网络流量的序列特征作为输入,进行流级别的细粒度检测,将每条网络流量判断为DDoS攻击流量或者良性流量。被检测为DDoS攻击流量的网络流量的五元组将更新到知识数据库的黑名单中,被检测为良性流量的网络流量的五元组将更新到知识数据库的白名单中。
本发明在实际应用过程中,可根据方法在不同数据集上的检测效果、DDoS攻击形式的变动等因素,重新启动训练阶段,对神经网络进行调整、重新训练。通过训练阶段与检测阶段的多次迭代,对本发明所使用的概率检测模型和流级检测模型参数进行更新,保证本发明性能满足DDoS攻击检测的需求。
结合上述一种实时高效的物联网DDoS攻击检测方法,本发明同时公开了一种实时高效的物联网DDoS攻击检测方法及系统。本系统主要由粗粒度检测模型训练阶段和DDoS攻击流量检测阶段两个阶段构成,系统图架构如图4所示。
1.粗细粒度检测模型训练阶段:首先,以物联网DDoS攻击和良性网络流量为输入,由(1)DDoS攻击流量特征提取模块提取网络流量的统计特征和序列特征。(2)粗粒度检测模型构建模块负责根据网络流量的统计特征,使用传统机器学习方法中的随机森林算法,进行概率检测模型的训练,以供DDoS攻击流量检测阶段使用。(3)细粒度检测模型构建模块负责根据网络流量的序列特征,使用深度学习方法,基于带有序列特征权重生成的神经网络进行流级检测模型的训练,以供DDoS攻击流量检测阶段使用。
2.DDoS攻击流量检测阶段:DDoS攻击流量检测阶段以待检测的未知物联网DDoS攻击和良性网络流量数据为输入,由(1)知识数据库的查询模块负责根据网络流量的五元组信息,采用黑名单和白名单机制,进行网络流量的拦截与放行。由(2)DDoS攻击流量特征提取模块提取网络流量的统计特征和序列特征。(3)粗粒度DDoS攻击检测模块负责根据粗细粒度检测模型训练阶段所生成的概率检测模型,对网络流量以时间窗口为单位进行粗粒度检测,并输出判别结果,更新知识数据库。(4)细粒度DDoS攻击检测模块负责根据粗细粒度检测模型训练阶段所生成的流级检测模型,对粗粒度检测结果中良性窗口的网络流量,以单条流量为单位进行细粒度检测,并输出判别结果,更新知识数据库。
本发明在两个开放的加密应用流量数据集上开展了大量的实例验证,分别是新南威尔士大学加密应用流量数据集和Mon(IoT)r加密应用流量数据集。首先,对这两个数据集分别依照五元组信息(即[源ip,目的ip,源端口,目的端口,传输层协议])来划分为不同的双向流。然后,将每个包中的以太网层从数据报文中移去并进行随机化IP地址操作。对于新南威尔士大学加密应用流量数据集,它包含21种加密应用设备所产生的网络流量,本发明从中选取了14种类别,构成第一个实验数据集,命名为AppTrace-I。类似的,对于Mon(IoT)r加密应用数据集,它包含从UK以及US两个国家的实验室捕获的加密应用流量,其中有相同的26种加密应用。从这相同的26类中选取了13类,构成第二个实验数据集,命名为AppTrace-II。两个数据集所使用的具体加密应用流量信息分别如表1和表2所示。其中,对于每个加密应用类别,本发明随机选择了三千个流的样本。另外,为了保证验证的可靠性,本发明在两个数据集上开展了五折的交叉验证,其中训练集,验证集和测试集的比例为三:一:一。
表格1:AppTrace-I中各个加密应用类别名称及其对应字节流数目,其中K代表103
加密应用类别名称 | 流的数目 |
AmazonEcho | 5.2K |
NetatmoWelcome | 2.3K |
SamsungSmartCamera | 1.0K |
InsteonCamera | 5.1K |
WithingsSmartBabyMonitor | 8.3K |
BelkinWemoSwitch | 1.3K |
BelkinWemoMotionSensor | 1.8K |
NetatmoWeatherStation | 13.3K |
WithingsAuraSmartSleepSensor | 2.7K |
TP-LinkDayNightCloudCamera | 1.2K |
TP-LinkSmartPlug | 1.6K |
PIX-STARPhoto-Frame | 1.5K |
HPPrinter | 1.1K |
iHomePowerPlug | 1.1K |
表格2:AppTrace-II中各个加密应用类别名称及其对应字节流数目,其中K代表103
实验展示了两种超参数形成的不同分类器的分类效果,超参数包括:(1)报文长度的不同取值(用Nm来表示);(2)报文字节数的不同取值(用Bm来表示);对于超参数Nm设定其取值范围为{4,8}。对于超参数Bm,设定其取值范围为{64,128,256}。在不同超参数设置的情况下分别进行实验,并将本发明与现有的基于深度学习的加密应用流量分类方法在网络流量数据不充足的情况下进行分别地对比。
首先,定义了一些评价指标。对于一条由加密应用d产生的流量,分类器对这条流量进行分类的结果会有如下四种情况:
(1)真阳(True Positive):被分类器分类为d类,且确实是由加密应用d产生的;
(2)假阳(False Positive):被分类器分类为d类,但是并非是由加密应用d产生的;
(3)真阴(True Negative):被分类器分类为不属于d类,并且确实不是由加密应用d产生的;
(4)假阴(False Negative):被分类器分类为不属于d类,但是确实是由加密应用d产生的。
根据上述四种情况,本发明可以定义出三种指标用来评价一个分类器对加密应用d产生的流量的分类质量,分别为召回率(Recall),精确率(Precision),F值(F-Measure),公式如下:
本发明在两个数据集AppTrace-I和AppTrace-II下的实验结果分别如表格3、表格4所示。
表格3:本发明在AppTrace-I上的实验结果
表格4:本发明在AppTrace-II上的实验结果
据实验结果,对于AppTrace-I,分类器在所有的Nm、Bm取值下,召回率,精确率以及F1值都在96.91%-99.69%的范围内变化。最好的参数为Nm=4,Bm=256时,对应的召回率,精确率以及F1值分别为99.65%(±0.06),99.69%(±0.04)和99.67%(±0.06)。对于AppDataset-II,分类器在所有的Nm、Bm取值下,召回率,精确率以及F1值都在97.01%-99.63%的范围内变化。最好的参数为Nm=4,Bm=256时,对应的召回率,精确率以及F1值分别为99.54%(±0.15),99.61%(±0.10)和99.63%(±0.12)。
表格5:现有基于深度学习的加密应用流量分类方法对比实验结果
从表格5中可以观察出:本发明在两个实验数据集上的分类效果均优于现有的基于深度学习的分类方法和系统(EBSNN、DeepPacket):本发明在三个评价指标的结果都高于其他两种方法。
另外,通过添加基于置信度阈值的未知流量检测模块,将置信度较小的流量归类为未知设备类别,本发明可以适应未知流量检测任务。在实验中,本发明设置了两个场景A和B。场景A将AppTrace-I中所有设备类别作为已知设备类,AppTrace-II中所有设备类别作为未知类。同理,场景B取所有属于AppTrace-II的设备类别作为已知设备类,所有属于AppTrace-I的设备类别作为未知类。对于阈值,本发明暂定为0.999。结果如表格6所示。
表格6:本发明未知流量检测的实验结果
对于场景A,召回率,精确率和F1值分别是91.69(±1.45)%,98.65(±1.12)%,和95.04(±1.25)%。对于场景B,召回率,精确率和F1值分别是96.80(±1.01)%,77.69(±2.56)%,和86.20(±1.87)%。由此可见,本发明对未知流量有很好的检测能力。在实时部署中,本发明将拒绝这些检测到的未知流。
Claims (10)
1.一种实时高效的物联网DDoS攻击检测方法,其特征在于,包括粗细粒度模型训练阶段和DDoS攻击流量检测阶段;
所述粗细粒度模型训练阶段包括三个部分:(1)DDoS攻击流量的特征提取;(2)粗粒度检测模型构建;(3)细粒度检测模型构建;
DDoS攻击流量的特征提取包含如下步骤:
步骤1)以一组已知物联网设备产生的DDoS攻击和良性网络流量为输入,获取每个数据报文部分字段信息;
步骤2)通过步骤1)得到的每个数据报文的包长,以时间窗口为单位,构建网络流量的统计特征;
步骤3)通过步骤1)得到的每个数据报文的部分字段信息,以单条流为单位,构建网络流量的序列特征;
粗粒度检测模型构建的具体步骤为:
步骤4)以步骤2)中得到的网络流量统计特征作为输入,通过采取随机森林算法得到构建好的概率检测模型;
细粒度检测模型构建的具体步骤为:
步骤5)以步骤3)中得到的网络流量的序列特征作为输入,通过采用神经网络进行训练,得到构建好的流级检测模型;
所述DDoS攻击流量检测阶段包括如下步骤:
步骤6)以待测网络流量数据为输入,进行知识数据库的查询;
步骤7)将待测网络流量按照步骤1)、2)、3)进行特征提取,得到待测网络流量的统计特征和序列特征;
步骤8)以步骤7)中得到的待测网络流量特征作为输入,通过步骤4)中得到的概率检测模型进行粗粒度检测,检测单位为时间窗口,最终得到粗粒度检测结果,并更新知识数据库;
步骤9)以步骤8)中得到的检测结果为良性窗口的网络流量序列特征作为输入,通过步骤5)中得到的流级检测模型进行细粒度检测,检测单位为单条网络流量,最终得到细粒度检测结果,并更新知识数据库。
2.如权利要求1所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤2)进行网络流量统计特征获取的具体操作方法是:
2-1)对输入的网络流量,根据数据报文的时间戳获取属于当前时间窗口的数据报文包长集合;
2-2)以数据报文包长集合中数据报文的包长为属性,构建四个维度的统计特征,分别为,包长最小值packet len min,包长平均值packet len mean,包长标准差packet lenstd,包长的峰度packet len kurtosis;
2-3)根据当前时间窗口中DDoS攻击数据报文的比例标记时间窗口;如果比例大于给定阈值T,则将时间窗口标记为恶意窗口;否则,将时间窗口标记为良性窗口;
2-4)处理完当前时间窗口后,滑动到下一个时间窗口,直到捕获完所有的网络流量,最终得到DDoS攻击流量和良性流量的统计特征集合。
3.如权利要求1所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤3),进行网络流量序列特征获取的具体操作方法是:
3-1)对输入的网络流量,根据数据报文的时间戳获取属于当前时间窗口的数据报文的包长、IP Flags和TCP Flags集合;
3-2)按照五元组:源IP地址,目的IP地址,源端口,目的端口,传输层协议,对数据报文进行分流,得到每条流量的包长序列IP Flags序列和TCPFlags序列;
3-3)处理完当前时间窗口后,滑动到下一个时间窗口,直到捕获完所有的网络流量,最终得到DDoS攻击流量和良性流量的序列特征集合。
4.如权利要求1所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤5),进行细粒度检测模型构建的具体操作方法是:
5-1)以步骤3)得到的网络流量序列特征作为输入,进行初始特征变换,得到初始特征变换特征向量;
5-2)以步骤3)得到的网络流量序列特征作为输入,对于每个特征进行独立地卷积操作,生成每个序列特征的特征权重值;
5-3)以步骤5-1)和步骤5-2)得到的初始特征变换向量和序列特征的特征权重值进行特征带权融合,得到带权特征向量;
5-4)以步骤5-3)得到的带权特征向量作为输入,通过分类层和激活函数,得到最终的特征分类向量,将特征向量值所代表的语义信息与DDoS攻击流量和良性网络流量对应,得到该条网络流量的检测结果;
5-5)以步骤5-4)得到的检测结果集合与步骤2-1)中的真实DDoS攻击和良性网络流量为输入,计算分类准确率、损失函数值等指标,若指标满足结束条件L,则停止模型构建流程,输出流级检测模型;若指标不满足结束条件L,则重复步骤5-2)~步骤5-5)。
5.如权利要求4所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤5-1)对步骤3)得到的网络流量序列特征进行初始特征变换的具体操作方法是:
5-1-1)以步骤3)得到的网络流量序列特征作为输入,将网络流量的包长序列集合,IPFlags集合和TCPFlags集合拼接在一起,作为特征组合集合;
5-1-2)以步骤5-1-1)得到的特征组合集合作为输入,使用1D卷积完成当前的维度变换和形式变换操作;所使用的卷积层的卷积核大小为k0×3、通道数为C0;
5-1-3)在每一次的卷积操作完成后,需要使用非线性激活函数ReLU函数和数据归一化,以优化数据分布、加快神经网络整体训练速度、提升训练效果。
6.如权利要求4所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤5-2)对步骤3)得到的网络流量序列特征进行序列特征权重生成的具体操作方法是:
5-2-1)以步骤3)得到的网络流量序列特征作为输入,将网络流量的包长序列集合,IPFlags集合和TCPFlags分三个分支独立地进行1D卷积操作;
5-2-2)对于步骤5-2-1)中的卷积操作,各分支均包含有两个1D卷积层:第一层卷积层的卷积核维度为k1,卷积核通道个数为C;第二层1D卷积层的卷积核维度为k2、通道个数为C0;在经过卷积操作后,使用平均池化平均特征向量的值;
5-2-3)在各分支在完成所有卷积操作后,均使用批归一化方法对本分支所形成的特征进行分布空间调整;将三个分支的输出拼接在一起,获得三个序列特征的权重值。
7.如权利要求4所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤5-3)所述序列特征带权融合的具体操作方法是:
对于单条网络流量,给定各分支生成的特征向量集合{f1,f2,f3}(fi维度为(C0×1)),分支权重集合{w1,w2,w3}(wi维度为(1×N),N为序列长度,即单条网络流量获取的最大数据报文个数),则该网络流量对应的特征向量可表示为输出数据F(x)的维度为(C0×N)。
8.如权利要求4所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤5-4)所述特征分类的具体操作方法是:
5-4-1)将步骤5-4)中得到的网络流量的带权特征向量作为输入,展平为一维;
5-4-2)以步骤5-4-1)得到的一维向量为输入,使用全连接层进行从特征向量到网络流量类型的映射;其中,全连接层的层数与除最后一层以外的每层神经元数量可根据需要自行设置,最后一层的神经元数量为d,由于最终的检测结果只有DDoS攻击流量或者良性网络流量,所以d=2;之后使用softmax激活函数将结果中的每个值控制在[0,1]的范围内,取值最大的维度代表着本次运算对该网络流量的检测结果。
9.如权利要求1所述的实时高效的物联网DDoS攻击检测方法,其特征在于,步骤6)所述知识数据的查询的具体操作方法是:
通过白名单和黑名单策略来存储网络流量的五元组信息:源IP地址、目的IP地址、源端口、目的端口和传输层协议;每次获取到网络流量时,先查看其是否在知识数据库当中,若在黑名单中,则直接检测为DDoS攻击流量;若在白名单中,则直接检测为良性流量。
10.一种实现如权利1-9任一所述方法的实时高效的物联网DDoS攻击检测系统,其特征在于,包括用于粗细粒度检测模型训练阶段的DDoS攻击流量特征提取模块、粗粒度检测模型构建模块和细粒度检测模型构建模块,以及用于DDoS攻击流量检测阶段的知识数据库查询模块、DDoS攻击流量特征提取模块、粗粒度DDoS攻击流检测模块;其中,
DDoS攻击流量特征提取模块负责对输入的原始物联网DDoS攻击和良性网络流量数据提取时间窗口级别的统计特征和单条流量级别的序列特征;
粗细粒度检测模型训练阶段的粗粒度检测模型构建模块负责根据网络流量的统计特征,使用传统机器学习方法中的随机森林算法,进行概率检测模型的训练,以供DDoS攻击流量检测阶段使用;
粗细粒度检测模型训练阶段的细粒度检测模型构建模块负责根据网络流量的序列特征,使用深度学习方法,基于带有序列特征权重生成的神经网络进行流级检测模型的训练,以供DDoS攻击流量检测阶段使用;
DDoS攻击流量检测阶段的知识数据库的查询模块负责根据网络流量的五元组信息,采用黑名单和白名单机制,进行网络流量的拦截与放行;
DDoS攻击流量检测阶段的粗粒度DDoS攻击检测模块负责根据粗细粒度检测模型训练阶段所生成的概率检测模型,对网络流量以时间窗口为单位进行粗粒度检测,并输出判别结果,更新知识数据库;
DDoS攻击流量检测阶段的细粒度DDoS攻击检测模块负责根据粗细粒度检测模型训练阶段所生成的流级检测模型,对粗粒度检测结果中良性窗口的网络流量,以单条流量为单位进行细粒度检测,并输出判别结果,更新知识数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310275662.9A CN116471048A (zh) | 2023-03-20 | 2023-03-20 | 一种实时高效的物联网DDoS攻击检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310275662.9A CN116471048A (zh) | 2023-03-20 | 2023-03-20 | 一种实时高效的物联网DDoS攻击检测方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116471048A true CN116471048A (zh) | 2023-07-21 |
Family
ID=87181498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310275662.9A Pending CN116471048A (zh) | 2023-03-20 | 2023-03-20 | 一种实时高效的物联网DDoS攻击检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116471048A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117729137A (zh) * | 2024-02-08 | 2024-03-19 | 金数信息科技(苏州)有限公司 | 一种网络流量数据的特征生成方法、装置及设备 |
CN118509255A (zh) * | 2024-07-17 | 2024-08-16 | 中国计量大学 | 一种采用多模态数据融合的攻击识别方法 |
-
2023
- 2023-03-20 CN CN202310275662.9A patent/CN116471048A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117729137A (zh) * | 2024-02-08 | 2024-03-19 | 金数信息科技(苏州)有限公司 | 一种网络流量数据的特征生成方法、装置及设备 |
CN118509255A (zh) * | 2024-07-17 | 2024-08-16 | 中国计量大学 | 一种采用多模态数据融合的攻击识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112163594B (zh) | 一种网络加密流量识别方法及装置 | |
Wang et al. | PacketCGAN: Exploratory study of class imbalance for encrypted traffic classification using CGAN | |
CN116471048A (zh) | 一种实时高效的物联网DDoS攻击检测方法及系统 | |
Liang et al. | A long short-term memory enabled framework for DDoS detection | |
Hartl et al. | Explainability and adversarial robustness for rnns | |
CN113364787B (zh) | 一种基于并联神经网络的僵尸网络流量检测方法 | |
Wang et al. | Res-TranBiLSTM: An intelligent approach for intrusion detection in the Internet of Things | |
Wang et al. | Using CNN-based representation learning method for malicious traffic identification | |
CN112995150A (zh) | 一种基于cnn-lstm融合的僵尸网络检测方法 | |
Hwang et al. | Detecting IoT malicious traffic based on autoencoder and convolutional neural network | |
CN114697096A (zh) | 基于空时特征和注意力机制的入侵检测方法 | |
Kong et al. | Identification of abnormal network traffic using support vector machine | |
CN113723440A (zh) | 一种云平台上加密tls应用流量分类方法及系统 | |
CN116827873A (zh) | 一种基于局部-全局特征注意力的加密应用流量分类方法及系统 | |
CN113901448A (zh) | 基于卷积神经网络和轻量级梯度提升机的入侵检测方法 | |
Hagar et al. | Deep learning for improving attack detection system using CSE-CICIDS2018 | |
CN114285606B (zh) | 一种针对物联网管理的DDoS多点协作式防御方法 | |
CN116170237B (zh) | 一种融合gnn和acgan的入侵检测方法 | |
Majhi | An Improved Intrusion Dectection System using BoT-IoT Dataset | |
CN115987599A (zh) | 基于多层次注意力机制的恶意加密流量检测方法及系统 | |
Kozlowski et al. | A New Method of Testing Machine Learning Models of Detection for Targeted DDoS Attacks. | |
Useni et al. | A Review of Machine Learning-based Algorithms for Intrusion Detection System | |
Liu et al. | Detection of a novel dual attack in named data networking | |
CN113660193B (zh) | 一种软件定义网络中基于数据面网络特征采集的DDoS攻击检测方法 | |
Pillai et al. | IoT Security Detection and Evaluation for Smart Cyber Infrastructures Using LSTMs with Attention Mechanism |
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 |