基于特征选择的工业互联网入侵检测分类方法

任家东 张亚飞 张 炳 李尚洋

(燕山大学信息科学与工程学院 河北秦皇岛 066004) (河北省软件工程重点实验室(燕山大学) 河北秦皇岛 066004)

摘 要 由于工业互联网接入设备的多样性和差异性,使其维护困难且易受攻击,针对该安全问题需要引入相关的防御系统来识别各种入侵攻击.传统的入侵检测系统能够检测到的攻击类型较少,且网络流量数据由于存在冗余导致无关特征使得分类性能较差.因此,提出一种基于特征选择的工业互联网入侵检测分类方法.该方法首先对数据集进行预处理,并通过计算特征的皮尔逊相关系数来判断特征的强弱关系,确定最优的阈值进行特征提取;之后从机器学习和深度学习2个角度,利用逻辑回归、支持向量机、K近邻、决策树、随机森林、多层感知机、卷积神经网络和时空网络8种模型分别进行二分类和多分类实验,并作评估.实验结果表明,随机森林的二分类效果最佳,决策树的多分类效果最佳.最后在真实工业互联网实践中验证了所提方法的有效性.

关键词 工业互联网;入侵检测;皮尔逊相关系数;机器学习;深度学习

互联网行业的发展使得“工业互联网”这个名词也开始走进了大众的生活,给电子装备、钢铁、采矿、电力等工业制造业带来了便捷.所谓的工业互联网就是把工业制造与互联网融合起来,将工业系统中的设备、车间、工厂、员工与客户等利用互联网这个平台作为枢纽连接起来的网络,从而推动工业的智能化,实现行业间的互通、资源间的共享.

然而,由于各种移动终端、工厂车间的接入,使得工业互联网群体日益强大,安全问题愈加突出.研究发现,2020年上半年,通过国家工业互联网的安全态势感知平台,检测到了各种恶意攻击1 356.3万次,其中流量异常、非法外联、僵尸网络占恶意攻击总数的80%以上[1].随着工业互联网的发展与应用,其遭受的恶意攻击与日俱增,给工业互联网带来各种安全隐患,更严重的可能会导致工厂车间的瘫痪,生态系统失衡[2].

针对工业互联网的安全现状,网络入侵检测系统(intrusion detection system, IDS)可以有效识别网络中的攻击行为,实时监测网络状况,一旦发现入侵就会立即、主动地做出响应.入侵检测系统的关键在于对攻击行为的识别,传统的入侵检测系统从最初的利用审计信息来追踪用户的可疑行为,到提出了第一个实时的入侵检测专家系统模型[3],再到利用状态转换分析来进行完善,对攻击的识别始终是网络安全领域的热点问题.然而,随着工业互联网环境的日益复杂,传统入侵检测系统的问题便突显了出来,如较多地占用网络资源、网络流量分析能力不足、对各种攻击的监测能力较差[4]、误报率较高等.

随着机器学习和深度学习模型的普及,大量学者开始将机器学习和深度学习模型运用到工业互联网的入侵检测系统中[5-10],有效缓解了传统入侵检测系统的瓶颈问题.在传统入侵检测系统中引入机器学习和深度学习,就可以把入侵检测问题简化为识别与分类问题来处理,智能化地实现网络安全维护.研究表明,机器学习和深度学习模型能够有效识别正常与异常行为.但是,针对异常攻击中的具体攻击类别如DOS,Generic,Exploits等,研究成果较少.

为了实现具体攻击类别的识别,帮助入侵检测系统快速、准确地做出响应,还需要对工业互联网网络流量数据进行特征选择,以此减小冗余特征对分类效果的影响.常见的特征选择方法有相关系数法、卡方检验、信息增益[11]、递归特征消除[12]等,通过这些方法,能够减少特征的数量和降低数据维度.其中,相关系数法最为简单高效,通过计算皮尔逊相关系数,能够快速准确地判断特征之间的相关性,避免不相关特征未被筛选或相关特征过度筛选的情况,提高模型精度.

为了去除无关特征并更好地提高分类性能,本文提出了一种基于皮尔逊特征选择的入侵检测分类方法,主要贡献包含3个方面:

1) 对原始数据集进行分析,利用独热编码、归一化等进行预处理,利用皮尔逊相关系数进行特征选择,提高模型识别的准确率.

2) 从机器学习和深度学习2个角度,通过8种模型对入侵检测攻击进行分类评估和比较分析,确定了性能最佳的二分类和多分类模型.

3) 在公共数据集和工业互联网真实流量数据集上,验证了本文评估方法对入侵检测二分类和多分类的有效性.

1 相关工作

工业互联网网络流量数据复杂多变,特征冗余度高,使得其产生的安全问题难以被发现.目前,用于验证入侵检测方法的经典数据集主要有KDD99,NSL-KDD99等,但是这些传统的数据集数据陈旧、更新缓慢,只能识别Normal,DOS,R2L,U2L和Probe这5种攻击类型,对于现在网络中出现的其他攻击无法实现精准识别.Kilincer等人[13]详细介绍了网络入侵检测系统中常用的6种数据集,并对其进行对比分析,表明了UNSW-NB15数据集更适用于现在的各种研究.Almomani等人[14]基于UNSW-NB15数据集,利用机器学习中的逻辑回归、贝叶斯、决策树、随机森林等分类器进行了二分类的实验,实验结果显示随机森林的分类效果最好,准确率为87%.Zhang等人[15]基于UNSW-NB15和MSU数据集,采用MRMR算法和支持向量机方法对特征进行选择,实验结果表明有的特征之间具有强耦合性,而有的特征冗余.Kumar等人[16-17]基于UNSW-NB15数据集提出了一种新型统一的入侵检测算法,通过计算信息增益进行特征选择,其结果仅识别了4~5种攻击类型,成功识别的种类较少.Agarwal等人[18]利用朴素贝叶斯、支持向量机、K近邻3种机器学习模型进行了分类,其中支持向量机的准确率最高,达到97.77%.

上述大多研究中,没有充分利用各种机器学习和深度学习模型分别进行二分类和多分类实验.其中涉及特征选择的研究,虽然有效识别出了网络流量中的异常行为,但是识别出的具体攻击类型最多为5种.本文通过计算皮尔逊相关系数,选择合适的特征,分别结合机器学习和深度学习模型进行二分类和多分类实验,对工业互联网入侵检测情况进行详细的分析.

2 基于特征选择的入侵检测分类方法设计

本节首先给出了基于特征选择的入侵检测分类方法的整体框架;其次,对特征选择和分类模型分别进行具体阐述.

2.1 研究框架

本文的结构框架分为工业互联网流量数据预处理、特征选择、训练并验证模型、评估分析、特征分析5个部分,如图1所示.

1) 数据预处理.从不同维度分析UNSW-NB15数据集的数据特征,对数据进行统一的清理与归一化,并根据特征属性的类型,将其转化成模型可识别的数据.

2) 特征选择.对原始数据集进行预处理后,计算特征的皮尔逊相关系数,判断每种特征相关程度强弱,通过实验选择最优阈值,实现特征选择.

3) 训练并验证模型.利用支持向量机、逻辑回归、K近邻、决策树、随机森林等传统机器学习模型和多层感知机、卷积神经网络、时空网络等深度学习模型进行训练和验证.

4) 评估分析.对工业互联网网络流量分别进行二分类和多分类研究,二分类指的是能够识别正常行为与攻击行为,多分类能够识别出具体的攻击类型,根据准确率等评价参数,确定哪种模型二分类效果最佳,哪种模型多分类效果最佳.

5) 特征分析.根据分类结果,分析不同特征和特征相关性对分类结果的影响.

Fig. 1 Schematic diagram of the research structure
图1 研究结构框架示意图

2.2 预处理

工业互联网需要收集来自各种工业场景的数据并形成数据集,但收集的过程会由于设备、网络、人工等导致一些数据出现错误或偏差,也会因为一些数据的属性特点,无法对这些数据做进一步分析处理.因此,在得到原始数据之后,首先要对其进行预处理,以此来降低后续实验的难度,提升实验效果.工业互联网流量数据的特征属性主要分为连续型和离散型,本文针对离散型特征,利用独热编码实现特征的映射;针对连续型特征,利用归一化将连续型特征数据缩放至[0,1]区间.

2.2.1 独热编码

独热编码的定义为:用N位状态寄存器来实现对N种状态的编码[19],充分保证了每种状态都能够保存在寄存器中,不会发生特征丢失现象,并且只有一位的编码有效.

工业互联网流量数据中的离散型特征定义为Di,其取值为Di={Di1,Di2,…,Din},n表示该离散型特征取值数量.经过独热编码后,用有n位的二进制编码分别代表每种取值,Di取值变为{1000…, 0100…, 0010…, …, …0001},其中当第j位为1时,代表了Di中的某项取值Dij.

利用独热编码进行特征映射,能够有效处理分类器难以处理的特征问题,从而提高模型的运行效率.但是独热编码并不适用于特征类别较多的属性,当类别较多时,会导致特征向量空间较大,进而形成高维的稀疏矩阵,使运算效率大大降低.

2.2.2 数据归一化

归一化的定义是把所有的数据映射到区间[0,1]上,从而加快模型收敛的速度,提高分类结果的精度.归一化的方法有很多,其中最常用的就是Min-Max标准化,也称离差标准化.工业互联网流量中的连续型特征记为X,特征的最小值和最大值分别为MinMax,通过式(1)将数据进行归一化处理,设X′是归一化后的结果,则:

(1)

2.3 特征选择

入侵检测数据中大多包含一些冗余无关的数据特征,需要进行特征的提取,挑选出满足实验要求的特征.常见的特征选择方法有过滤法、包装法和嵌入法.过滤法是通过对每种属性相关性的评价,设置阈值来进行特征的筛选;包装法在过滤法的基础上,实现了多种特征之间交互关系的检测,并结合机器学习算法来对子集进行评估;嵌入法结合了过滤法和包装法的优点,实现了特征选择和算法训练的并行操作.

在特征选择过程中,根据网络流量的特征,需要用评价函数来衡量特征子集的性能,常见的评价函数有距离度量、信息度量和依赖性度量等.距离度量通过计算样本之间的距离来实现对样本的分类,距离越小,越可能属于同一种类别;信息度量通过计算信息增益、信息熵等,将特征信息量化,计算所得值越大,越说明了分类器的性能较优;依赖性度量用来评价特征之间或类别与特征之间的相关性,与类别相关性大的特征被认为是好的特征.前2种评价方式无法判断特征对分类结果的影响,也忽略了网络流量特征之间的关联性对分类结果的影响情况,鉴于网络流量特征数据的复杂性和异构性,前2种评价方式较少用于评估生成特征子集的好坏.依赖性度量的评价方法能够很好地实现网络流量特征对类别影响的评估.依赖性度量中的皮尔逊相关系数具有易于理解、简洁高效且计算复杂度较低等优点,因此,本文选择皮尔逊相关系数来衡量类别与特征之间的相关程度,计算方法为

(2)

其中,XY分别代表2种流量特征,XiYi代表2种特征的实际取值,分别是该特征的平均值.COV指的是特征间的协方差,σ代表了标准差.

皮尔逊相关系数的取值范围为-1~1,其绝对值越大,说明2个变量间的相关程度越强,一般通过表1来判断相关程度的强弱.

Table 1 Strength of Correlation Table

表1 相关程度强弱对应表

相关系数范围强弱程度0.0~0.2极弱相关或无相关0.2~0.4弱相关0.4~0.6中等程度相关0.6~0.8强相关0.8~1.0极强相关

2.4 分类模型

工业互联网入侵检测系统利用机器学习和深度学习中的各种模型对流量数据进行二分类和多分类,识别出攻击类型并正确分类.

在机器学习模型中,逻辑回归经常被用于解决二分类问题,也可用来解决多分类问题,通过Logistics函数来归一化预测值;支持向量机通过超平面来对数据进行分类,在训练数据的同时学习攻击模型进而实现分类,主要适用于线性分类且特征量大的数据集[18]K近邻是分类模型中最简单的分类器之一,通过判断与未知样本最近的K个样本的类别,将其分类为K个样本点中大多数样本所属类别;在决策树中,通过样本的特征值进行分类,树的节点代表数据集的特征,分支表示划分的决策规则[20];随机森林是基于多个决策树来构建的,以此可以有效预防过拟合问题,通过对每一棵树进行预测,最终获得最优解,大多用于多分类问题,具体构建过程如图2所示.

1) 对样本进行随机有放回的采样(Bagging采样),训练决策树.

2) 在包含M个特征的样本中,选取m个特征(mM),根据Gini Impurity选择作为分裂节点的特征,计算方法为

Fig. 2 Modeling process of random forest model
图2 随机森林模型建模过程示意图

(3)

其中C表示分类的数量,某一条数据是第i类的概率为p(i).

3) 对每个节点重复步骤2),直到不能分裂为止,生成决策树.

4) 重复步骤1)~3),建立大量的决策树,生成随机森林,并根据“少数服从多数原则”,做出决策.

深度学习模型中,多层感知机在单层神经网络的输入层和输出层之间引入了隐藏层,并利用非线性激活函数relu(x)=max(x,0)进行标签划分,实现模型分类;卷积神经网络是用卷积运算代替矩阵乘法运算的神经网络[21],卷积层和池化层的加入能够有效利用工业互联网网络流量特征进行异常检测.时空网络将CNN处理后的一维数据,作为LSTM的输入,对经过处理后的流量数据特征进行正常和异常行为的分类.

2.5 评价指标

准确率(accuracy)、精确率(precision)、召回率(recall)和F1分数(F1-score)用来对机器学习和深度学习模型进行评价.

1) 准确率(accuracy).可以直接用来衡量模型的好坏,其结果指的是对整体样本的预测准确度,accuracy的值越大,说明模型越好,计算为

(4)

其中,TP指攻击类型被正确分类的数量,TN指正常行为被正常分类的数量,FP指正常行为被分类为攻击行为的数量,FN指未将此攻击类型正确分类的数量.

2) 精确率(precision).针对预测结果,在样本不均衡的情况下提出的,由式(5)可看出,其含义为在所有的被预测为正的样本里,实际结果为正样本的概率,计算为

(5)

3) 召回率(recall).针对实际原样本的,在实际结果为正的样本,被预测也为正的概率,计算为

(6)

4) F1分数(F1-score).在希望精确率和召回率都很高,但又不能同时满足时,就需要寻找二者的一个平衡点,平衡点定义为F1-score,同时考虑到精准率和召回率,使得二者结果能够达到最优,计算为

(7)

5) 加权准确率(ωaccuracy).在多分类的情况中,要综合考虑每种行为类型的准确率,因此利用加权准确率来评价模型的整体分类效果,计算为

(8)

其中,i为某种行为类型,共有k种行为类型,accuracyi为某种行为类型的准确率,ni为某种行为类型的数量,nk种行为类型数量之和.

3 实验与结果

3.1 实验环境

本文所有的实验均在Windows 10 PC,Intel®CoreTM i5-10210U CPU @ 1.60 GHz,16.00 GB RAM环境中实现.采用Python中的Sklearn库等实现算法.

3.2 数据集

本文选取了UNSW-NB15数据集进行实验,数据集基于IXIA PerfectStorm创建,并最终以CSV文件的形式生成.数据集中包含49种特征,根据这些特征的数据类型,将其划分成5种:Object,Integer,Float,Timestamp,Binary,如表2所示.经过对这些特征的分析,最终可以识别Analysis,Backdoor,DoS,Exploits,Fuzzers,Generic,Shellcode,Reconnaissance,Worms,Normal共10种行为类别,其中Normal属于正常行为,其余为异常攻击行为.

Table 2 Feature Classification

表2 特征分类表

类型特征Objectsrcip,dstip,proto,state,service,attack_catIntegersport,dsport,sbytes,dbytes,sttl,dttl,sloss,dloss,sp-kts,dpkts,swin,dwin,stcpb,dtcpb,smeansz,dmean-sz,trans_dept,res_bdy_len,ct_state_ttl,ct_flw_http_mthd,ct_ftp_cmd,ct_srv_src,ct_srv_dst,ct_dst_ltm,ct_src_ ltm,ct_src_dport_ltm,ct_dst_sport_ltm,ct_dst_src_ltmFloatdur,sload,dload,sjit,djit,sintpkt,dintpkt,tcprtt,syn-ack,ackdatTimestampstime,ltimeBinaryis_sm_ips_ports,is_ftp_login,label

3.3 预处理

3.3.1 数据清理

对工业互联网流量数据集“service”列的值进行转化.该列代表使用的通信服务类型,常见的通信服务包括HTTP,FTP,SMTP,SSH,DNS,FTP-data,IRC协议,但数据集中有的结果是“-”,代表了不常用的协议,模型无法识别,导致结果产生错误.因此,将“-”用“None”来代替,便于模型的识别,同时也不会对结果造成较大的影响.

数据集中某些属性列的取值错误将对分类结果产生影响,需对其进行筛选.“ct_flw_http_mthd”列和“is_ftp_login”列的结果属于Binary列,其结果非0即1.以“is_ftp_login”列为例,该属性的含义是:FTP会话是否被用户和密码访问,如果是,结果为0,反之即为1.根据表3中处理前的特征值可知,该属性共有4个取值0,1,4,2,违背了“非0即1”的原则,说明2和4属于错误值,将包含错误值的数据应

Table 3 Comparison of “is_ftp_login” Attribute Data Processing Before and After

表3 “is_ftp_login”属性数据处理前后对比表

处理前的特征值处理前的数量处理后的特征值处理后的数量01747573130329410922101747573130459

用于分类中,会对结果产生较大影响,因此,要对这些数据进行处理.正常处理方法是进行替代,将该列所有取值为2或4的数据,都用1进行替代,如表3中处理后的特征值所示.

3.3.2 特征映射

UNSW-NB15数据集中,属于“Object”类型的特征都是string字符串,模型无法识别.因此,利用独热编码(one-hot encoding)实现特征映射.如“proto”列代表了传输协议,其取值包含TCP,UDP这2种,则映射的编码为01和10,“state”列的取值有5种,分别是CON,FIN,INT,REQ和RST,则映射的特征编码分别为10000,01000,00100,00010,00001.

3.4 特征选择

特征的选择,直接影响了分类的结果,因此,特征选择是入侵检测的关键.通过计算每种属性的皮尔逊相关系数,可以达到选择特征的目的,但是往往去掉或留下哪些特征难以确定.本文根据特征相关程度强弱对应表,直接摒弃了无相关程度和相关程度极弱的特征,之后在弱相关强度阈值0.2~0.4范围内,进行分类实验.

经过实验分析,表4列出了在随机森林模型下不同皮尔逊系数对应的二分类实验结果,经对比可以看出,皮尔逊系数的值为0.3时,实验效果最佳.因此,二分类实验下,以皮尔逊系数等于0.3作为阈值,进行特征选择.

Table 4 Binary-Classification Experimental Results of Different Pearson Coefficients in Random Forest Model

表4 随机森林模型不同皮尔逊系数的二分类实验结果

皮尔逊系数准确率∕%0.2098.490.3099.190.3599.130.4098.94

在多分类实验中,仍以随机森林模型为例,寻找阈值,实验结果如表5所示.

从表5中可以看出,当皮尔逊系数为0.20时,可以识别7种类型的攻击;当皮尔逊系数为0.30时,识别5种;当皮尔逊系数为0.35和0.40时,仅能识别4种,且随着皮尔逊系数的变大,多分类的实验效果反而越差,因此,本文选取0.20作为多分类实验的阈值,进行特征选择.

Table 5 Multi-Classification Accuracy Results of Different Pearson Coefficients in Random Forest Model

表5 随机森林模型不同皮尔逊系数的多分类准确率结果 %

系数AnalysisBackdoorDoSExploitsFuzzersGenericReconnaissanceShellcodeWormsNormal0.20500355049994100990.300034583789000980.35005058084000980.40001007007900098

3.5 二分类

从不同的机器学习和深度学习模型入手,对工业互联网流量数据中的正常和异常行为进行检测和分类.

3.5.1 机器学习模型

表6列出了在相同的实验环境下,支持向量机、逻辑回归、K近邻、决策树、随机森林5种机器学习模型的实验结果.为了防止过拟合现象,保证结果的可靠性,本文实验使用5倍交叉验证的方法,实验结果的准确率为5次交叉验证的平均值.

Table 6 Binary-Classification Results of Machine Learning Model

表6 机器学习模型二分类结果 %

学习模型准确率精确率召回率F1分数逻辑回归98.44989898支持向量机98.56999898K近邻99.12999999决策树99.15999999随机森林99.20999999

从表6中可以看出随机森林模型的准确率为99.20%,比其他模型的准确率都高,决策树的准确率次之,相对而言另外3种模型的分类效果略差.精确率代表了分类结果“找得对”,召回率代表了分类结果“找得全”,二者值越高,说明分类效果越好.

综合各种评价指标可以看出,基于机器学习模型的二分类实验中,随机森林模型的分类效果最优.

3.5.2 深度学习模型

在深度学习模型中,本文分别使用了多层感知机、卷积神经网络和时空网络3种模型进行二分类实验,实验结果如表7所示.多层感知机模型的准确率为99.06%,识别效果最佳.多层感知机模型,包含了一个隐藏层和100个神经元,激活函数为relu,默认使用“adam”来对权重进行优化,鉴于本文数据集的数据量较大,使用“adam”优化效果更好;beta_1一阶矩向量的指数衰减速率为90%,二阶矩向量的衰减速率为99.9%,这样能够保证数据传输的质量,不会对结果有较大的影响;学习率learn_rate代表了每一次参数更新幅度的大小,若设置的值过大会导致结果不收敛,若过小会导致收敛过于缓慢,本文的学习率设置为了恒定值,即learn_rate_init=0.001,此时的训练结果是最优的.

Table 7 Binary-Classification Results of Deep Learning Model

表7 深度学习模型二分类结果 %

学习模型准确率精确率召回率F1分数多层感知机99.06999999卷积神经网络98.38999899时空网络98.59999999

3.6 多分类

本节继续从机器学习和深度学习模型的角度,进行多分类实验,检测具体攻击的类别.

3.6.1 机器学习模型

表8总结了机器学习中每种模型识别10种攻击类别的准确率.结果显示,不同的机器学习模型对某种攻击类别的识别效果不同,比如对于“Analysis”攻击来说,决策树和随机森林的识别率达到了45%和53%,K近邻模型对该攻击的识别率为5%,而另外2种模型未识别出此类攻击;每种模型对“Generic”和“Normal”这2种类别的识别效果都最好,说明了当前的分类模型对这2种类型的识别效果较好.

Table 8 Multi-Classification Accuracy Results of Machine Learning Model

表8 机器学习模型多分类准确率结果 %

类别逻辑回归支持向量机K近邻决策树随机森林Analysis0054553Backdoor006100DoS3421273435Exploits5147545151Fuzzers2448414848Generic9398989999Reconnaissance3933344242Shellcode00200Worms0003030Normal9998999999ωaccuracy96.4396.5596.6997.0997.10

决策树和随机森林模型的加权准确率分别为97.09%,97.10%,二者对10种类别的分类结果接近,但是决策树能够识别出9种类别,随机森林只识别出8种,没能识别出“Backdoor”攻击;K近邻模型同样识别出9种类别,但其加权准确率相对较低.综合分类效果分析,识别出的种类较多的模型,分类效果最优;分类效果相同时,加权准确率高者,实验效果最佳.因此,多分类实验中,决策树的模型的分类效果最佳.

3.6.2 深度学习模型

表9总结了深度学习模型进行多分类的结果,多层感知机能够识别6种类别,另外2种模型能够识别5种,3种模型对“Generic”和“Normal”这2种类别的识别效果也是最好的.

Table 9 Multi-Classification Accuracy Results of Deep Learning Model

表9 深度学习模型多分类准确率结果 %

类别多层感知机卷积神经网络时空网络Analysis000Backdoor000DoS33420Exploits576971Fuzzers384159Generic999799Reconnaissance36073Shellcode000Worms000Normal999999ωaccuracy96.9795.1795.96

从综合机器学习和深度学习的模型来看,在多分类的实验中,机器学习模型的识别效果优于深度学习模型,能够识别更多种类别.

3.7 特征相关性分析

工业互联网流量数据集UNSW-NB15中一共包含49种特征,在不同的分类模型下,特征本身及其之间的依赖关系对分类预测的结果都会产生不同的影响.

本文基于逻辑回归模型的二分类实验结果,来探究特征对分类结果的影响.经过预处理和特征选择后,数据集中剩余21种特征,通过得到的部分依赖图,并计算随特征值改变而改变的预测结果的方差,得到了特征对预测结果的影响程度排序,如表10所示.表10对每种特征的方差进行了排序,方差越小,特征对预测结果的影响越小;方差越大,特征对预测结果的影响越大.本文以“ct_srv_src”(10-4级)为界限得到,“ct_src_ltm” ,“sttl”,“ct_srv_dst”,“ct_dst_ltm”,“ct_srv_src”等特征方差较小,说明对分类预测的结果不会产生较大的影响;“swin”,“dwin”和“ct_state_ttl”,“ct_dst_sport_ltm”等特征属性对分类结果有一定的影响.

Table 10 The Degree of Influence of Features on Prediction Results

表10 特征对预测结果的影响程度表

序号特征名称方差1ct_src_ltm5.44563E-062dstip_149.171.126.146.00428E-063dstip_149.171.126.107.42051E-064dstip_149.171.126.151.14086E-055sttl1.73887E-056srcip_175.45.176.32.55899E-057srcip_175.45.176.14.14220E-058dstip_149.171.126.184.74607E-059srcip_175.45.176.05.61337E-0510ct_srv_dst6.97470E-0511ct_src_dport_ltm7.77615E-0512ct_dst_ltm0.0001813state_INT0.0002414ct_srv_src0.0004515ct_dst_src_ltm0.0013716dwin0.0145817state_FIN0.0276618swin0.0850419ct_dst_sport_ltm0.1005820proto_tcp0.1107821ct_state_ttl0.16863

相同属性在不同的分类模型中对预测结果的影响也不一样.以“sttl”和“swin”为例,如图3所示,展示了2个特征分别在逻辑回归和随机森林模型下对预测结果的影响.从图3可以看出,不同的模型中,属性的相关程度对实验结果的影响较大.在逻辑回归模型中,预测结果较好的情况占预测总数的1/3,预测准确率为89%;在随机森林模型中,预测准确率最高为85%,且逻辑回归模型预测结果的划分层次较多,结果逐渐变化,而随机森林模型预测结果的变化较少,大多处于76%的预测结果范围内.

Fig. 3 Comparison of the effects of “sttl” and “swin” features on different models
图3 “sttl”和“swin”特征对不同模型的影响效果对比图

综上所述,每种特征对实验结果的影响程度不同,且在不同的分类模型中,相同的特征也会对结果产生不同的影响.

3.8 实验验证

为了验证本文所提方法的实验结果的准确性与高效性,我们将本文所用方法与其他研究做了对比,如表11所示.与其他研究相比,本文提出的方法达到了99.20%的准确率,且精确率和召回率都达到了99%,表明本文提出的方法相较于其他方法能够更好地实现对网络异常流量的检测.此外,在工业互联网网络流量数据集中,我们选择了CSE-CIC-IDS2018数据集进行验证.

CSE-CIC-IDS2018数据集中包含83种统计特征,但其中包含很多无关或者相关性很小的冗余特征[28].本文以随机森林模型为例,选取部分数据集分别进行二分类和多分类的实验验证,实验结果如表12和表13所示.为了防止出现过拟合现象,进行了交叉验证.

Table 11 Comparison of Detection Performance of Different Studies

表11 不同研究检测性能对比表 %

对比文献准确率精确率召回率文献[22]64.849956文献[23]85.317888文献[24]91.357887文献[25]92.509899文献[26]95.649298文献[27]97.159897本文99.209999

Table 12 Binary-Classification Results in CSE-CIC-IDS2018 Dataset

表12 CSE-CIC-IDS2018数据集二分类实验结果 %

数据集准确率精确率召回率F1分数Wednesday-14-02-2018.csv99.89999999Thursday-15-02-2018.csv98.52999899Wednesday-21-02-2018.csv99.831009999Thursday-22-02-2018.csv99.98999999Friday-23-02-2018.csv99.86999999Friday-02-03-2018.csv86.22888685

Table 13 Multi-Classification Accuracy Results in CSE-CIC-IDS2018 Dataset

表13 CSE-CIC-IDS2018数据集多分类准确率结果 %

类别Thursday-15-02-2018.csvFriday-16-02-2018.csvFriday-23-02-2018.csvThursday-22-02-2018.csvBenign99869999DOS attacks-GoldenEye98DOS attacks-Slowlories99Brute Force-Web9892Brute Force-XSS9797SQL Injection1720DDOS attack-HOIC99DDOS attack-LOIC-UDP99ωaccuracy99.8793.2799.9699.98

实验结果表明,本文提出的基于特征选择的入侵检测分类算法在CSE-CIC-IDS2018工业互联网流量数据集中有较好的分类效果,验证了本文所提方法的有效性和可迁移性.

4 讨 论

在工业互联网中,不同的应用场景下会产生不同的网络流量数据,流量数据特征的选择直接影响工业互联网入侵检测分类的结果.本文通过计算皮尔逊相关系数,选择出了与分类结果显著相关的特征,达到了提高模型精度的效果.但是该方法未考虑特征之间的相互作用对分类效果的影响,主要度量特征之间的线性关系,未来的工作将对特征间非线性关系的度量效果进行分析研究[29],针对不同的攻击类别,判断哪些特征对此类攻击的影响程度较大.此外,将入侵检测系统智能化,使其自动识别环境变化并做出响应;优化网络流量攻击的多分类算法,提高每种攻击的识别率;运用可视化技术,更直观、生动、立体地体现检测结果.

5 结 论

本文提出了基于特征选择的工业互联网入侵检测分类方法.首先,通过数据预处理,筛选异常或错误数据;在此基础上,计算特征的皮尔逊相关系数,判断特征的相关程度强弱,通过实验找到合适的阈值,并根据阈值进行特征选择;然后使用5种机器学习模型——支持向量机、逻辑回归、K近邻、决策树和随机森林,3种深度学习模型——多层感知机、卷积神经网络和时空网络,进行二分类和多分类的实验.在二分类实验中,随机森林的准确率为99.20%,二分类效果最好;在多分类实验中,决策树的加权准确率为97.09%,多分类效果最好.最后,分析了工业互联网流量数据集中特征对分类结果的影响,并在真实工业互联网的实践中,验证了本文所提方法的有效性.

作者贡献声明:任家东负责论文研究思路和方案设计工作;张亚飞负责实验设计和论文撰写工作;张炳负责论文思路设计和实验指导以及论文修订工作;李尚洋负责论文实验分析和语言文字把关工作.

参考文献

[1]China Academy of Information and Communications Technology. Industrial Internet Security Situation Report for the First Half of 2020[EB/OL]. [2022-01-20]. http://m.caict.ac.cn/yjcg/202009/t20200919_347069.html (in Chinese)(中国信息通信研究院. 2020年上半年工业互联网安全态势报告[EB/OL]. [2022-01-20]. http://m.caict.ac.cn/yjcg/202009/t20200919_347069.html)

[2]Wang Zhendong, Zhang Lin, Li Dahai. A survey of intrusion detection system for Internet of things based on machine learning[J]. Computer Engineering and Applications, 2021, 57(4): 18-27 (in Chinese)(王振东, 张林, 李大海. 基于机器学习的物联网入侵检测系统综述[J]. 计算机工程与应用, 2021, 57(4): 18-27)

[3]Denning D, Neumann P G. Requirements and Model for IDES—A Real-Time Intrusion-Detection Expert System[M]. Menlo Park: SRI International, 1985

[4]Zhu Kun, Zhang Qi. Application of machine learning in network intrusion detection [J]. Data Acquisition and Processing, 2017, 32(3): 479-488 (in Chinese)(朱琨, 张琪. 机器学习在网络入侵检测中的应用[J]. 数据采集与处理, 2017, 32(3): 479-488)

[5]Kumar P, Gupta G P, Tripathi R. A distributed ensemble design based intrusion detection system using fog computing to protect the Internet of things networks[J]. Journal of Ambient Intelligence and Humanized Computing, 2020, 12(10): 9555-9572

[6]Zhang Bing, Liu Zhiyang, Jia Yanguo, et al. Network intrusion detection method based on PCA and Bayes algorithm[J]. Security and Communication Networks, 2018, 2018: Article No.1914980

[7]Bonab M S, Ghaffari A, Gharehchopogh F S, et al. A wrapper-based feature selection for improving performance of intrusion detection systems[J]. International Journal of Communication Systems, 2020, 33(12): Article No.e4434

[8]Jafier S H. Utilizing feature selection techniques in intrusion detection system for Internet of things[C] //Proc of the 2nd Int Conf on Future Networks and Distributed Systems (ICFNDS’18). New York: Association for Computing Machinery, 2018: Article 68

[9]Ren Jiadong, Liu Xinqian, Wang Qian, et al. Multi-layer intrusion detection method based on KNN outlier detection and random forest[J]. Journal of Computer Research and Development, 2019, 56(3): 566-575 (in Chinese)(任家东, 刘新倩, 王倩, 等. 基于KNN离群点检测和随机森林的多层入侵检测方法[J]. 计算机研究与发展, 2019, 56(3): 566-575)

[10]Mohammad S, Rami K, Abdulrahman Y. DoS and DDoS attack detection using deep learning and IDS[J]. The International Arab Journal of Information Technology, 2020, 17(4A): 655-661

[11]Anderson A, Stephen B, Telford R, et al. A probabilistic model for characterising heat pump electrical demand versus temperature[C] //Proc of 2020 IEEE PES Innovative Smart Grid Technologies Europe (ISGT-Europe). Piscataway, NJ: IEEE, 2020: 1030-1034

[12]Hamed T, Dara R, Kremer S C. Network intrusion detection system based on recursive feature addition and bigram technique [J]. Computers & Security, 2017, 73(11): 137-155

[13]Kilincer I F, Ertam F, Sengur A. Machine learning methods for cyber security intrusion detection: Datasets and comparative study[J]. Computer Networks, 2021, 188: 107840

[14]Almomani O, Almaiah M A, Alsaaidah A, et al. Machine learning classifiers for network intrusion detection system: Comparative study[C] //Proc of 2021 Int Conf on Information Technology (ICIT). Piscataway, NJ: IEEE, 2021: 440-445

[15]Zhang Xueying, Li Jun, Zhang Daojuan. Research on feature selection for cyber attack detection in industrial Internet of things[C] //Proc of 2020 Int Conf on Cyberspace Innovation of Advanced Technologies (CIAT 2020). New York: ACM, 2020: 256-262

[16]Kumar V, Das A K, Sinha D. UIDS: A unified intrusion detection system for IoT environment[J]. Evolutionary Intelligence, 2021, 14: 47-59

[17]Kumar V, Sinha D, Das A K, et al. An integrated rule based intrusion detection system: Analysis on UNSW-NB15 data set and the real time online dataset[J]. Cluster Computing, 2020, 23(2): 1397-1418

[18]Agarwal A, Sharma P, Alshehri M, et al. Classification model for accuracy and intrusion detection using machine learning approach[J]. PeerJ Computer Science, 2021, 7(3): Article No.e437

[19]Liang Jie, Chen Jiahao, Zhang Xueqin, et al. Anomaly detection based on independent thermal coding and convolutional neural network[J]. Journal of Tsinghua University: Natural Science, 2019, 59(7): 523-529(in Chinese)(梁杰, 陈嘉豪, 张雪芹, 等. 基于独热编码和卷积神经网络的异常检测[J]. 清华大学学报: 自然科学版, 2019, 59(7): 523-529)

[20]Lohiya R, Thakkar A. A review on machine learning and deep learning perspectives of IDS for IoT: Recent updates, security issues, and challenges[J]. Archives of Computational Methods in Engineering, 2021, 28(4): 3211-3243

[21]Shao Lingwei. Research on intrusion detection method of industrial Internet based on neural network[D]. Harbin: Harbin Normal University, 2021 (in Chinese)(邵凌威. 基于神经网络的工业互联网入侵检测方法研究[D]. 哈尔滨: 哈尔滨师范大学, 2021)

[22]Chi Yaping, Ling Zhiting, Wang Zhiqiang, et. al. Intrusion detection system based on support vector machine and Adaboost [J]. Computer Engineering, 2019, 45(10): 183-188, 202 (in Chinese)(池亚平, 凌志婷, 王志强, 等. 基于支持向量机与Adaboost 的入侵检测系统[J]. 计算机工程, 2019, 45(10): 183-188, 202)

[23]Moon D, Im H, Kim I, et al. DTB-IDS: An intrusion detection system based on decision tree using behavior analysis for preventing APT attacks[J]. The Journal of Supercomputing, 2017, 73(7): 2881-2895

[24]Tian Qian, Li Jingmei, Liu Haibo. A method for guaranteeing wireless communication based on a combination of deep and shallow learning[J]. IEEE Access, 2019, 7: 38688-38695

[25]Kasongo S M, Sun Yanxia. A deep learning method with wrapper based feature extraction for wireless intrusion detection system—ScienceDirect[J]. Computers & Security, 2020, 92: 101752

[26]Yin Chuanlong, Zhu Yuefei, Fei Jinlong. A deep learning approach for intrusion detection using recurrent neural networks[J]. IEEE Access, 2017, 5: 21954-21961

[27]Roy B, Cheung H. A deep learning approach for intrusion detection in Internet of things using bi-directional long short-term memory recurrent neural network[C] //Proc of 2018 28th Int Telecommunication Networks and Applications Conf (ITNAC). Piscataway, NJ: IEEE, 2018: 1-6

[28]Liu Jianghao, Zhang Anlin, Huang Ziqi, et al. Optimization dimension reduction analysis of CSE-CIC-IDS2018 intrusion detection data set based on machine learning[J]. Fire Control & Command Control, 2021, 46(7): 155-162 (in Chinese)(刘江豪, 张安琳, 黄子奇, 等. 基于机器学习的CSE-CIC-IDS2018入侵检测数据集优化降维分析[J]. 火力与指挥控制, 2021, 46(7): 155-162)

[29]Shang Wenli, An Panfeng, Wan Ming, et al. Research and development of intrusion detection technology for industrial control systems are reviewed[J]. Application Research of Computers, 2017, 34(2): 328-333, 342 (in Chinese)(尚文利, 安攀峰, 万明, 等. 工业控制系统入侵检测技术的研究及发展综述[J]. 计算机应用研究, 2017, 34(2): 328-333, 342)

Classification Method of Industrial Internet Intrusion Detection Based on Feature Selection

Ren Jiadong, Zhang Yafei, Zhang Bing, and Li Shangyang

(School of Information Science and Engineering, Yanshan University, Qinhuangdao, Hebei 066004) (Key Laboratory of Software Engineering of Hebei Province(Yanshan University), Qinhuangdao, Hebei 066004)

Abstract Due to the diversity and differences of industrial Internet access equipment, it is difficult to maintain and vulnerable to attacks. For this security problem, it is necessary to introduce relevant defense systems to identify various intrusion attacks. The traditional intrusion detection system can detect fewer types of attacks, and the network traffic data has poor classification performance due to the redundancy of irrelevant features. Therefore, we propose a classification method for industrial Internet intrusion detection based on feature selection. At first, this method preprocesses the dataset, and determines the strength of the feature by calculating the Pearson correlation coefficient of the feature, and determines the optimal threshold for feature extraction; then, from the perspective of machine learning and deep learning, logistic regression is used. Eight models including logistic regression, support vector machine, K-nearest neighbor, decision tree, random forest, multi-layer perceptron, convolutional neural network, and spatial-temporal network are respectively subjected to binary and multi-classification experiments and evaluated. The experimental results show that the binary classification effect of random forest is the best, and the multi-classification effect of decision tree is the best. Finally, the effectiveness of this method is verified in the real industrial Internet practice.

Key words industrial Internet; intrusion detection; Pearson correlation coefficient; machine learning; deep learning

收稿日期2021-11-16;修回日期: 2022-01-13

基金项目河北省高等学校科学技术研究项目(BJK2022029)

This work was supported by the Science and Technology Project of Hebei Education Department (BJK2022029).

通信作者 张炳(bingzhang@ysu.edu.cn)

(jdren@ysu.edu.cn)

中图法分类号 TP393

Ren Jiadong, born in 1967. PhD, professor. Senior member of CCF, and member of IEEE, ACM. His main research interests include data mining, temporal data modeling, and software security.

任家东,1967年生.博士,教授.CCF高级会员,IEEE、ACM会员.主要研究方向为数据挖掘、时态数据建模和软件安全.

Zhang Yafei, born in 1997. Master candidate. Her main research interests include software security, intrusion detection.

张亚飞,1997年生.硕士研究生.主要研究方向为软件安全、入侵检测.

Zhang Bing, born in 1989. PhD, associate professor. Member of CCF, ACM. His main research interests include data mining, machine learning, and software security.

张 炳,1989年生.博士,副教授.CCF,ACM会员.主要研究方向为数据挖掘、机器学习和软件安全.

Li Shangyang, born in 1999.Master candidate. His main research interests include software security, intrusion detection.

李尚洋,1999年生.硕士研究生.主要研究方向为软件安全、入侵检测.