(国网思极网安科技(北京)有限公司,北京 102211)
在信息智能化不断发展的时代,许多国家接连发生了大型网络攻击事件,各大型企业产业经济遭到史无前例的重创。大量案例表明,智能网络时代给企业的安全带来了全新的挑战[1]。经过实例分析,黑客对物联网等重要设施的攻击,通常都是从终端发起,攻击类型复杂、终端防护受自身条件和运行环境的限制,以及复杂多源的数据类型为后续数据处理给网络安全防范工作带来了极大的困难[2]。因此,如何提高网络安全风险防范效率,减少数据处理的时间开销,提高处理速度,是后续研究工作中需要解决的主要问题[3]。
针对上述存在的问题,许多学者发表了自己研究的技术方案。文献[4]公开了一种网络流量数据抽样技术,虽然在一定程度上提高了数据处理效率,但是只能处理高频率的流量数据,而忽略了低频率的流量数据,存在处理不平衡问题。文献[5]提出基于交叉验证优化贝叶斯分类法,对网络安全检测数据进行有效地分类处理,但是随着交叉数目的不断增加,数据预处理过程耗时会逐渐增加,导致效率大打折扣。
针对上述技术存在的不足,本研究设计出新型的智能化网络安全防攻击检测平台,全面分析网络风险因素,以提高对网络风险因素的感知、预测和防范能力。关于网络安全防攻击检测平台总体框架图如图1所示。
图1 网络安全防攻击检测平台总体框架图
从图1可以看出,网络安全检测平台主要是通过物联网和企业的业务系统中获取数据,利用网络采集探针在关键网络节点进行实时检测,并将采集得到的不同结构的数据进行合理的存储,为数据抽取模型的特征提取提供足够的样本信息。在分析层中进行合理的数据分析,并将分析结果传达至上层管理,根据决策者、管理人员和运维人员不同的需求和关注重点,通过可视化分析技术,挖掘出恶意软件或流量数据隐藏的数据信息,并进行多种态势的多维度展示,并且支持预警通告和应急处置[6-7]。
为了解决复杂多源的网络安全检测数据处理工作复杂的问题,本研究构建数据抽取模型和数据分析模型两种技术来解决该问题,下面将分别阐述。
由于网络安全检测数据类型多样,且不断地会有例如恶意软件、漏洞以及补丁等新的数据出现,因此基于分词的方法识别率较低。针对上述问题,本研究基于卷积神经网络(CNN)模型结合特征模板构建出一种新型的网络安全数据抽取模型,如图2所示。
图2 网络安全检测数据抽取模型
整个构建过程首先要根据网络安全防攻击检测数据库手工生成少量特征模板,并提取局部特征向量,然后根据把网络安全检测数据特征向量进行语句转换得到初始局部向量序列;其次,通过CNN算法对每个网络安全检测数据样本进行卷积和聚合,并提取其特征信息;最后,将语义特征和局部特征相结合经过条件随机场(CRF)算法进行序列标记,并抽取最优的特征向量序列。下面将分别阐述该过程中各部分的具体内容。
2.1.1 特征模板
特征模板是根据选取大量的数据特征并建立特定的模板,在数据抽取模型中便于之后识别数据的特征提取。特征模板的建立取决于“模板窗口”,窗口过大则会出现过拟合现象,窗口过小则提取特征向量十分有限,造成网络安全检测数据模型的识别效率较低,因此设计特征模板的模板窗口大小要十分合理。关于特征模板的构建过程如下:
首先设网络安全检测数据特征一系列为w[-1,0],w[0,0],w[1,0],…,w[i,j]。其中,w表示网络安全检测数据信息字符,括号内的第一个数字i表示相对w的位置,第二个数字j表示特征列数。通过对特征函数f定义为:
(1)
其中:y表示当前标记的网络安全检测数据信息字段;k表示特征函数数目,k通常取自然数;x表示当前字段位置。在通常情况下,特征函数f得出的数值是二值函数,式(1)的含义是取在x位置每个特征函数的总和[8-9]。设赋予特征函数的权重向量Z为:
Z=(z1,z2,…,zk)T
(2)
之后,将所有当前标记的网络安全检测数据特征信息转换为特征向量,得到:
F(y,w)=(f1(y,w),f2(y,w),…,fk(y,w))T
(3)
其中:F表示所有特征向量的总序列。
2.1.2 CNN算法
为了有效的提取网络安全检测数据字符级特征,本研究采用CNN算法模型处理那些细粒度高的字符特征。CNN算法能够自适应地从具体到抽象地特征信息,并且可以拥有不同结构的神经网络框架,灵活性很高[10-11]。关于基于CNN的特征提取流程图如图3所示。
图3 基于CNN的字符特征提取流程图
如图3所示,在输入网络安全检测数据字符向量后,要先设置相关参数、损失函数和优化器。相关参数依然是由迭代次数、批处理以及学习速率组成,为了减少内存消耗,通过添加神经网络压缩加速技术对内存进行优化。通过将模型测试和优化交替判断处理,可以使训练时间更快[12-13]。在构建好神经网络模型之后,将分类交叉熵函数作为损失函数进行模型测试。
在整个特征提取过程中构建卷积神经网络模型是最重要的步骤,其主要由卷积层、池化层、全连接层和输出层四部分组成:
卷积层对于网络安全检测数据来说相当于一种滤波器,与滤波器所不同的是卷积是通过卷积核的不同对输入进行训练处理,提高了效率,极大地减少了参数量;池化是利用卷积核来减少数据的参数个数并依然能进行特征提取的过程。池化操作虽然丢失了一些信息,但保持了网络安全检测数据的平移和扩展的不变性;全连接层就是将每一层的神经元都要与下一层所有神经元相连,也是为了将池化后的网络安全检测数据特征信息进行学习权重系数并分类[14-16]。本研究通过固定输入网络安全检测数据大小以及全连接层系数矩阵,为输出层提供更加突出的特征信息。
2.1.3 CRF算法
由于存在不能独立的抽取网络安全检测数据特征向量的问题,因此本探究通过链式CRF算法计算整体上特征向量标签序列的概率并得出损失值。首先,输入网络安全检测数据标签特征序列Y为:
X=(x1,x2,…xn)
(4)
Y=(y1,y2,…yn)
(5)
其中:X表示网络安全检测数据特征序列,Y是X的标签序列,括号中每个字母代表着一个特征向量。之后计算每个输入特征向量在t时刻的标签权重M:
(6)
其中:M1和M2分别表示经过特征模板和CNN算法得出的权重值;Z和F分别表示权重向量和特征向量的总序列;Wc和Oc分别表示CNN算法中的权重矩阵和输出层输出结果[17]。
计算在输入序列X的情况下产生标签序列Y的概率P的表达式为:
(7)
本研究采用对数最大似然来表示损失函数,最终得到:
(8)
根据公式(8)损失函数值输出最优标签的网络安全检测数据,得到结果H为:
H=argmaxM(x,y)
(9)
在网络安全防攻击检测中,通过在数据抽取模型中得到网络安全的特征向量,本研究采用逻辑回归对攻击检测中的网络安全数据进行分析,应用二元分类解决数据难处理问题[18-19]。本研究中网络安全数据分析通过逻辑回归模型来实现,下面说明具体构建过程:
设网络安全检测数据特征序列为A=[a1,a2,…,an]T,与其相对应的类集合B=[b1,b2,…,bn],设C是两个预定类集合,通过Logit函数将特征向量a映射到两个预定类集合中的某一个得到二分类的逻辑回归模型[20]:
(10)
λ=k0+k1a1+k2a2+…knan
(11)
其中:k为网络安全检测数据特征序列的权重系数,P表示特征向量a的攻击概率。
由于在企业网络安全防攻击检测中对不同恶意软件分析的要求,因此逻辑回归模型得到具有概率意义的结果将更好。逻辑回归模型在处理每个网络安全检测数据样本二元分类结果,对应出的一个处于0~1之间的概率值P,可以表明分类结果的置信度,即概率P可以作为发生网络安全风险可能大小的衡量标准[21]。但在实际应用中,网络安全检测数据样本二元分类的结果会存在一定的偏差,即样本多数类和少数类的问题。
针对这种问题,本研究采用置信传播技术对逻辑回归模型进行改进,增添了网络安全防攻击独立特征条件概率,每当新的数据样本被抽取时便可快速提取特征用于逻辑回归模型进行分析,进一步获取攻击的置信度。而在算法模型改进的层面上,通常的方法是使算法在不平衡分类问题上表现更好。其主要方法是通过算法对决策面进行修正,使其偏向少数类,从而提高少数类的识别率,比如贝叶斯网络模型改进的概率密度算法。
置信传播通常是计算置信度与真实值比较来判断网络安全检测数据是否判定是否处于网络安全告警状态。关于逻辑回归模型中置信传播过程如图4所示。
图4 置信传播流程图
在网络安全防攻击检测过程中,条件概率由状态可以分为攻击属性和良性属性。关于置信度BEL(v)的计算中需要贝叶斯网络中每个节点的条件概率表,其中覆盖了每个可能状态的边界概率P2。通常情况下条件概率表中攻击属性和良性属性的条件概率相同,这也是理想情况下网络安全检测数据样本二元平衡分类的结果。在攻击属性下的置信度BEL(v)的计算过程为:
(12)
式(12)表示每个网络安全检测数据样本攻击条件概率之积即为攻击节点的置信度,良性属性下同理。
综上所述,整个网络安全分析方法先从数据抽取模型中得到所有数据样本,优点在于传递给置信传播模型前即可确定未知样本的恶意攻击概率。经过逻辑回归模型分析出该样本特征为攻击属性或良性属性,大幅度提高了效率。置信传播过程中使用恶意攻击的所有条件概率的特征属性计算置信度BEL(v),这种方法能够使输出的结果不受独立条件概率的影响,提高对样本分析的精准度[22-23]。
为了验证本研究网络安全防攻击检测平台的可靠性和实用性,下面将进行实验。
关于实验环境可分为硬件环境和软件环境,其中硬件环境为机台为CentOS6.8(x64)操作系统,Intel(R) Xeon(R) CPU E5-2640 v2、2.00 GHz主频、千兆网卡、8核16 G内存、512 GB硬盘。软件的操作系统为Windows10,JDK5.0。
关于实验设置本研究采用一主机6个服务器节点来构建网络安全防攻击检测系统,在服务器节点网络流量数据传输末端设置用户服务器,评估用户空间恶意软件和内核级Rootkit攻击能力。关于网络安全防攻击检测过程中的恶意软件部分类型如表1所示。
表1 网络安全防攻击检测过程中的恶意软件
在上述的模拟仿真实验中,下面对本研究的系统进行验证,将带有本研究置信传播(BP)模型和未带有BP模型的逻辑回归分析方法在网络安全检测中进行数据分析,采用的数据从表1中的网络安全检测恶意软件数据随机选取一种,评估攻击概率与真实值在0~2 GB数据量下的对比,通过MATLAB软件进行仿真,得出曲线图如图5所示。
图5 对比曲线图
从图5可以看出,在不同网络安全检测数据量环境下,采用BP模型得到的攻击概率P与真实值相差较小且趋于稳定,不采用BP模型得到的攻击概率P与真实值相差较大且波动幅度明显。从该实验结果表明本研究采用置信传播技术改进逻辑回归模型能有效提高网络安全防攻击检测数据分析的精准度。
为了验证本研究所设计的数据抽取模型的优势,本研究以文献[5]中基于交叉验证优化贝叶斯分类法作为对比,采用不同方法计算0~2TB网络安全检测数据量范围内损失值,通过MATLAB软件系统进行仿真对比,对比结果图如图6所示。
图6 损失值对比结果图
从图6可以看出,本研究所采用的数据抽取模型方法比交叉验证优化贝叶斯分类法的损失值更低,网络安全检测数据抽取性更加高效,这充分表明本研究的数据抽取模型更加适用。
本研究设计出新型的智能化网络安全防攻击检测平台,构建数据抽取模型提高网络安全检测数据特征抽取的精准度。通过分析存在的潜在威胁和恶意软件,评估网络受到攻击的概率,最后通过实验验证了本研究的网络安全防攻击检测平台的适用性和可靠性。实验结果表明,本研究的数据抽取模型能够产生最优估计值,而采用基于置信传播改进逻辑回归模型处理数据更接近真实值。随着技术的不断发展,对于智能化网络安全检测平台采集精准度和全面性要求会更高,本研究仍旧存在诸多不足,有待进一步的研究。