APP下载

面向DDoS入侵检测的报文特征提取方法

2020-06-23赵桦筝黄元浦孙岭新杜昊郭凯文

网络空间安全 2020年3期
关键词:特征提取机器学习数据挖掘

赵桦筝 黄元浦 孙岭新 杜昊 郭凯文

摘   要:机器学习算法是当前检测网络入侵的主要方法。然而,现有入侵检测方法提取攻击报文特征的维度较小,导致检测精度偏低。针对该问题,文章提出了面向DDoS入侵检测的报文特征提取方法(DDoS Message Feature Extraction,DMFE)。该方法在分析DDoS攻击过程的基础上,根据报文协议将DDoS攻击分为五类,并针对不同的类型提取其特征向量,增加了攻击报文特征的维度与表达能力,有利于提升入侵检测算法的精度。模拟实验结果表明,DMFE与现有的其他特征提取方法相比,能够有效地提高基于神经网络、K-近邻等入侵检测方法的精度。此外,DMFE受分类算法种类影响弱,可以适用于多种机器学习算法并取得了几乎相同的效率。

关键词:网络安全;特征提取;数据挖掘;机器学习;分布式拒绝服务攻击

中图分类号: TP393.08          文献标识码:A

Abstract: Machine learning algorithms have been widely used in the field of network intrusion detection. However, existing intrusion detection methods extract attack message features with small dimensions, resulting in low detection accuracy. Contrapose to the above problem, a DDoS intrusion detection - oriented message feature extraction method (DMFE) is proposed. Based on the analysis of DDoS attack process, this method divides DDoS attack into five categories according to the message protocol, and extracts its feature vectors according to different types, which increases the feature dimension of attack message, improves the feature expression ability, and is conducive to improving the accuracy of intrusion detection algorithm. Simulation results indicate that compared with other feature extraction methods, DMFE feature extraction method can effectively improve the accuracy of intrusion detection methods based on neural network, k-nearest neighbor etc. In addition, due to the weak influence of classification algorithm, DMFE can be applied to a variety of machine learning algorithms and achieve almost the same efficiency.

Key words: internet security; feature extraction; data mining; machine learning; distributed denial of service

1 引言

隨着互联网技术的不断发展,网络空间规模正不断扩大,随之而来的网络安全威胁也日益增多。在全球,每年因大型网络攻击造成的经济损失,甚至可与灾难性自然灾害带来的损失相当[1]。但现有的网络安全防护方法难以有效地应对当前多样化的网络攻击方式,使得一系列网络安全事件频发。例如,在2019年2月5日至3月1日,美国UAlbany大学至少遭受了17次DDoS攻击;2月初,菲律宾全国记者联盟的网站受到DDoS(Distributed Denial of Service)攻击,最高流量为468 GB/s,致使该网站被迫关闭了数小时。

本文通过分析DDoS攻击过程,将基于报文协议的攻击分为了欺骗攻击、流量攻击、反射攻击、慢连接攻击、连接耗尽攻击五大类。在此基础上对各种攻击类型报文的特点进行深入剖析,设计并实现了各种攻击类型报文特征向量提取方法(DMFE)。该方法实现了网络中报文的实时采集与检测,最大可能地在攻击初期就检测到攻击特征,避免后续可能遭受的攻击,降低损失,为高效解决DDoS攻击问题提供了新的方案。

2 相关工作

目前,学术界对于DDoS攻击问题的研究,采用了多样性的攻击检测方法,然而对于特征向量提取方法的研究有待加深。

梅梦喆在SDN环境下对DDoS攻击检测和防护进行了研究[2],源IP、数据包大小等参数作为特征向量,采用了多位条件熵进行DDoS攻击检测。这种方法对网络层的DDoS攻击有较好作用,但难以有效应对应用层的DDoS攻击。

孙正君在SDN环境下采用了深度学习混合模型对DDoS攻击进行了检测和防御[3],将流表的多个属性交由深度学习模型自动获取,且手动构建了流表平均数据包量、不同端口增长速率等特征向量,可获得较高的检测率。该方法的弊端在于特征数量的增加无疑加重了服务器的负担,在未受到攻击时也会耗费服务器的载荷。

3 DDoS攻击报文分类

为了从大量混杂的数据报文中准确捕捉到攻击报文,本文基于攻击过程,结合协议本身特性[4],设计了新的特征值提取方案。针对不同的攻击类别提取不同的特征值,实现了对于攻击流的准确锁定,为攻击处理模块提供了高效的服务。

针对不同的攻击过程以及协议类型,本文将DDoS攻击报文分为五个基本的大类:欺骗攻击、流量攻击、反射攻击、慢连接攻击和连接耗尽攻击。

3.1 欺骗攻击

欺骗攻击主要通过伪造IP地址和MAC地址,在网络中产生大量的ARP通信量,使目标主机ARP缓存中的IP-MAC条目不断更新,造成网络中断或阻塞。

欺骗攻击的特征向量为:

v = (p, n,σlen, σsp,σdp),其中p为协议类型,n为单位时间内接收的报文数量,σlen、σsp、σdp分別为报文长度、源端口号、目的端口号的标准差。

欺骗攻击时单个目的IP单位时间内接收的报文数量较大,即n值较大,且易在较短时间内产生大量请求内容相似的数据报,即其报文长度、源端口、目的端口数据离散度较低。本文通过计算标准差表示数据的离散程度,即攻击报文的σlen、σsp、σdp值较小。

即当n较大,且σlen、σsp、σdp的值较小时,可判断发生了欺骗攻击。

3.2 流量攻击

流量攻击通常是攻击者通过控制众多的傀儡机向被攻击方发送大量合法的请求,造成被攻击主机的大量资源被占用而瘫痪。流量攻击的特征向量为:

v = (p, n, a, l, σlen),其中p为协议类型,n为单位时间内接收的报文数量,a为报文总数/源IP个数,l为报文长度。

流量攻击大多发送速度极快、源IP不断变化,且很少可能有相同的源IP,即n较大且a值趋近于1。报文长度不变,且普遍为过小包,即l与σlen值较小。

即当n较大,l及σlen较小且a值趋近于1时,可判断发生了流量攻击。

3.3 反射攻击

在反射攻击中,攻击者通过伪造目标主机地址发送广播请求,使整个广播域的主机向被攻击服务器发送回复报文,造成目标服务器不能处理其他正常的交互数据流。反射攻击的特征向量为:

v = (p, n, l, σsp, σdp),其中p为协议类型,n为单位时间内接收的报文数量,l为报文长度,σsp、σdp分别为该时间窗内源端口号、目的端口号的标准差。

反射攻击时被攻击者单位时间内会接收到大量的响应数据,即n值较大,且报文的长度都较长,即l较大。源端口的离散程度偏高,目的端口的离散程度较低。本文通过计算标准差表示数据的离散程度,即攻击报文的σsp较大而σdp较小。

即当n、l较大,σsp较大而σdp较小时,可判断发生了反射攻击。

3.4 慢连接攻击

慢连接攻击主要针对应用层的HTTP协议,通过对请求头部、报文内容等的处理占用资源。慢连接攻击的特征向量为:

v = (p, h, b, w),其中p为协议类型,h为HTTP层请求头部没有结束标志的报文个数;b = l / c,其中c为请求头中Content-Length的值,l为报文长度;w为报文TCP层窗口大小的值的和。

当连续多个报文HTTP层中请求头部中都没有结束标志时,即h较大时,判断属于Slow Headers攻击;当c >> l时,即b趋近于1时,判断属于Slow Body攻击;当同一IP连续多次发送零窗口,即w趋近于0时,判断属于Slow Read攻击。

即当h较大,或b趋近于1或者w趋近于0时,可判断发生了慢连接攻击。

3.5 连接耗尽攻击

连接耗尽攻击利用TCP协议高资源占用来消耗目标主机的系统资源。连接耗尽攻击的特征向量为:

v = (p, n, m, RST, FIN),其中p为协议类型,n为单位时间内接收的攻击报文数量,m为单一源IP请求报文数量。

连接耗尽攻击新建连接速率较高,单位时间内的报文数过大,即n过大,单一源IP异常会话请求报文数量过多,即m过大,且通常会通过发送FIN或RST为1的报文断开连接。

即当n或m的值过大时,且 RST或FIN标志位为1时,可判断发生了连接耗尽攻击。

4 实验方案

为了验证DMFE方法的有效性,本文针对常见的DDoS攻击问题展开了研究[5],分析报文协议类型并结合SDN控制与转发解耦合的相关特性架构,提出了基于DMFE的软件定义安全系统,并在模拟环境中测试了DMFE的分类效率以及与现有其他特征提取方案的对比效果。

针对DDoS攻击中具有代表性的TCP协议进行了多种攻击方式的模拟,并对采集到的数据集依次进行了攻击报文分析、检测、处理的系统性实验,以此为例说明此框架的防御流程。

4.1 模拟环境

该实验在Mininet仿真环境中完成。首先分别创建两台虚拟机并分别命名为ODL和Mininet,在ODL中安装Wireshark和OpenDaylight Carbon版本的控制器,以及使用python 3.x版本的pycharm,在Mininet中安装支持OpenFlow1.3协议的Mininet和Wireshark,并安装MySQL数据库存储报文。

4.2 数据采集

本文采用动态采集窗口[6],实时抽样检测通过SDN交换机的报文。动态采集窗口内采集到的报文将转化为特征值,并传送给DDoS攻击检测模块。

为动态确定检测窗口的大小Tar,本文提出了如计算公式(1)所示:

(1)

此算法需要确定检测单位时间Ti和单位时间内的流量mes。若近期发生过DDoS攻击,则需对近期攻击发生次数(Attack)进行设置,否则为0。当系统检测到了DDoS攻击时,根据攻击程度设置攻击发生标志(Flag)为1至2;若尚未检测到攻击的发生,设置为1。再结合近期发生的攻击,依情况确定权重并求和,得出动态确定的检测窗口的大小。

4.3 攻击分类检测

本文根据其攻击特性以及TCP协议特性,提取报文特征值并建立了特征向量:v = (p, RST, SYN, ACK, fs, fm, nRST, n),其中p为协议类型,fs为单个源IP攻击次数,fm为该时间窗内异常IP个数,RST攻击次数,n为单位时间内接收的报文数量。然后使用BP神经网络算法[7],K-近邻算法和SVM支持向量机[8],分别对数据集进行了训练,并将得到的训练模型用测试集进行了测试。

4.4 实验结果

如表1所示,为检验不同条件下特征提取的效果,本文调整算法及相应参数值,进行了多组测试。

如图2所示,本文将实验结果绘制成线性图,发现达到各算法的阈值I时,模型准确率均能达到98%如图2所示,本文将实验结果绘制成线性图,发现达到各算法的阈值I时,模型准确率均能达到98%以上。

为验证本文特征向量提取的高效性,测试了在相同实验环境、相同数据集的情况下,DMFE与梅梦喆等人[2]选取的以源/目的IP、源端口号、数据包大小4个参数作为特征向量的特征提取方式在各算法下的效果进行对比。通过图3性能比较测试图可看出在DDoS攻击的初期阶段,DMFE具有较为明显的优势。

4.5 攻击处理

本实验中首先使用已训练的模型检测出攻击报文和非攻击报文,并对攻击报文进行标记。接着将处理后的数据传输给SDN控制器。SDN控制器识别出带有标记的攻击报文,下发全局策略将各交换机中的该流表项删除,以此高效地解决DDoS攻击问题[9]。

本文设计了一种算法判断是否为攻击行为。首先对所有源IP进行违规次数统计,并用公式(2)所示计算Tar值。其中时间窗m→n为动态采集窗口,msg为总共收到的报文数,其中a条发生违规,Ti为单位时间,Tj为第j条违规发生的时间:

(2)

当Tar > 0.16,判断发生了攻击行为,可利用已训练模型进行模式匹配,对攻击报文进行标记后,利用SDN控制器下发策略对标记报文集中处理。

4.6  DMFE优势分析

本文提出的报文特征向量提取方法DMFE相较于原有的DDoS攻击检测方法有三点优势。

(1)相较于传统的检测方法,DMFE针对报文特征,扩大了DDoS攻击检测的范围,解决了原有方法只能检测网络层或应用层DDoS攻击的问题。

(2)DMFE提取的特征值具有普适性,与主流算法的结合性较高,能够较好地适应不同应用环境。

(3)基于DMFE的DDoS攻击分类检测模块[10],通过分析DDoS攻击过程以及协议特性,综合提取源IP,标签值如seq、ack、rst等多方面的特征值。利用机器学习算法的深度学习和有监督学习,能够以较高的准确率进行攻击报文的分类与攻击判断,减少误判和漏判。

5 结束语

在网络环境日益复杂,DDoS攻击不断加剧的背景下,本文提出了面向DDoS入侵检测的报文特征提取方法(DMFE)。通过深入研究DDoS攻击过程将基于协议的DDoS攻击报文合理地分为了欺骗攻击、流量攻击、反射攻击、慢连接攻击和连接耗尽攻击五种类型。并在此基础上根据攻击的类型提取相应的特征值组成特征向量。利用机器学习通过已训练的模型标记出攻击报文,借助于SDN架构的灵活性快速下发策略至网络的各个节点,尽可能地在第一时间发现并消除DDoS攻击。本文选取了较具代表性的TCP协议进行模拟实验验证。由于采用的是在实验环境中以自攻击方式获取的数据集,其检测精度,在实际应用时可能会有所下降。本文通过不同算法及参数检验,以及与他人方法的对比,表明了DMFE方法的可靠性。

基金项目:

郑州大学大学生创新创业训练计划项目(项目编号:No.2019cxcy666)。

参考文献

[1] MIT Lincoln Laboratory Inf-ormation Systems Technology. MIT Lincoln Laboratory[EB/OL]. http://www.ll.mit.edu/ideval/data/2000data.html .2000.

[2] 梅夢喆. SDN中基于多维条件熵的DDoS攻击检测与防护研究[D].南昌:南昌航空大学,2016.

[3] 孙正君. SDN中基于深度学习混合模型的DDoS攻击检测与防御技术研究[D].杭州:浙江工商大学,2018.

[4] 杨长春,倪彤光,薛恒新.一种基于数据挖掘的DDoS攻击入侵检测系统[J].计算机工程,2007,No.291(23):167-169.

[5] Jelena Mirkovic,Peter Reiher. A taxonomy of DDoS attack and DDoS defense mechanisms[J].ACM SIGCOMM Computer Communication Review,2004,342:39-53.

[6] Matthew Mathis,Jeffrey Semke,Jamshid Mahdavi,Teunis Ott. The macroscopic behavior of the TCP congestion avoidance algorithm[J].ACM SIGCOMM Computer Communication Review,1997,273:67-82.

[7] Xia Jing, Cai Zhiping, Hu Gang, Xu Ming. An Active Defense Solution for ARP Spoofing in OpenFlow Network[J]. Chinese Journal of Electronics,2019,v.28(01):172-178.

[8] Qiu Xiaofeng, Liu Wenmao,Gao Teng, He Xinxin, Wen Xutao, Chen Pengcheng. WoT/SDN:Web of Things Architecture Using SDN[J].中国通信,2015,v.12(11):177-187.

[9] Alan Saied, Richard E. Overill, Tomasz Radzik. Detection of known and unknown DDoS attacks using Artificial Neural Networks[J]. Neurocomputing,2016,172:.

[10] 左青云,陈鸣,赵广松,邢长友,张国敏,蒋培成. 基于OpenFlow的SDN技术研究[J].软件学报,2013,v.24(05):1078-1097.

作者简介:

赵桦筝(1999-),女,汉族,河南洛阳人,郑州大学,本科;主要研究方向和关注领域:计算机科学与技术、网络安全、数据挖掘、机器学习。

黄元浦(2000-),男,汉族,河南南阳人,郑州大学,本科;主要研究方向和关注领域:网络空间安全、计算机网络、密码学和机器学习。

孙岭新(1998-),男,汉族,河南焦作人,郑州大学,本科;主要研究方向和关注领域:网络空间安全、计算机网络、密码学和机器学习。

杜 昊(1998-),男,汉族,河南人,郑州大学,本科;主要研究方向和关注领域:网络空间安全、计算机网络、密码学和机器学习。

郭凯文(1999-),男,汉族,河南洛阳人,郑州大学,本科;主要研究方向和关注领域:网络安全、数据挖掘、大数据、软件定义网络。

猜你喜欢

特征提取机器学习数据挖掘
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
基于曲率局部二值模式的深度图像手势特征提取
数据挖掘综述
软件工程领域中的异常数据挖掘算法
基于网络搜索数据的平遥旅游客流量预测分析
前缀字母为特征在维吾尔语文本情感分类中的研究
基于支持向量机的金融数据分析研究
基于R的医学大数据挖掘系统研究
一本面向中高级读者的数据挖掘好书