移动目标防御策略选择的方法

文档序号:26095711发布日期:2021-07-30 18:05阅读:339来源:国知局
移动目标防御策略选择的方法

本发明涉及一种移动目标防御技术策略高效选择的方法,属于网络信息安全技术领域。



背景技术:

近年来,作为一种动态的主动防御技术,移动目标防御(movingtargetdefense)引起了人们的广泛关注,尤其是在防御策略的高效选择上。移动目标防御是为了克服非对称性,改变游戏规则而发展起来的,其主要思想是创建和部署各种攻击防御变化的机制和策略,增加攻击者攻击的复杂性和开销成本,有效地避免漏洞暴露和被利用的机会。通过对目标系统攻击面进行多层次、动态、连续的转移,可以降低系统的静态、同构和确定性特征,迷惑或误导攻击者,增加攻击的成本和难度,降低入侵系统的成功率,直至迫使攻击者放弃攻击,从而提高目标系统的安全性。

当面临多个网络攻击时,简单地使用单一的策略来实现防御工作效率是较低的。因此,要采取多个且有效的策略,来满足防御成本的最小化和防御效果的最大化。从防御效益和成本的关系出发,j.huang等人(j.huang,h.zhang,andj.wang,“markovevolutionarygamesfornetworkdefensestrategyselection,”ieeeaccess,vol.5,pp.19505–19516,2017)将一个攻击博弈构建为一个多阶段markov进化博弈。在(c.lei,d.-h.ma,andh.-q.zhang,“optimalstrategyselectionformovingtargetdefensebasedonmarkovgame,”ieeeaccess,vol.5,2017,pp.156–169)中,在多状态博弈模型的基础上,提出了一种基于多状态博弈的最优策略选择方法。然而,这些研究只集中于马尔可夫博弈过程的每个阶段的一次攻击。当面临多个攻击时,我们需要进一步地学习如何动态地节省系统和网络资源。

因此,在(w.connell,l.h.pham,ands.philip,“analysisofconcurrentmovingtargetdefenses,”inproceedingsofthe5thacmworkshopmovingtargetdefense,2018,pp.21–30)研究中,通过随机服务和ip地址来防御多步的攻击。虽然研究集成了mtd技术,但本研究和实验结果证明,多个mtd的部署严重不足。

许多研究都是基于遗传算法来寻找计算机与配置之间的关系。比如john等人(d.j.john,

r.w.smith,w.h.turkett,d.a.ande.w.fulp,“evolutionarybasedmovingtargetcyberdefense,”inproceedingsofthecompanionpublicationofthe2014annualconferenceongeneticandevolutionarycomputation.acm,2014,pp.1261–1268)实现遗传算法来寻找新的配置。然而,尽管这些研究都采用了遗传算法,但他们没有深入考虑攻击和配置的结合,只考虑针对主机的攻击。

在(h.zhang,k.zheng,x.wang,s.luo,andb.wu,“efficientstrategyselectionformovingtargetdefenseundermultipleattacks,”ieeeaccess,2019)的研究中,虽然基于攻击类型、防御方案、防御效率等诸多指标进行了各种公式、算法和实验。与基于平台攻击面的web应用场景相比,当一种新的方法能够有效地阻止多个并发攻击时,联合策略变得更加复杂。因为快速部署和降低系统和网络资源的消耗是极其重要的。

本发明基于联合策略选择的方案提出了一种自适应的联合策略方案,以解决在面对多个并发攻击时动态地节省有限的网络资源的问题,此发明在网络安全信息技术领域有着广泛的应用前景。



技术实现要素:

为克服现有技术的不足,本发明旨在提出一种自适应的联合策略选择方法,准确地做出不同策略的高效选择,为了达到上述目的,本发明采取的技术方案是基于联合策略选择的方案,且通过传统技术和移动目标防御技术相结合来实现动态地节省有限的网络资源,详见下文描述。

移动目标防御策略选择的方法包括以下步骤:

1)首先输入攻击损失级别,分别为高、中、低,级别对应的值是200、100、50,类似地,输入攻击成本和防御成本,分别对应的值是200、100、50;

2)由步骤1)得到数据,使用层次分析法去计算去每个策略的权重值;

3)由步骤2)得到计算的权重值,建立基于遗传算法的策略选择模型;

4)由步骤3)得出高效的策略选择方案。

详细步骤如下:

1-1)层次分析法:第一步构造判断矩阵;第二步,求解各指标权重;第三步是判断权向量的合理性;

在第一步中,通过比较矩阵的第j列和第i行的两个不同因子来填充aij值,并且所有对角线都是1,判断矩阵a如下:

1-2)第二步,求解各个评价指标w1,w2,…,wn的相对权重,具体用平方根法来解决,通过下式(2)逐行计算矩阵的行几何平均值。

通过式(3)对行几何平均值w*进行归一化,即为所计算的权重wi:

根据矩阵a中每列元素的总和,得到向量s={s1,s2,...,sn},

最后,用公式(5)计算矩阵a的最大特征值。

1-3)第三步,判断权重向量合理性:根据判断矩阵元素物理含义,应该满足以下三个条件:

aii=1(6)

aij=1/aji(7)

aik*akj=aij(8)

2-1)在攻击方和防守方的博弈中,双方会选择多种策略以达到最大的效果,因此,攻击方和防御方的收益需要多个指标来定义:

攻击成本:对于攻击方来说,有一个攻击的集合ax={a1,a2,...,an},对于集合中的每个攻击来说,它依赖于很多基础的指标,因此,相应地,有一个权重的集合

ω={ωim,ωid,ωit,ωih},所以,攻击成本可以定义为式(9)

axci=ωim*ei+ωid*di+ωit*ti+ωih*hi+...(9)

其中ei,di,ti,hi等是根据不同攻击类型的指标计算得出的,分别表示人工成本(expenses)、探测成本(detection)、时间成本(time)、硬件成本(hardware),权重是通过层次分析法得出的。

当面临多个(m)攻击时,1<m≤n,整个攻击成本是:

防御成本(defensecost):对于防守方来说,变体集合为d={d1,d2,...,dn},包括硬件资源(hardwareresources)、网络资源(networkresources)、软件资源(softwareresources)和复杂性(complexity),权重表示为λ={λihrs,λinrs,λisrs,λic},其中hrs、nrs、srs和c分别表示hardwareresources、networkresources、softwareresources和complexity,整个防御的成本为:

防御效益(defenseefficiency):表示攻击ai和防御dj之间的对应关系,如果攻击ai被完全阻止,则的值为1,否则,其值为0,其中,

所以,防御效益为:

其中sigmoid函数把传入的值映射在0到1之间,

其表达式为:sigmoid(x)=1/(1+e-x)

攻击回报(attackpayoff):表示的是一次成功的攻击后,攻击方所取得的收益,收益包括防守方的损失和攻击的成本,因此,攻击方的收益可以定义为:

其中,ami表示被ai攻击造成的损失,这个表达式表明攻击方的收益包括移除掉攻击方的成本并且加上防御方的损失以及攻击的效益;

防御回报(defensepayoff):防御方采取某个防御策略后避免的损失,回报包括攻击方的成本和防御方的成本以及攻击方对系统造成的损失,

其中,axc(a1,a2,...,am)表示不同的攻击类型,dc(d1,d2,...,dm)表示防御方采取的防御策略。

步骤3、4具体详述如下:

3-1)初始化遗传算法的参数,设置染色体的编码长度为5、初始种群数量为300、遗传迭代次数为100、系统资源可用量为100、基因突变率为0.01、选择交叉率为0.5、精英选择保留率为0.2;

3-2)初始化种群,根据设置的迭代次数进行繁殖迭代;

3-3)在每一次的迭代过程中,会有种群的选择、交叉和变异操作;

3-4)根据防御策略池中每个策略的收益和成本,去计算每一次迭代过程中种群的适应度的值,并筛选出较大值,适应度值较大的保留到下一代;

3-5)得到适应性强的种群,即,得到适应性高的策略选择方案;

4)由步骤3)得出高效的网络安全防御策略选择模型:当多个攻击同时发生时,基于联合策略的方案,模型从防御策略池中去选择适合的策略去抵御网络安全攻击,假设现系统有xss、ddos和sql注入三个攻击行为,策略池有相应的传统防御技术和移动目标防御技术的方案,针对xss、ddos和sql注入三个攻击行为计算出对应的策略的成本和收益,尽可能地充分使用系统的资源,并且取得防御方的最大的收益,从而有效地降低攻击方的收益。

本发明的方法的特点及效果:

本发明方法根据传统的防御策略和mtd(movingtargetdefense)技术的防御策略形成的联合策略方案进行高效地策略选择,该方法利用了传统策略防御效果单一和mtd技术防御效果多元性,具体具有以下特点:

1、基于遗传算法,易于实现;

2、联合传统策略和mtd(movingtargetdefense)策略,可以将系统资源充分利用,达到更大的收益;

3、基于策略选择进行自适应调整,减少因为某个策略防御效果单一导致收益较低;

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明方法的移动目标防御技术的原理;

图2为基于遗传算法建立的策略选择模型;

图3为自适应策略和传统的联合策略获得的回报对比图;

具体实施方式

下面结合附图和具体实施例,对本发明做进一步说明。

实施例1:本发明提供了一种能够高效选择网络安全防御策略的方法,其中的防御策略包括移动目标防御技术和传统的防御技术。常见的网络攻击行为有,针对服务器的ddos攻击和针对web应用程序的xss、csrf、sql注入攻击。移动目标防御技术主要以动态转换目标系统的攻击面技术为核心,通过对目标服务器、web端应用程序等进行低层代码的动态变换,提供主动性的网络防御能力。如附图2所示,防御策略选择方法包括以下步骤:

1)首先输入网络攻击的损失级别,分别为高、中、低,每个级别对应的值分别是200、100、50。高级别的网络攻击会中断系统服务或攻击者可以远程获取系统的最高权限,导致系统的机密信息泄露。中等级别的网络攻击会使攻击者窃取到用户的身份信息或泄露一般信息。低级别的网络攻击会使攻击者窃取到用户的基本信息。类似地,输入攻击成本(attackcost)和防御成本(defensecost),分别对应的值是200、100、50;

2)由步骤1)得到攻击级别、攻击成本和防御成本等基础数据,使用层次分析法(analytichierarchyprocess)去计算针对ddos、xss、sql注入和csrf等网络攻击行为的网络安全防御策略的权重值;

计算防御策略的权重值的具体步骤如下:

2-1)层次分析法:第一步构造判断矩阵;第二步,求解各指标权重;第三步是判断权向量的合理性;

在第一步中,通过比较矩阵的第j列和第i行的两个不同因子来填充aij值,并且所有对角线都是1,判断矩阵a如下:

2-2)第二步,求解各个评价指标w1,w2,…,wn的相对权重,具体用平方根法来解决,通过下式(2)逐行计算矩阵的行几何平均值。

通过式(3)对行几何平均值w*进行归一化,即为所计算的权重wi:

根据矩阵a中每列元素的总和,得到向量s={s1,s2,...,sn},

最后,用公式(5)计算矩阵a的最大特征值。

2-3)第三步,判断权重向量合理性:根据判断矩阵元素物理含义,应该满足以下三个条件:

aii=1(6)

aij=1/aji(7)

aik*akj=aij(8)

3)由步骤2)得到计算的各项网络安全防御策略的权重值,结合附图2建立基于遗传算法的策略选择模型,策略选择模型的基础数据来源攻击方和防御方的各项指标。

关于攻击方和防御方的概念定义如下:

3-1)在攻击方和防守方的博弈中,双方会选择多种策略以求达到自身的最大收益,因此,攻击方和防御方的收益情况需要多个指标来定义:

攻击成本(attackcost):对于攻击方来说,有一个攻击的集合a={a1,a2,...,an},对于集合中的每个攻击来说,它依赖于很多基础的指标,因此,相应地,有一个权重的集合

ω={ωim,ωid,ωit,ωih},所以,攻击成本可以定义为式(9)

aci=ωim*ei+ωid*di+ωit*ti+ωih*hi+...(9)

其中ei,di,ti,hi等是根据不同攻击类型的指标计算得出的,它们分别表示人员成本(expenses)、探测成本(detection)、时间成本(time)和硬件成本(hardware),权重值是通过层次分析法得出的。

当面临多个攻击时,1<m≤n,m是攻击数,n表示上限值,整个攻击成本是:

防御成本(defensecost):对于防守方来说,变体集合为d={d1,d2,...,dn},包括硬件资源(hardwareresources)、网络资源(networkresources)、软件资源(softwareresources)和复杂性(complexity)。权重表示为λ={λihrs,λinrs,λisrs,λic},其中hrs、nrs、srs和c分别表示hardwareresources、networkresources、softwareresources和complexity,整个防御的成本为:

防御效益(defenseefficiency):表示攻击ai和防御dj之间的对应关系。如果攻击ai被完全阻止,则的值为1,否则,其值为0,其中,

所以,防御效益为:

其中sigmoid函数把传入的值映射在0到1之间,

其表达式为:sigmoid(x)=1/(1+e-x)

攻击回报(attackpayoff):表示的是一次成功的攻击后,攻击方所取得的收益。收益包括防守方的损失和攻击的成本,因此,攻击方的收益可以定义为:

其中,ami表示被ai攻击造成的损失。这个表达式表明攻击方的收益包括移除掉攻击方的成本并且加上防御方的损失以及攻击的效益;

防御回报(defensepayoff):防御方采取某个防御策略后避免的损失,回报包括攻击方的成本和防御方的成本以及攻击方对系统造成的损失,

其中,ac(a1,a2,...,am)表示不同的攻击类型,dc(d1,d2,...,dm)表示防御方采取的防御策略。

附图2中的高效策略选择部分是基于遗传算法实现的,遗传算法本质是通过模拟一个生物种群进化的过程,通过复制、交叉、突变等操作去产生下一代的解,并在迭代的过程中,逐步地淘汰掉适应度函数值低的解,增加适应度函数值高的解。具体实现步骤如下:

3-1)初始化遗传算法的参数,设置染色体的编码长度为5、初始种群数量为300、遗传迭代次数为100、系统资源可用量为100、基因突变率为0.01、选择交叉率为0.5、精英选择保留率为0.2;

3-2)初始化种群,根据设置的迭代次数进行繁殖迭代;

3-3)在每一次的迭代过程中,会有种群的选择、交叉和变异操作;

3-4)根据防御策略池中每个策略的收益和成本,去计算每一次迭代过程中种群的适应度的值,并筛选出较大值,适应度值较大的保留到下一代;

3-5)得到适应性强的种群,即,得到适应性高的策略选择方案。

4)由步骤3)得出高效的网络安全防御策略选择模型。当多个攻击同时发生时,基于联合策略的方案,模型从防御策略池中去选择适合的策略去抵御网络安全攻击。假设现系统有xss、ddos和sql注入等三个攻击行为,策略池有相应的传统防御技术和移动目标防御技术的方案。如果基于传统的防御策略,即,系统全部选择传统防御技术方案,可能会导致现系统的资源不足。如果基于联合防御策略,即,系统全部选择移动目标防御技术的方案,可能会导致现系统资源剩余较多,不能获取最大的防御方的收益,或者导致系统资源只够抵御部分的网络攻击,无法对小部分攻击行为产生有效防御。我们的网络安全防御策略池包含移动目标防御技术方案和传统防御技术方案,部分mtd策略可以同时抵御多种网络攻击,比如可以同时抵御xss和sql注入攻击,同时此策略的防御成本比单独采取策略的防御成本低一些。相反,有些mtd策略虽然可以同时防御xss和sql注入攻击,但是由于它也能够防御其他的一些攻击行为,从而带来额外的成本消耗,这样一来使得比采取单独策略的防御成本高一些。针对xss、ddos和sql注入等三个攻击行为计算出对应的策略的成本和收益。我们的网络安全防御策略选择模型可以在现有系统资源有限的情况下,采取mtd和传统策略相结合的防御体系,去尽可能地充分使用系统的资源,并且取得防御方的最大的收益,从而有效地降低攻击方的收益。如附图3所示,采取自适应策略和采取传统的策略选择方案相比,自适应策略可以充分利用系统资源,并且达到最大的防御收益值。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1