APP下载

基于用户偏好的权重搜索及告警选择方法

2020-04-20李冰珂

计算机工程 2020年4期
关键词:态势排序权重

李 莉,宋 嵩,李冰珂

(东北林业大学 信息与计算机工程学院,哈尔滨 150040)

0 概述

近年来,网络安全事件频发对各行业的信息基础设施造成了许多负面影响。因此,从大量数据中辨识出网络中的攻击活动,并对攻击行为意图进行理解和预测,从宏观角度对整个网络的安全状况进行把控并及时提出应对举措,成为网络安全管理人员的首要任务。在此背景下,网络态势感知技术(Network Security Situation Awareness,NSSA)应运而生[1]。

NSSA的主要作用是在动态网络环境中,对网络安全体系各部分的安全状况和安全特征进行综合评估。在此过程中,对各类有效的安全数据和信息进行组织[2-3],以呈现出整体的安全状态,从而提高网络安全管理人员对整个安全体系的宏观把控能力,为决策人提供有力支持[4]。NSSA是一种认知过程[5],可分为安全态势觉察、安全态势理解和安全态势投射3个任务。安全态势觉察包括数据预处理、关联分析和结果呈现3个子任务,网络安全态势理解主要包括攻击目的理解和攻击行为预测的功能,而网络安全态势投射可分为投射准备、风险评估及态势投射结果获取,其中,风险评估是安全态势感知技术的核心。

经过多年的发展,研究人员不断将新理论引入安全态势评估领域,并对传统方法进行改进。在诸多理论中,网络安全态势评估方法按照其特性可分为统计分析法、基于知识推理的方法和灰度理论法。统计分析法被首先应用于态势评估领域,但在其数学模型中,核心的评价函数构造和参数选择需要该领域专家进行详细评估,因此,评估结果会受专家个人观点和意见的影响。基于知识推理的方法面临的挑战在于难以获取推理规则和先验概率等知识。灰度理论法在态势评估上虽具有客观性等特点,但其计算量巨大,无法在大型网络环境下满足用户的需求。

针对上述问题,本文在网络安全态势评估中提出一种告警选择方法。利用用户偏好评估安全检测系统中产生的告警,同时结合告警处理的时间成本进行综合分析,完成告警处理优先级选择,以提高用户的满意度。

1 相关工作

态势感知[7]最早来源于军事研究,并随着网络的兴起而升级为网络态势感知(Cyberspace Situation Awareness,CSA)。本文所提及的网络态势均指网络安全态势。文献[8]指出:基于融合的网络态势感知必将成为网络管理的发展方向。网络态势感知的研究主要集中在网络态势预测与网络态势评估2个方面。

1)网络态势预测

网络态势预测的主要方法分为Markov模型[9]、时间序列分析以及博弈论等。Markov模型方法凭借计算状态之间的转移概率来推测最有可能发生的攻击行为[10],该方法需要较长且连续的观测序列才能保证预测的准确性。时间序列分析方法通过动态数据处理找寻相邻观测值前后的关系[11],其成本较低但无法处理大量数据集。博弈论[12]凭借攻防模拟给出最佳加固方案,但当网络规模过大时,攻击者的行为活动复杂度会变高,导致其运行负担随之增加。文献[13]通过对攻击者、管理员和用户三方的行为进行博弈分析,建立Markov博弈模型对系统安全态势进行分析,为管理员提供最佳加固方案。

2)网络态势评估

网络态势评估是指网络管理人员根据已经辨识的恶意行为和检测系统发出的告警,通过建立函数或统计学模型评估其对数据信息或者其他网络资源造成的威胁[14]。在网络安全态势评估方法中,基于知识推理的方法面临计算规模的挑战,基于统计的方法不具备合理的量化标准,其评估结果受专家个人的主观影响,灰度理论具有十分精准的短期预测能力。但是上述方法主要评估的是静态损失,对于已产生的告警缺乏合理分析。

本文对检测系统中的告警进行基于用户偏好及处理成本的评估,帮助用户有效地确定告警处理的优先级,以提高用户对整体处理结果的满意程度。

2 网络安全态势评估

2.1 基本概念及定义

2.1.1 权重搜索方法

评分函数是指定网络安全评估指标——偏好权重的最直接方式。由于线性评分函数可用于计算告警处理优先级的排序结果[15],因此本文采用线性评分函数并设用户偏好为权重向量ω=(ω[1],ω[2],…,ω[d])T,其中,权重ω[i]用于衡量用户对属性A[i]的偏好程度。本文设所有ω[i]均为数字值,同时将其归一化至[0,1]。

在数据集D中有n个对象,每个对象包含d个属性。pAi表示p在Ai上的值,其值越大表明用户偏好程度更高。由评分函数f将对象的多个属性值进行聚合得到其评分值,再根据该值返回对象次序。

定义1定义p与q在评分函数f下有如下关系:

iffpAi>qAi,pAi≻qAi

iffpAi≥qAi,pAiqAi

ifff(p)>f(q),p≻fq

ifff(p)≥f(q),pfq

定义3线性评分函数fω(p)为加权求和函数:

定义4对于正整数k和权重向量ω,排序查询结果Ttopk(ω)表现为一个有序列表,可使Ttopk(ω)⊆D,|Ttopk(ω)|=k且∀p:p∈Ttopk(ω),∀q∈D-Ttopk(ω)均有p≻fωq。∀p,q∈Ttopk(ω),p≻fωq在top-k结果中对象p均排在对象q的前面。

2.1.2 告警选择预算

本文的目标是选择一个能使效用最大化的告警组H(H⊆A),同时成本(时间)不超过B。

(1)

目前没有求解式(1)的效用函数,因而其被称为隐形效用函数[16-17]。文献[18]引入distortion的概念来量化给定聚合规则实现这一目标的程度。distortion是最佳告警组的效率与所给告警组效率之间最坏情况的比率,它度量了偏好中所含信息对实现告警效率最大化的有用程度。

2.2 安全态势评估流程

安全态势评估流程为:

2)采用均匀抽样的方法从Γ中得到权重候选集合S={ω1,ω2,…,ωS},基于此使用评分函数得到所有候选对象在权重上的排序集合。

3)基于定义1,返回一组对象(p,q)用于学习用户偏好,通过用户在对象(p,q)上表现出不同偏好程度,对权重空间进行约束。若用户对p偏好程度较高,将(p-q)·ω>0加入用于约束权重空间的不等式组,否则,将(p-q)·ω<0加入不等式组。得到另一个权重空间Λ。

4)重复此学习过程,建立偏好集合。针对每个告警对于用户偏好的效用建立效用函数vi(a),分别使用背包式方法和阈值设定方法结合处理成本对告警进行选择,并以distortion来度量处理告警效率的最大化程度。

3 基于用户偏好的权重搜索算法

3.1 评估模型

(2)

设对象p1,p2,…,pk为在Cpi(权重集合)中任意权重下均能得到的top-k对象,即对∀ωl∈Cpi满足pj·ωl>pj+1·ωl,其中j=1,2,…,k-1。由此可得不等式组:

Q(R,T)的值越小则说明WT的质量越高,同时得到的用户的近似偏好权重的质量也越高。

3.2 权重搜索算法

定义cp为凸多面体,Vcp={ω1,ω2,…,ωl}表示cp几何意义上的所有凸点,Bcp代表cp的边界,Icp代表cp的内部权重的集合。设权重空间CP由凸多面体{cp1,cp2,…,cpm}组成,对象p、q在其内部可构造一个超平面H:(p-q)·ω=0,则H将CP分割成CP>和CP<2个部分。在此基础上,根据用户对对象p、q的偏好性,可将权重空间约束到CP的子集CP>或CP<上。经过有限次循环,最终只会有一个cpi被保留,可以理解为不存在任何一个超平面与其相交。因此,在该凸多面体cpi中,任何一个权重下的top-k结果都一致,都可以作为用户偏好的近似解。

有一种特殊情况,若权重落在超平面H上,则说明对象p、q具有相同的评估值,为避免此种情况的不确定性,定义cpi的排序结果为偏序结构,即如果pVcpq,那么对∀ω∈Icp均有p≻ωq。

如图1所示,当维度d=2时,权重为ω[2]坐标轴上0到1的线段。

图1 维度为2的示例Fig.1 Example when dimension d=2

当权重ω[2]=0,5个对象排序rA=5≻1≻3≻4≻2。当权重ω[2]=1,5个对象排序rF=4≻5≻2≻1≻3。考虑对象1和对象3在rA与rF中均有1≻3,因此可知对象1在整个权重空间均优于对象3。

如图2所示,当维度d=3时,经过多次交互保留的权重空间仅为凸多面体区域K,其凸点有3个:{[3/4,0]T,[6/7,1/7]T,[1,0]T}。

图2 维度为3的示例Fig.2 Example when dimension is 3

在其权重下5个对象的排序为:r[3/4,0]T=5≻1≻34≻2、r[6/7,1/7]T=5≻1≻34≻2、r[1,0]T=5≻1≻3≻4≻2。在所有凸点处,对象3的排序均表现优于对象4,因此可将排序中的等于关系清除,即表现为排序一致,可将K中的任意权重作为用户偏好近似值返回。

当维度d≥3时,该问题则转变为凸多面体的凸点的枚举问题,其中多面体cp通过以下不等式组定义:

本文采用文献[19]提出的方法来解决该问题。

由于R(候选对象在权重空间凸点处的排序集合)中所有排序均为严格的偏序结构,对象p、q的评分值不存在完全相同的情况,因此以公式h(p,q)=(|Rp≻q|-0.5|R|)2评价其候选对象的优劣性。分析可知存在2种情况:

情况1若对象p和q使h(p,q)的值越小,则无论选择哪个对象都可以很好地均分R,表现越优的对象,与其对应的评价值也越小。

情况2如果通过上述评价公式存在多个对象获得相同评价值的情况,可形式化描述为给定凸点处的权重及其排序rω1和rω2。若对象p、q在排序中相对次序不一致,则存在超平面H:(p-q)·ω′=0使排序对应的凸点位于其两边,假设存在m组不同的对象符合上述情况,可将rω1转换为rω2。具体变换规则为:在rω1经过超平面时,将该超平面对应的对象在该排序中的次序交换,反之亦然。

下文对情况2做形式化描述。设对象p、q将R={rω1,rω2,…,rωm}分割成Rp≻q与Rq≻p2个部分且|Rp≻q|≥|Rq≻p|,定义:

其中,r为Rq≻p中任意抽取的序列,r0为Rp≻q中任意抽取的序列,λr(p)代表对象p在r中所处的位置,λr0(p)代表对象p在r0中所处的位置,dist(r0,r)代表序列r0与序列r之间相对次序不同的对象对的数量,eval(p,q)的值越小,则说明该对象对越优。

4 基于偏好及成本的告警选择方法

4.1 背包选择法

上文已经得到所有告警的用户偏好权重,下文需要在成本约束下选择能使告警处理效率最大化的一组告警。背包选择法采用聚合规则将所有告警都视为被选中可直接进行处理的对象,对所有告警的偏好权重进行排序,贪婪执行直到总成本(总时间)用尽。

4.2 随机阈值法

由于采用固定阈值选择效用函数会导致多种选择方案且其distortion不理想,因此本文采用随机阈值,高于阈值的效用所对应的告警即被选择优先处理。

设定阈值t,被选择的告警集合为其偏好效用高于t的告警组成,当且仅当Ti={a∈A:vi(a)≥t},Vi▷Ti。

随机阈值的设定是一个输入格式的分配,每一个阈值的效用都有一个分配,为此本文构建3种不同的机制,最终的选择将在这3种机制之间随机化。

机制1从集合T={(j,k):j,k∈[1,2 lnm]}中随机选取一对(j,k),然后将阈值设定为lj,并使用生成的输入曲线,贪婪地选择Sk中偏好值最高的1/uk个告警。令Bj,k表示(j,k)的告警选择集合。因为有j>0且k>0,在第一次转换中,仅需考虑至少为lj的效用群体,在第二次转换中,因为uj=2lj,|S*∩Sk|≤2|Bj,k|,所以Bj,k由贪婪选择的告警组成且拥有最高的偏好值。因此,机制1实现的预期效率是:

第一次转换为:

第二次转换为:

机制3在A中随机选择一个告警,其实现的预期效率为n/m。

4.3 风险指数

在实际应用中,以用户偏好作为告警处理优先级选择的唯一衡量标准略显片面,因此,本文引入告警风险指数的概念。风险指数主要以受告警威胁资产的重要程度、告警涉及相关漏洞的危害性、告警涉及相关漏洞的可利用性以及告警在防护性角度描述的危害性4个评估因子作为依据。本文采用ISO/IEC 27001中的定义对受告警威胁资产的重要程度进行量化,将其分级为可忽略、低、中、高、极高,分别对应赋值1、2、3、4、5;以NESSUS漏洞分析作为标准对涉及漏洞危害性进行量化,将其分级为低、中、高,分别对应赋值1、3、5;以NESSUS漏洞分析为标准将涉及相关漏洞的可利用性划分为难、中、易并分别赋值1、3、5;依据现有防护资料将告警的可防护性划分为易、中、难并分别赋值1、3、5。由此,告警风险指数可被描述为:

5 实验与结果分析

5.1 用户偏好的权重搜索策略

网络安全告警的严重程度由其属性字段上的评估值(实数)来表示,该值区间通常为[0,1]。本文采用经典的数据生成算法[20]来生成实验数据。

通过经典数据生成算法可以生成相关数据集、非相关数据集和均匀分布数据集3种数据集。均匀分布数据集中各个属性字段值相互独立且分布均匀,相关数据集中数据在不同维度上的优劣性表现较为一致,算法对两者进行测试时,性能差异不大,但非相关数据集中数据在不同维度上的优劣性通常差异很大。因此,本文主要采用非相关数据集和均匀分布数据集测试算法的性能。为测试算法效率,本文实验分别生成大小为100、1 000、10 000以及100 000的数据集,数据维度分别为2、3、4和5,此数据规模基本可以覆盖所有网络环境的告警测试用例。

本文算法的性能主要通过交互次数、等待时间和求解质量进行对比。其中,交互次数为算法得到最终用户偏好所需要的交互总次数,等待时间取算法进行每次交互所需时间的平均值,求解质量代表算法得到最终偏好值的近似程度。实验对象为算法WSA-I和WSA-II,其中WSA-I算法适用于3.2节中的情况1,WSA-II算法同时适用于3.2节中2种情况。

结合实际应用环境,本文实验设参数k=10,并将偏好权重ω初始化为[1/d,1/d,…,1/d]。当算法将对象(p,q)返回做交互时,ω对(p,q)进行评分并将评分值较好的对象作为结果进行反馈。本文在window7操作系统、Intel Core i3处理器、4 GB内存的计算机中,通过JDK1.8编译完成算法设计。

实验1设置参数k=10,数据维度d=3,在不同数据规模下测试2个算法的等待时间及交互次数,实验结果如图3~图6所示。

图3 不同数据规模下均匀数据集中算法的等待时间Fig.3 Waiting time of algorithms in uniform dataset indifferent data scales

图4 不同数据规模下非相关数据集中算法的等待时间Fig.4 Waiting time of algorithms in uncorrelated dataset indifferent data scales

图5 不同数据规模下均匀数据集中算法的交互次数Fig.5 Interaction times of algorithms in uniform dataset indifferent data scales

图6 不同数据规模下非相关数据集中算法的交互次数Fig.6 Interaction times of algorithms in uncorrelated dataset indifferent data scales

从图3和图4可以看出,在相同数据维度的情况下,算法WSA-II比WSA-I耗费更多的时间,这是因为WSA-II算法需要同时顾及2种情况来选择最优对象对。

从图5和图6可以看出,在相同数据维度下,算法WSA-II比WSA-I需要更少的交互次数。由此可见,在选择最优对象对时情况2是存在且有影响的。

实验2设置参数k=10,数据规模为1 000,在不同数据维度下测试2个算法的等待时间及交互次数,实验结果如图7~图10所示。

图7 不同数据维度下均匀数据集中算法的等待时间Fig.7 Waiting time of algorithm in uniform dataset indifferent data dimensions

图8 不同数据维度下非相关数据集中算法的等待时间Fig.8 Waiting time of algorithms in uncorrelated dataset indifferent data dimensions

图9 不同数据维度下均匀数据集中算法的交互次数Fig.9 Interaction times of algorithms in uniform dataset indifferent data dimensions

图10 不同数据维度下非相关数据集中算法的交互次数Fig.10 Interaction times of algorithms in uncorrelated dataset indifferent data dimensions

从图7和图8可以看出,在相同数据规模的情况下,算法WSA-II比WSA-I要耗费更多的时间,原因与实验1相同。

从图9和图10可以看出,在相同数据规模下,算法WSA-II比WSA-I需要更少的交互次数,原因与实验1相同。

通过分析实验1和实验2的结果发现,在不同数据规模和数据维度下,算法的运行时间和用户的交互次数在非相关数据集和均匀分布数据集中的表现差别不大。

实验3设置数据规模为1 000,假设用户可接受的最高交互次数为10次,测试2个算法求解的质量,实验结果如图11和图12所示。

图11 均匀数据集中算法的求解质量Fig.11 Solution quality of algorithms in uniform dataset

图12 非相关数据集中算法的求解质量Fig.12 Solution quality of algorithms in uncorrelated dataset

从图11和图12可以看出,在均匀数据集和非相关数据集中,算法WSA-I经过10次交互后得到的解的质量均比算法WSA-II差。

5.2 基于背包式和设定阈值的告警选择方法

图13 4种方法的平均效率比例Fig.13 Average efficiency ratios of four methods

图14 2种输入格式的平均运行时间Fig.14 Average running times of two input formats

从图13和图14可以看出,在平均效率比例方面,对于确定的distortion最小化聚合规则通常优于随机化规则,但随机化规则有较低的distortion,并且会将因效用函数信息缺失导致的效率损失控制在2%~3%,而背包式方法会导致较高的distortion,同时还需要较多的运行时间。

6 结束语

本文对用户选择优先处理告警的偏好及处理告警所需的成本进行综合分析,提出基于用户偏好的权重搜索及告警选择方法。挖掘用户潜在偏好值,在有限的成本(时间)内,通过对效用设定随机阈值选择需优先处理的告警,圈定用户认为严重程度较高的待处理范围,以此提高用户的满意度。实验结果表明,该方法合理有效,能帮助用户做出处理告警的较优选择。但在现实中,用户可能对告警的选择存在认知困难,不能对告警做出正确的偏好选择,或用户可能倾向于不做出偏好选择,让系统自行选择处理优先级,并且不同性能的用户端其告警处理时间会存在较大差异,因而难以确定成本范围。下一步将通过用户调查并根据其结果对告警进行多用户偏好设定,确定具体的告警处理优先级选择方案。

猜你喜欢

态势排序权重
排序不等式
权重常思“浮名轻”
2019年12月与11月相比汽车产销延续了增长态势
恐怖排序
汇市延续小幅震荡态势
我国天然气供需呈现紧平衡态势
节日排序
为党督政勤履职 代民行权重担当
基于局部权重k-近质心近邻算法
县乡一体化探索呈加速态势