基于深度学习的物联网入侵检测研究
2022-12-21张佳伟
陈 肖,张佳伟
(1.保定市国土资源局 竞秀区分局,河北 保定 071000;2.河北软件职业技术学院,河北 保定 071000)
0 引言
伴随着5G技术逐渐成熟,物联网已经成为全世界研究和发展的重要方向之一。物联网结合智能产品属性,衍生出各种智能物联网设备,如智能音箱、智能台灯、智能空调、智能穿戴等。据统计,2021年全球智能物联网设备数量达到250亿台,对人们的衣食住行产生了巨大影响,改变了人们的生活状态,大幅提升了生活质量。
物联网兴起,在给人们带来便利生活的同时,相应地也带来了诸多不可预知的风险。物联网设备数量巨大且种类繁多、分布广泛,作为新兴事物,和互联网一样存在诸多安全漏洞,已经成为黑客攻击的重点之一。物联网的先天局限性导致这一局面很难在短时间内给出较为完善的解决方案,如物联网设备种类繁多,各种产品由不同的公司生产,由于商业原因厂家大量使用不同架构、不同协议,导致产品通信衔接过程容易产生安全隐患[1];物联网设备终端通常比较灵活、易安置,而可用资源极为有限,不能部署较为大型的安防设备或联动策略,容易形成防护薄弱点;物联网整个体系架构基于互联网,数据传输过程中涉及多级异构网络,导致大量节点设备暴露于网络之中,极易被跨网攻击;部分商业物联网设备节点通常安置在广袤地区,无人看守,容易造成物理上的损坏或丢失。基于以上种种原因,物联网设备容易受到攻击或发生意外情况,造成硬件设备损坏而无法正常运行,甚至造成广大用户个人隐私数据外泄,产生不可估量的损失。
如何研究高可靠、高可用的物联网入侵检测技术成为行业专家关注的问题。当前物联网攻击手段多种多样,如通过操控其他众多物联网设备构成僵尸网,同时对某一物联网服务器发起访问,形成Dos攻击或DDos攻击[2];嗅探攻击则通过协议层广播数据包,探测物联网各设备节点,再谋取进一步攻击;黑客通过协议漏洞不断唤醒物联网节点设备,导致设备节点电量较快耗尽,带来经济损失;黑洞攻击,是黑客通过入侵或者植入受控节点来控制所有流经该节点的数据包,在最极端情况下该节点可吸收所有节点而不进行转发,像黑洞一样吸收所有数据包,从而给整个网络造成重大破坏。
物联网入侵检测技术大致可以分为定性分析和定量分析两类[3];定性分析的物联网入侵检测技术主要指的是专家系统,根据专家个人对应用场景的理解进行入侵检测系统构建,其主要特点是检测效果严重依赖于既定规则库,对入侵检测率非常不稳定[4-5]。定量分析的物联网入侵检测技术主要包含贝叶斯网络、人工神经网络等,其对物联网络中数据流量进行截取、降低维度、提取特征属性、进行自学习训练并构建检测网络,其特点是能够识别攻击类型,一般情况下检测效果优于专家系统。以上两种模型在面对未知攻击时难以应对,表现出较低的检测率,且训练过程复杂,难以用于产生变化的实际应用场景。本文提出一种基于深度学习的物联网入侵检测方法,对比其他物联网入侵检测方法,提升了检测效率,证明了深度学习网络在物联网检测应用上具有显著的优越性和可用性。
1 主成分分析
在对物联网中数据的入侵检测中,存在大量异构网络和不同类型数据包,每种数据包包含若干字段。在对以上流量进行处理的过程中,大量无效字段会对后续判断产生影响,如网络构建和检测效率等。此时需要对数据中字段进行降维处理,但是各个字段之间关系错综复杂,靠人工难以进行有效区分,此时可使用主成分分析方法进行降维处理,在基本保留数据原本特性的情况下减少字段数量,降低无关字段影响,提升后续数据处理效率。
主成分分析,又名主分量分析,是一种被广泛使用的数据降维处理算法,使用k个属性代替原始数据中的m个属性,以达到降低数据维度的需求。
主成分分析算法步骤如下[6]:
(1)对原始的矩阵X={Xij}进行标准化处理,得到全新的矩阵A={Aij},在上述式子中
(3)求出R矩阵特征向量、特征值,只需要对R上三角矩阵计算即可得出需要的结果;
(4)求出最终主成分部分,按照次序排序上述步骤中计算出的特征值γ1>γ2>…>γp,依据的原则确定m,此时很容易得到最终降维之后的主成分部分。
2 深度学习网络
深度学习的众多学习算法中,大体可以分为有监督学习和无监督学习两种[7]。有监督学习需要使用带标签数据对网络结构进行训练,来得到想要的结构模型,然后用于对此类型数据集合的检测效果。无监督学习是在没有人为添加任何约束的情况下,由机器根据无标签训练数据自行寻找数据规律。由于没有添加约束,无监督学习得到的结果不可预知,可以侦测到未知攻击,是物联网入侵检测中研究的重点。
最小二乘支持向量机是深度学习网络中被广泛使用的算法之一,其优点是可以通过应用最小化结构风险确定真实风险,缺点是训练数据集支持向量花费时间长,同时可能也会面临检测精细度方面的困扰。
3 深度学习网络的物联网入侵检测方法
3.1 物联网入侵检测基本思路
基于深度学习的物联网入侵检测核心思路如下:
(1)获取物联网入侵数据集,进行预处理操作,包括数据清洗、规范化等步骤;
(2)提取数据集属性主要特征,使用主成分分析算法抽取最有特征子集,用于降维;
(3)将第二步处理之后得到的数据集输入,使用构建深度学习网络对样本进行训练处理;
(4)通过有监督学习及其上一步中训练结果,对深度学习网络进行参数调优,最终得到物联网入侵检测分类器。
物联网入侵数据自动识别流程如图1所示。
图1 物联网入侵数据自动识别处理流程图
3.2 深度学习网络建立物联网入侵检测分类器
在深度学习众多分支中,最小二乘支持向量机相对于传统人工神经网络具有显著优势,如收敛快、性能优等[8]。在此假设使用主成分分析算法对物联网待检测数据进行降维处理,得到特征数目为n个,第i个样本特征向量是xi∈Rn,训练样本集中共有样本数目N个,组合集合:{xi,yi},i=1,2,…,N,xi∈R为攻击数据类型,此时可以建立分类识别平面表示形式为:
使用深度学习对其进行变换之后可以得到如下式子:
在上述式子中,φ(x)是空间变换函数;J是分类结果的损失函数;C是惩罚参数,用于调整误差。
在实时性要求较高的情况下,可以使用Lagrange乘子ai∈R对上述式子进一步处理[9]:
基于Karush-Kuhn-Tucker原理,对上式处理之后得到:
式子中,K(xi,xj)为:
其中,δ是核函数宽度参数。
3.3 物联网入侵检测分类器参数优化
在构建物联网入侵检测分类器中,参数C和δ对最终分类识别结果起到至关重要的作用。因此需要对上述两个参数单独进行优化处理。首先假设分类器识别误差最小情况下,设定参数C和δ的最优值,可以建立如下函数:
对分类器中两个重要参数的优化步骤如下:
(1)根据训练集合初始化2个随机数;
(2)根据Logistic映射产生混沌变量:
(3)根据上述式子得到混沌变量:
(4)采用混沌变量在分类器参数C和δ范围内进行搜索,使目标函数J变小,也就是物联网入侵检测分类器误差逐渐变小,直到最小值J*,此时得到分类器中两个参数C和δ的最优解;
(5)深度学习最小二乘支持向量机使用(4)得到的参数C和δ的最优解重新对输入样本集合进行训练,重新构建得到最佳的基于深度学习的物联网入侵检测分类器。
4 仿真实验
4.1 仿真平台及数据集
本文使用window10操作系统平台,核心配置:CPU为AMD5800H,内存为32GB,编程语言为Java。实验采用物联网恶意攻击数据集CIC-BoTIoT进行,共包含83个特征属性,13 428 602条记录。其中,共有DDoS、DoS、侦察和盗窃四种攻击类型。本文采用该数据集70%进行训练,30%用户效果检测。
4.2 特征提取、参数优化
本文采用前文叙述过的主成分分析方法对样本数据集进行特征选择,最终实现维度下降,减少后续处理时间。特征属性降维前后数目对比如图2所示。
图2 属性降维对比图
采用上文提到的混沌算法分别对上述四种攻击类型分类器参数进行确定,如表1所示。
从表1可以看出不同类型攻击对应参数差异明显,说明参数需要优化。
表1 四类物联网攻击类型参数
4.3 入侵检测效果分析
完成网络构建和参数调优之后,使用CICBoT-IoT[10]数据集剩余的30%进行测试。在相同的硬件平台,将测试结果与朴素贝叶斯网络[11]、BP神经网络[12]进行仿真效果对比,识别效率对比如图3所示。
图3 四种入侵检测数据对比图
从图3可以看出,本文提出的基于深度学习的物联网入侵检测方法对四种入侵检测数据的检测率全部高于BP神经网络和贝叶斯网络。在实验过程中,相较于另外两种方法,本文方法消耗时间相对较少,说明该方法收敛速度快,内部网络形成更加合理,是一个行之有效的物联网入侵检测方法。
5 结语
物联网的兴起给人们的生活带来了质的飞跃,同时也带来了诸多安全隐患。因此物联网入侵检测成为研究重点。本文结合物联网背景下相关内容,提出基于深度学习的物联网入侵检测算法,实验结果证明,该方法相对于传统方法检测速度更快,正确率更高,提升了物联网的安全性,可以满足物联网实际应用场景中的安全保障需求。