杨 怡,张兴兰
(北京工业大学 信息学部,北京 100124)
入侵检测系统是一种网络安全设备,它可以对网络流量传输进行实时的监控,从中检测出异常的攻击行为。由于网络技术的快速发展和广泛应用,网络流量变得越来越复杂,各种新型的攻击行为更是层出不穷,这就对入侵检测模型提出了更高的要求。
在三国时期,筝作为一个非常优雅的乐器,在当时引起了学者、隐士和文人普遍的高度关注。直到东汉末年,古筝才逐渐登上高雅殿堂,社会开始广泛认可。
随着人工智能的兴起与发展,机器学习算法被应用于许多领域,在网络安全领域贝叶斯算法被用于过滤垃圾邮件[1],随机森林被用于恶意域名检测[2],聚类以及深度神经网络算法被应用于网络入侵检测[3-4]。深度学习出现之后,以神经网络为基础架构的深度学习算法降低了对于特征工程的依赖,能够对网络攻击的特征进行自动的提取和识别,更加有利于发现未知、潜在的攻击行为。但机器学习模型本身也存在着安全问题,它极容易受到对抗样本的攻击。Szegedy等[5]提出:对输入样本故意添加一些人无法察觉的细微的干扰,导致模型以高置信度来输出一个错误的结果,于是提出了对抗样本的概念[6-7]。他们的研究提到,很多情况下,在训练集的不同子集上训练得到的具有不同结构的模型都会对相同的对抗样本实现误分,这意味着对抗样本成为了训练算法的一个盲点。Nguyen等人发现面对一些人类完全无法识别出差异的对抗样本,深度学习模型会以高置信度将它们错误分类,从而攻击成功[8]。深度学习对于对抗样本的脆弱性在很多的机器学习模型中普遍存在,因此进一步研究对抗样本实际上有利于整个机器学习和深度学习领域的进步。
入侵检测模型会受到对抗样本的攻击,说明现存的入侵检测模型是不安全的,已知的各种攻击算法,大部分都是在时域数据上基于决策边界,使损失函数最大化,这种攻击方式是有一定效果的,但是入侵检测数据之间具有关联性,利用损失函数最大化修改的数据容易失去其原有的相关性。该文提出了一种基于频域的攻击方式,利用傅里叶变换把数据转换到频域上,很多在时域内看不见的特性在频域内能很清楚地得到,从而提取数据,把低频的移动到数据中心,把高频的数据去掉,通过低通滤波器,对较少的特征进行改变,生成攻击效果更好的对抗样本。
采用SPSS 21.0软件对数据进行分析处理,两组患者的AST、ALT、ALB、AKP、Cr、BUN、DBIL、TBIL水平等计量资料用(均数±标准差)表示,用t检验,检验水准α=0.05,以P<0.05表示差异具有统计学意义。
入侵检测(Intrusion Detection,ID)[9]是在20世纪80年代由James Anderson最先提出的概念,随后学者Heberlein等人[10]基于James Anderson理论提出网络入侵检测系统概念。有学者指出,入侵主要包括以下三方面:一是未经授权即进行信息的访问;二是不可靠的行为;三是操作造成系统的不稳定[11]。
研究入侵检测技术主要分为以下两点:特征的提取及分类。其中,特征提取在入侵检测中非常关键。深度学习作为表征学习的代表,能够在高维海量数据中获取其本质特征,进而提高分类准确率。深度学习在各个领域已得到广泛应用,其也被应用于入侵检测中。文献[12]提出了基于一维卷积神经网络的入侵检测方法,该方法可以自动提取原始数据的特征。文献[13]分析了递归神经网络(Recurrent Neural Network,RNN)进行入侵检测的可行性,通过将网络流量建模为状态序列来检测网络流量的行为。文献[14]验证了长短时记忆网络(Long Short Term Memory,LSTM)在入侵流量分类中的性能,结果表明LSTM可以学习到隐藏在训练数据中的攻击。文献[15]提出了一种基于自动编码器(Auto Encoder,AE)的网络和长短期记忆神经网络(LSTM)的网络入侵检测方法。通过叠加多个自编码网络,将高维数据映射到低维空间,构建了自编码网络模型。然后利用优化后的LSTM模型提取特征、训练数据并预测入侵检测类型。实验结果表明,该模型和传统的算法相比,对网络流量进行分类的效果是更优的。Kasongo等人[16]使用前馈神经网络(Feedforward Neural Network,FNN)和基于滤波器的特征选择算法,提出了一种基于深度学习的入侵检测系统,将其与支持向量机、决策树、K近邻等机器学习方法进行比较,FNN的准确性有所提高。张文泷等人[17]针对深度学习模型在网络入侵检测中进行参数训练时因梯度消失而导致深度学习模型过拟合在测试集上准确率下降的问题,提出了一种结合Relu激活函数与ResNet的网络入侵检测算法,即CA-ResNet,结果表明,提高了网络的特征提取能力和对尺度的适应性。
其中,sign函数保证与梯度函数方向一致,ε代表学习率,控制扰动的程度。
罗曼·罗兰说过:“唯有创造,才是欢乐”。孩子们从这些创新的活动中,尝到了乐趣,他们喜欢英语课并且爱上英语课。在孩子们的创新活动中,我不断给予激励,让学生充分受到成功的喜悦。此外,我还运用阶段性比赛来巩固这创作性成果,让每个孩子身心力行,全方位的投入探索、创造的快乐中去,从而挖掘学生的创作潜能。
其中,x为原始数据,Y为输出,DFT为离散傅里叶变换,δDFT(x)为扰动向量,Y*为对抗输出。
综上,入侵检测模型会受到对抗样本的攻击,说明现存的入侵检测模型是不安全的,所以在此基础上,该文将研究的重点放在入侵检测对抗样本的生成方法上,并且分析入侵检测的流量数据之间的关联性,生成在攻击效果更好的对抗样本同时更加符合真实世界中的网络流量数据。
傅里叶变换(Fourier Transform)是一种线性积分变换,用于信号在时域和频域之间的转换,从物理效果看,傅里叶变换是将信号从空间域转换到频域,逆变换就是将信号从频域转换到空间域。使用傅里叶变换,可以把频域中最重要的信号表达出来,并且得到和原始信号非常接近的波形。通常将这种波的快慢的性质,称为波的频域。傅里叶频谱图上看到明暗不一的亮点,实际上是信号中某一点与邻域点差异的强弱,即梯度的大小,也就是频域的大小。傅里叶变换的实际意义就是对一个特定的信号曲线进行分解重组,具体操作就是将一个信号曲线分解成若干个正弦曲线,这些正弦的频域代表了原信号曲线的频域变化情况,同一频域下的信号被分到了一个正弦曲线上,这样就有了若干个不同频域的正弦曲线。如果直接在时域上进行处理是比较麻烦的,因此一般都会先将时域数据按照不同的频域振幅分解成若干个音频和振幅不同的音频信号图,再将这些不同的信号图按照不同的振幅映射到一个平面图上,就是频域图。离散傅里叶变换公式如下:
(1)
其中,0 高频指变化剧烈的灰度分量,如图像的边缘轮廓区域。低频指变换缓慢的灰度分量,如图像中轮廓的填充,非边缘区域。人类视觉系统对高频分量的敏感度低于低频分量,因此利用傅里叶变换将时域数据转变为频域数据,构造一个和原数据大小相同,数值全为0的掩模底板,获取原始数据频域为0的中心坐标,以此为中点,这个区域的掩模内的像素值为255,把掩模覆盖到原始频谱图上,得到所有的低频点。利用低通滤波器,保留更多的低频信息,去除掉部分高频信息,再利用反傅里叶变换把修改后的数据转换回时域。 FGSM是由GoodFellow在其论文《Explaining and Harnessing Adversarial Examples》中提出。通过求出模型对输入的导数得到其具体的梯度方向,接着乘以一个步长,得到的“扰动”加在原来的输入上就得到了对抗样本。假设输入样本为x,分类结果为F(x),在输入样本上叠加扰动,得到对抗样本x'。 (2) 随着深度学习应用到入侵检测系统,基于已有数据的入侵检测系统的分类任务已经完成得比较好,但是对于恶意攻击中的对抗样本的方式,入侵检测的数据集在这方面的表现确实不尽如人意。现在对抗样本攻击的研究主要是涉及梯度攻击和优化攻击,还有一部分分为对图像进行全像素添加扰动以及部分添加像素扰动。Goodfellow等人[18]提出的快速梯度符号法(Fast Gradient Sign Method,FGSM)利用损失函数的导数,通过在原样本上添加噪声,使其沿着损失函数梯度上升的方向移动,从而生成分类错误的图像对抗样本。Moosavi等人[19]提出了一种基于超平面分类的生成方法DeepFool,在不同的平面上代表不同的类别,利用迭代计算添加扰动将处于平面边界的图像样本逐步移动到另一个平面,让其呈现不同的分类结果。Papemot等人[20]在2015年提出了JSMA(Jacobin Saliency Map Attack)算法,JSMA是利用雅可比矩阵计算了模型对每个特征的敏感度,得到了其中的显著像素点,并通过迭代的过程,每次修改一个显著像素点,最终达到改变分类结果的攻击效果。Li等[21]提出了一个通过学习对抗样本的书分布来对深度神经网络模型进行黑盒攻击的方法,通过找到以原样本为中心的小区域内的概率密度分布,从中选择可能造成攻击的对抗样本。除以之外,Sayantan等人[22]提出了一种应用在黑盒场景下的目标攻击方法,针对目标的通用扰动方法(Universal Perturbations for Steering to Exact Targets,UPSET),基于残差梯度网络,可以对特定的目标类别生成一个通用扰动,使得将该扰动添加到任何一张图像上都可以使其被错误分类为目标类别。 JSMA是利用扰动一组输入特征的信息从而导致深度模型分类器分类出错。这与修改大多数输入特征的FGSM攻击不同,JSAM产生的对抗样本更具有攻击性,而且更易生成真实的网络数据流。JSMA算法主要包括三个过程:计算前向导数得到不同特征对分类结果的影响程度,构建基于前向导数的对抗性显著图,通过显著图寻找对攻击影响程度最大的输入特征添加扰动。前向导数就是计算神经网络最后一层的每一个输出对输入的每个特征的偏导。计算过程是采用链式法则。FGSM是对损失函数求导得到的,而JSMA中前向导数是通过对神经网络最后一层输出求导得到的。前向导数的计算公式为: (3) (4) 其中,Fj是第j个隐藏层的输出向量,fn+1,j是这层的第j个神经元输出的激活函数,Wn+1,j为第n+1层,第j个神经元与前一层相连的权重向量,bn+1,j为第n+1层,第j个神经元的偏置bias。 通过得到的前向导数,可以计算其对抗性显著图,即对分类器特定输出影响程度最大的输入。为了达到攻击的效果,需要增大分类错误的特征,减少使得分类正确的特征,从而达到攻击目标。显著图有正向扰动(见式(5))和反向扰动(见式(6))。 (5) (6) 若对应位置的导数值为正值,则增大该位置像素值;若对应位置的导数值为负数,则减少该位置像素。JSMA算法修改程度不受限制,但修改的数量受到限制,尽量减少对原始样本修改像素的个数,可以使得生成的对抗样本更具有真实性[27]。 该文提出D-FGSM(Discrete Fourier Transform-Fast Gradient Sign Method)攻击算法,将原始数据集进行傅里叶变换,通过低通滤波器,过滤部分的高频信息,再利用梯度方向进行扰动和攻击。 人都走尽了,陶水旺手又伸上来,朝表姐身上摸。表姐一边躲着,一边求他,我怀孕了。陶水旺以为这又是表姐的借口。以前,表姐大多以身上来了为借口。 argminδDFT(x)|δDFT(x)| s.t.F(DFT(x)+δDFT(x)= (7) 其中,DFT函数是离散傅里叶变换。 6.S←Saliency_map(▽F(Xadv),ζ,Y) 输入:干净的样本数据X,模型权重参数θ,分类结果Y,神经网络J,学习率ε,扰动值δ,傅里叶变换DFT 输出:对抗样本Xadv 1.初始化:X 我选择了调整画笔工具,将羽化和流量滑块均设置为100,浓度设置为20。接着,在上方设置中我将清晰度和去雾均设置为+100,其余选项归零,然后在远景的山上涂抹将其清晰度提高。随后,我又将黑色设置为-100,白色设置为+100更进一步强化其对比度。 3.Xadv←DFT(X) 3.WhileF(xadv)=Ydo 授之以鱼,不如授之以渔。在知识传授的过程注重学习能力的培养,引导学生掌握自学的方法,锻炼学生的自学能力,是具有深远意义的。随着学生年龄的增长,教师和学生都具有较大的灵活性和自由度。教师应该渐渐放开手让学生自己去学,自己支配课余时间,给学生以充分的独立空间。 4.损失函数求导▽xJ(θ,DFT(x),Y) 5.δx←ε·sign(▽xJ(θ,DFT(x),Y)) 6.Xadv←DFT(x)+δx 7.end While 8.ReturnXadv 以NSL-KDD数据集进行特征分析,每个连接有41个特征,可以分为三个部分:网络数据包的基本连接信息,数据包中包含的一些负载信息以及当前连接的一些流量信息。在进行入侵检测对抗攻击中,应该具体分析各个特征对结果的影响,更具有针对性的对抗攻击。Saliency Map(显著图)是通过神经网络预测类别的概率对输入特征(例如图像中的每个像素)求梯度,根据显著图的值判断出输入特征中对该类别的影响程度。该文利用傅里叶变换将数据转换到频域上,保留了更多相关性的特征,通过Saliency Map在这些特征中找到对输出结果影响程度较大的特征,对该特征进行扰动修改,即D-JSMA(Discrete Fourier Transform -Jacobian-based Saliency Map Attack)攻击算法。 程式语对习得英语的作用,学界从不怀疑,程式语的固定性特征激起了学者们想找到一条放之四海而皆准的普遍规则,然而程式语半固定性特征又决定了“普遍规则”只能在特定语境下适用并非放之四海而皆准。在讨论程式语时,应该先把程式语分类,再讨论不同类别的程式语的异同。即便是分类后的程式语,讨论其特征时还不能离开语境。只有在语境的框架下进行讨论,才有可能准确地描述其特征和规律。语言是活的语言,交际就是把语言用活,研究语言脱离交际也就失去意义了。因此不管是研究程式语的习得还是使用都不能脱离使用语言的背景。 xadv=DFT(x)+ε·sign(▽xJ(DFT(x,y))) Y*) (8) 有一些研究者通过将一些对抗样本生成算法应用在入侵检测分类模型上,成功探索了入侵检测分类器中可能出现的攻击,并对入侵检测对抗样本的特征进行分析。Rigaki[23]分别使用JSMA和FGSM方法在NSL-KDD数据集上成功生成了入侵检测对抗样本,并对两种方法修改的特征数量和耗费的时间进行了比较。Wang[24]在论文中总结了四种对抗样本生成方法在入侵检测领域的攻击效果,详细比较了FGSM、JSMA、DeepFool和C&W attack在NSL-KDD数据集上的效果,并分析了各方法对特征的修改情况。还有一些研究者从别的角度出发,也为入侵检测领域的对抗样本研究提供了新的思路。丁烨等人[25]在频谱上综合分析了现有的攻击方法和数据集,发现大部分的对抗样本在频域都出现了严重的伪影,提出一种通用的改进算法IAA-DCT。Li等人[26]提出基于决策的攻击方式通常会进行过多的查询,导致攻击很容易被发现,基于自然图像的傅里叶光谱大部分集中在低频域,提出频域对抗攻击方式,提高了攻击效率。 算法2:D-JSMA 网络信息的海量化和获取的便利化,造成相当一部分学生做作业时对电脑产生依赖,主要表现为遇到问题时不是进行认真的思考和研究,而是动辄上网搜索,在网络上寻找答案。因此,在新媒体环境下,如何提高学生的钻研精神和创新意识,减少网络依赖,杜绝网络抄袭,成为学校和老师必须重视的问题。 输入:干净的样本数据x,神经网络F,分类结果Y,特征变化参数θ,最大的对抗扰动λ 一方面,乡村经济发展缓慢,农民经济收入难以满足消费需求。为了解决农村贫困问题,平衡城乡贫富差距,促进平等发展、共同富裕,乡村必然成为改革前线。另一方面,近年来我国城市建设快速发展,积累了大量过剩的工商资本,急需开发新的市场并挖掘潜力。其实质是以乡村为载体,通过资本下乡、产品下乡、设计下乡实现价值再生产、资本再循环,实施精准扶贫,实现村民富裕、城乡共同发展。 输出:对抗样本Xadv 1.初始化:X 2.ζ={1,2,…,|x|} 2.x←DFT(X) 4.WhileF(xadv)=Yand |δx|<λdo 5.计算前向导数▽F(Xadv) 算法1:D-FGSM 7.ModifyXadvbyθs.t.imax=argmaxiS(X,Y)[i] 8.δx←Xadv-X 2. 唐咸亨元年《宋世文暨妻车氏墓志》:“爰属太武皇帝干维缵统,云罗英,是用征公,期之不次。” [11] 9.end While 总之,音乐是情感艺术,“乐”由情起,这说明音乐由情感引起。情感教育在小学音乐教学中无处不在。在小学音乐教学实践中我们应以情感教育为核心,牢牢地把握情感教育原则,不时点燃学生的情感火花,使情感教育在小学音乐教学中真正实现其教育功能,在素质教育中发挥其应有的作用。 10.ReturnXadv 实验使用的数据集是NSL-KDD,one-hot编码将名义特征转变为数字特征,例如“协议类型”有三类值,分别是“tcp,udp,icmp”,使用one-hot编码表示为“[1,0,0],[0,1,0],[0,0,1]”,编码后离散特征与连续特征之间会有较大的极差,这会影响到权值攻击类型。因此,该文对特征进行归一化,使其都在[0,1]范围内。NSL-KDD数据集包含39种攻击类型,属于4大类:拒绝服务(DOS)、探测(Probe)、用户到根(R2L)、远程和本地(U2R),该文主要是做无目标攻击,因此将结果修改为二分类的任务。实验包括了126 003个训练集和22 544个测试集。实验样本NSL-KDD数据集的分布如表1所示。 表1 NSL-KDD数据集分布2.2 FGSM算法
2.3 JSMA算法
2.4 D-FGSM算法
2.5 D-JSMA算法
3 实验分析
3.1 数据集
3.2 实验步骤