今天还是有点拉肚子,所以,晚一会儿更新,大概凌晨一点左右吧,到时候重新刷新这一章就行了。
…………
摘要:为了保证网络安全,提出基于大数据分析的网络安全风险挖掘与估计方法,选取Hadoop平台的Map和Reduce函数挖掘网络安全事件关联规则,将所挖掘关联规则作为网络安全事件特征,将网络安全事件特征作为径向基核函数的支持向量机输入,通过训练建立网络安全风险估计模型,并采用QPSO方法的寻优性能搜寻支持向量机最优参数,实验结果表明,该方法提升了网络安全风险估计精度,对于防御网络安全风险具有重要的参考价值。
关键词:大数据分析;网络安全风险;关联规则;支持向量机
1引言
互联网技术发展极为迅速,互联网网络环境具有较高的开放性,部分攻击者利用网络具有的不确定性以及多样性攻击网络,严重威胁网络运行安全[1-2]。以往的网络防御方法仅利用数据包中所包含信息获取风险估计结果,所获取风险估计结果准确率较低。为了保障网络运行安全性,令网络管理者实时明确网络运行状态,提前明确网络安全风险,采用相应的防御措施抵御风险,是保障网络安全运行的重要基础[3-5]。目前众多研究学者针对网络安全风险进行大量研究。韩晓露与何春蓉等人分别利用直觉模湖集以及注意力机制评估网络安全态势[6-7],但网络安全风险仍存在告警量过大以及由于数据量过大导致误报率较高的缺陷。从海量网络大数据中挖掘有用的网络安全风险数据是网络安全风险精准评估的关键。网络存在攻击行为时,将形成大量众多类型的告警信息,提升数据挖掘难度[8],高效的大数据挖掘方法对于提升网络安全风险评估精度极为重要。为此本文提出了基于大数据分析的网络安全风险挖掘与估计方法,并对其性能进行了测试与分析。
2大数据分析的网络安全风险挖掘与估计方法
2.1数据挖掘的关联规则提取
采集海量网络数据中的安全事件,由于所采集网络安全事件格式存在较大差异,需归一化处理安全事件,便于挖掘其中所包含的关联规则。利用所挖掘关联规则分析网络安全风险的相似病毒[9],相似漏洞等攻击行为,提升网络安全风险评估精度。利用大数据分析技术的数据挖掘方法提取网络安全事件关联规则。n}表示安全事件元素集合,R={r1,r2,…,rn}表示数据集,数据集R中所包含元素ri均为由W建立的集合,即存在riW。定义1:利用集合R内元素建立集合C,数据集内元素可满足Cri要求数量为l时,可得数据集R内集合C的支持度计算公式如下:(1)(1)定义2:存在集合IDW时,利用表示C→D的置信度。所挖掘数据集合内可满足最小置信度以及最小支持度的C→D即大数据挖掘方法所需挖掘的关联规则。关联规则通过挖掘事务集内频繁项集合,获取不同事务与事务间所存在的关联规则。网络安全事件具有规模量极大的特点[10],选取云计算平台Hadoop平台实现海量网络安全事件关联规则挖掘。大数据分析技术挖掘关联规则分为两部分:(1)挖掘频繁项集,所挖掘频繁项集应满足最小支持度;(2)利用数据挖掘所获取的频繁项集挖掘满足最小置信度条件的关联规则。Hadoop平台利用Map函数以及Reduce函数获取项目集子集以及综合已获取子集的支持度,通过分析全部子集支持度获取所挖掘网络安全事件中频繁项支持度,挖掘网络安全事件数据集中所包含频繁项集。Hadoop平台挖掘关联规则过程如下:将最小支持度β以及原始网络安全事件数据集R作为Hadoop平台运算输入;将可满足最小支持度的频繁项作为Hadoop平台运算输出。Map任务:(1)依据所输入文件路径利用最小支持度的频繁项集分割原始网络安全数据集为大小为n的数据子集,格式化处理所分割的各子集,获取键值对,其中value与key分别表示数据信息以及字符偏移量。(2)将所获取不同子集中的键值对依据Map函数读取,将数据信息value利用split函数解析,将解析结果传送至集合内;(3)利用输出key表示全部子集,设子集value值等于1;(4)调用全部可选的bin函数,全部Map端在网络安全数据中生成相同key值的键值对,通过bin函数合并全部相同的键值对,改善通过网络将所获取的键值对发送至Reduce端造成运算效率低的缺陷;Reduce任务:(1)排序bin函数所发送的键值对,合并相同key值的键值对,获取,所获取键值对利用Re-duce函数读取,累加键值对中L()内的值。网络安全数据集R内key集合的支持数量,所获取结果即Reduce端具有频繁候选项集的全局支持度;(2)将高于最小支持度的候选项集基于最小支持度发送至存储数据外部表内,利用所获取外部表查询挖掘所获取的频繁项集,设置该频繁项为MapReduce程序的输入以及输入相关文件。将最小置信度δ以及满足最小置信度δ的关联规则分别作为挖掘网络安全事件关联规则的输入与输出,运算过程如下:(1)选取Map函数启动setup法连接数据库;(2)分割存储数据所建立外部表内的频繁项集,完成分割后获取数量为n的数据子集,将全部数据格式化处理至键值对;(3)解析value内频繁项集内元素,完成解析后获取相应value值用(C,D,SValue)表示,将所获取的(C,D)存储至集合中;(4)求解频繁项集内元素子集C,读取元素子集C支持度sup(C),利用表示C→D的置信度。(5)当所获取置信度高于已设定阈值时,所获取的频繁项集内部包含该子集外的全部元素与该子集存在关联规则,利用所获取差集与子集建立key值,该key值的置信度值即value。通过以上过程挖掘网络安全事件关联规则,利用支持向量机方法基于所挖掘关联规则实现网络安全风险估计。
2.2网络安全风险估计方法
将所挖掘关联规则作为网络安全事件特征,利用所挖掘关联规则估计网络安全风险。利用样本输入xi以及样本输出yi所组成的(xi,yi)表示网络安全事件训练样本集,该样本集满足xiRn,yiRn。网络安全事件样本集(xi,yi)内网络安全事件样本利用非线性映射函数φ()映射至高维特征空间内,可得网络安全事件评估的最优线性回归函数表达式如下:(2)式中,b与w分别表示偏置量以及权值。利用结构风险最小化原则获取LSSVM回归模型的解,可得公式如下:(3)(4)式中,ei与C分别表示回归函数与实际结果的误差以及惩罚函数。将公式(4)的约束优化问题引入拉格朗日乘子可得公式如下:(5)式中,ai表示拉格朗日乘子。依据Mercer条件定义核函数公式如下:(6)选取径向基核函数设置为网络安全风险估计的核函数,可得径向基核函数表达式如下:(7)获取最终支持向量机回归模型如下:(8)式中,σ为径向基核函数宽度。支持向量机参数决定其估计精度,选取合适的参数有助于提升网络安全风险估计精度。选取QPSO算法对支持向量机的参数寻优。QPSO算法设置存在数量为m的粒子于维度为D的搜索空间内,粒子原始位置用xi(xi1,xi2,…,xid)表示,PB(pb1,pb2,…,pbd)表示当前最优位置,GB(bg1,bg2,…,bgd)表示全局最优位置。粒子进化表达式如下:(8)式中,mbest与β分别表示粒子群内最优粒子值以及算法收敛速度。迭代次数为t时,算法收敛速度计算公式如下:(9)网络安全风险评估过程如下:(1)依据网络安全风险评估规模设置粒子群内粒子数量,粒子群内粒子维度分别表示用于估计网络安全风险支持向量机的参数C与σ。(2)设置优化支持向量机参数的粒子群算法的参数以及最大迭代次数;(3)获取粒子的适应度函数;(4)计算粒子的最优个体位置以及全局最优位置,建立网络安全信息库;(5)更新粒子群内各粒子位置;(6)依据以上过程重复迭代计算,判断是否满足终止条件,满足终止条件时,转至步骤(7),否则转回至步骤(3);(7)将通过以上过程所获取的最优粒子作为支持向量机参数,完成网络安全风险估计模型建立,利用所建立网络安全风险估计模型获取网络安全风险估计结果。
3实例分析
选取某通信网络运行时间为60min的通信数据作为测试对象,共采集样本数据5846544条,采用本文方法评估网络安全风险。选取直觉模湖集方法(参考文献[6])以及注意力机制方法(参考文献[7])作为对比方法。本文方法采用大数据分析技术挖掘海量网络通信数据间所存在的关联规则,统计不同最小置信度以及最小支持度时所挖掘的关联规则数量,统计结果如图1所示。图1实验结果可以看出,最小置信度以及最小支持度分别为0.7以及0.3时,可挖掘数量较多的关联规则,设置采用本文方法挖掘海量网络数据时,β值以及б值分别为0.7以及0.3。本文方法具有较高的关联规则挖掘性能,应用于海量网络通信数据时,仍具有较高的挖掘效率。完成关联规则挖掘后,利用QPSO算法的寻优性能获取支持向量机最优参数,QPSO算法在不同迭代次数时收敛情况如图2所示。图2实验结果可以看出,本文方法采用QP-SO算法寻找支持向量机评估网络安全风险的最优参数,仅需40次左右的迭代次数即可快速获取最优支持向量机参数。本文方法所选取QPSO算法具有较高的寻优效率,可在较短时间内快速获取支持向量机的最优参数,提升网络安全风险估计性能。通过QPSO算法获取支持向量机算法最优参数为C=130,σ=135。采用QPSO算法所获取的支持向量机最优参数建立网络安全风险评估模型,采用所建立安全风险评估模型评估网络运行5h的安全风险事件数量,将本文方法与另两种方法对比,对比结果如图3所示。图3实验结果可以看出,采用本文方法评估网络安全风险结果与实际网络安全风险结果极为接近,波动趋势具有较高的吻合性。对比结果说明本文方法可有效预测网络安全风险,预测结果极为可靠,可作为网络管理员管理网络安全的有效依据。经过多次测试,对比三种方法的网络安全风险评估性能,对比结果如图4所示。图4实验结果可以看出,采用本文方法评估网络安全风险,可有效改善所需历史数据较多、对缺失数据较为敏感等缺陷,应用于网络安全风险评估时具有较高可靠性。采用本文方法评估测试网络于2020年1月3日7:00-24:00共17个小时的安全风险情况见表1。针对表1给出的实验网络安全事件情况表,采用本文方法对其风险事件攻击类型进行评估,结果见表2。分析表2可得,本文方法可评估安全风险事件,可有效确定网络安全风险事件的具体攻击行为,验证本文方法具有较高的安全风险事件评估有效性。
4结束语
网络安全风险估计是目前网络安全防御体系中的重要部分。伴随网络中数据量的提升,对网络安全风险估计提出更高要求。充分考虑网络运行过程中的攻击形势,将大数据分析技术应用于网络安全风险估计中,利用大数据分析技术所具有的可处理海量数据的优势,充分挖掘网络安全事件中所存在的关联规则,估计网络安全风险。通过实验验证所研究方法可实现网络安全风险的有效估计,可保障海量数据运行环境下的网络安全的有效防护。