《一种基于执行体安全性的智能仲裁算法.docx》由会员分享,可在线阅读,更多相关《一种基于执行体安全性的智能仲裁算法.docx(18页珍藏版)》请在第壹文秘上搜索。
1、O引a隐着网络信息技术的发展,网络空间已经成为人类生产生活中的第五空间”随之而来的就是网络空间的安全问题,没有绝对安全的系统,无论是硬件还是软件都不可避免地由于设计或者逻辑缺陷导致漏洞、后门等问题.然而,这些漏洞等安全问题无法从根本上杜绝,并且现有的安全防御方法大多是基于对威胁的翱知、对漏洞的修补、对软硬件的更新和防火墙加固等安全保护措施,这就导致了网络空间防御相对于攻击者的被动地位。针对攻防博弈不对称,易攻难守的态势,一些学者提出了主动防御的理念,与传统的被动防御相对,主动防御能够在攻击或者入侵行为发生之前,对其采取防御措施,提升系统的安全性.主动防御技术的代表之一是移动目标防御(Movin
2、gTargetDefense,MTD)技术,通过增加系统的动态性、随机性和多样性来构建一种不确定的网络目标环境,从而增加攻击者的攻击难度.但是,移动目标防御的局限性在于无法处理来自系统自身的安全威胁,只能通过系统攻击面的多样性和随机变化来对抗网络攻击。为了进一步提升系统对网络空间中未知的漏洞、后门甚至系统内部的缺陷的抵御能力,受到生物拟态伪装现象的启发,基于动态冗余构造(DynamicHeterogeneousRedundant,DHR),国内研究团队提出了拟态防御的思想,在DHR架构的机制中引入了动态性和随机性,以及能够显著提高系统容侵容错能力的多模裁决机制.拟态防御系统能够使系统对攻击者呈
3、现一种显著的不确定性表征,同时提升了系统对非协同式攻击的防御能力.拟态防御系统已经被应用在包括边缘计算系统、工业制造系统等多种领域中,由于其内生安全的机理特性,能够使系统应用开放的、通用的并且有毒带菌的开源软硬件和中间件构建安全可靠的系统.拟态防御通过将针对个体的单点攻击转换为针对系统层面的配合协同攻击,十分重要的机制之一是系统中的多模裁决机制.针对拟态防御系统中的执行体多模裁决或智能仲裁算法,常见的方法是采用多数执行体大数判决的方式进行裁决,即多数一致性裁决.对执行体的输出矢量进行一致性判决,并采取表决机制,能终有效地降低少量执行体故障导致系统输出错误的概率.然而,由于大数判决机制较为简单,
4、很多情况下,无法处理实际系统中复杂的判决问迤。例如,当系统中多数一致的条件无法满足或者在强攻击的条件下,系统中多数执行体都产生了错误输出时,大数判决机制无法给出正确结果或判决机制失效.为改进简单的大数判决算法,可以通过引入策略参数的方法.提出了一种基于高阶异构度的大数判决算法.通过定义执行体高阶异构度的概念,并对系统的安全性进行了量化分析为克服大数判决原理的简单性,一些算法中考虑了执行体的异构度、安全性和历史表现情况;沈丛麟等提出了一种基于信誉度和相异度的裁决算法,分别考虑了执行体的脆弱程度和异构程度,改进了系统的调度算法和裁决机制;郭威基于历史置信度的裁决机制,提出了一种基于1.ogisti
5、c函数的置信度修正算法及裁决算法;武兆琪等考虑了执行体的异构度、执行体数目和历史表现,提出了一种拟态裁决优化方法;提出了一种基于执行体可信度的判决策略,根据历史经睑和执行体状态选择正确的执行体集合.大数判决和考虑策略参数的判决方法必须满足系统中所有执行体都有输出之后再进行判决和计算,然而,不同的执行体有不同的构件,导致执行体间任务执行的效率不同,降低系统整体的效率,针对裁决机制的效率问遨,吴正江等提出了一种竞赛式的仲裁优化方案;王祖鹏基于博弈论设计了一种预判决机制.博弈论能够将裁决建模为攻击和防御的博弈问题,能够优化裁决的正确性和效率.基于以上研究,本文提出了一种综合考虑执行体安全性和输出结果
6、的智能仲裁算法,通过分层级的漏洞分析方法得到每个执行体的安全性,定义了执行体的安全评估系数对安全性进行量化。基于执行体集的输出空间,根据每个输出对应的执行体的安全评估系数,选择安全性最强的子集作为裁决结果.仿真结果表明,相对于大数判决算法和基于最优安全度的判决算法,本文提出的智能仲裁算法在判决准确率上有较大的提升.模型介绍1.1 拟态防御基本模型拟态防御架构的基本模型如图1所示.拟态防御系统中的主要模块包括:输入代理模块、异构构件集合、执行体集合、执行体调度模块、多模裁决模块、负反馈控制模块.基于DHR架构,拟态防御系统引入了结构表征的不确定性,将动态化和随机化的特性引入冗余异构架构中.拟态系
7、统对外呈现的状态与单一架构的系统是相同的,所以为用户提供的使用接口是相同的.因此,基本模型中的输入代理模块将用户的请求,也即系统的输入激励进行适当地预处理后分发到执行体集的每一个执行体中。执行体集是由调度算法从异构构件池中通过动态选择算法调度构建出来的.执行体集中的异构冗余执行体同时都是功能等价的,即在不出现故障和攻击的情况下,所有执行体的输出矢量是一致的.然而,在实际应用中,无法保证系统的各个构件及整个网络空间环境的“无毒无菌,所以执行体单点故障和受攻击的可能性是存在的.因此,需要通过多模裁决机制进行执行体的错误感知,通过多数一致性判决等算法判断当前输出矢量中包含错误的执行体.IWnM2”一
8、;三三I募sg多裁天思三-三班会果sfj三S1颗态防御基本模型1.2 相关定义功能等价异构冗余执行体集E:假设系统中有C个功能等价的异构执行体,则=(.,且|=c.执行体安全评估系数S针对每一个执行体,定义一个安全评估系数S,可以通过执行体漏洞扫描、历史表现统计等方法进行度至,用于评估执行体的安全性,作为调度和裁决的依据.执行体集的输出空间O:假设正确输出的执行体的输出矢量为。,最初是由人为判定标注输出矢量的正确性和可信性.执行体由于单点故障、受攻击后被恶意改变输出等原因,产生了相异于q的q种输出结果qq,rq,则执行体集的输出空间为owqqrB.除。外,执行体输出其余所有结果都判定为出错。1
9、.3 问题描述拟态防御系统中最核心的机制之一是多模裁决机制,通过动态异构冗余架构的机制,每个执行体都能得到相应的输出矢量,多模裁决机制便是通过相应的裁决机制和笄法以及给定的语义语法对得到的执行体输出矢量进行一致性判决,从而得到系统最终的输出.同时,多模裁决机制能够感知到执行体中产生随机故障或收到非协同攻击的状态,通过将执行体的状态信息发送到系统中的负反馈机制中,能够优化执行体的调度方案,进一步提升系统的安全性和运行效率。然而,传统拟态防御系统中最常采用的大数判决算法即多数一致性表决算法,由于其简单的表决投票机制,导致其在应对比较复杂的场景或执行体安全性不均衡的情况,易导致判决结果出错.例如,针
10、对5余度的拟态防御系统,如果执行体集中有部分执行体的安全性较低,表现在较低的安全评估系数,导致其受攻击的可能性较大,输出矢量遭到恶意篡改的概率较大.假设5个执行体的输出结果如表1所示,由于执行体空、G、U安全性较低,导致其输出被篡改;安全性较高的执行体。保持正确输出.如果采取大数判决算法,则输出的判决结果为错误的Q.因此,在这种情况下,大数判决方法失效,需要设计一种能够综合考虑执行体安全性和输出结果的智能仲裁算法.表15个执行体输出情况执行体输出矢里安全评白系数。80.76e2q0323O20.24q0.455q037基于执行体安全性的智能仲裁算法2.1 异构冗余执行体漏洞分析拟态防御旨在通过
11、不完美的构件组成更加安全的系统,系统中的软硬件可以采用开放、通用的软硬件设备.这些构件中一定会存在漏洞、后门等容易被利用的缺陷,于是会导致每个执行体中都包含不同的漏洞。因此,在系统运行过程中,每个执行体发生故障或者抵抗攻击的程度和能力是不同的.因此,翕要对执行体集中的情况进行安全性的量化分析。通用漏洞评分系统(CommonVu1.nerabi1.ityScoringSystem,CVSS)是用于评估漏洞的严重程度的公开标准,广泛应用在安全评估领域中。本文中采用执行体各个层级的漏洞评分对执行体整体的安全性进行量化.异构冗余执行体的异构层级包括异构CPU芯片、异构操作系统、异构服务器软件、异构数据
12、库、异构编程语言等.调度模块部署发布得到执行体后,通过漏洞扫描器对执行体中的漏洞进行扫描,直询美国国家漏洞数据库(Nationa1.Vu1.nerabi1.ityDatabase,NVD)得到相应漏洞的CVSS评分,用于对漏洞安全性的量化分析。扫描得到的部分漏洞示例如表2所示.表2执行体部分漏洞情况层圾ses8Hi男洞评分CPUInte1.CVE.2017-57544.7操作系统Ubuntu12.04CrE.2013-49715.0照炎器ApacheTomcat7.0.0CVE-2017-126156.8敖指库MySQ1.5.7.11CVrE-2016-070510.0编程语言OradeJaV
13、aSE6CVE.2011-081510.02.2 安全评估系数度番方法基于执行体的漏洞扫描结果和CVSS评分,本文对异构冗余执行体的安全性进行了量化分析,即执行体的安全评估系数,计算方法如下:s1.-./=1.2.n(1)式中,/代表执行体的异构层级数量;。为执行体集的大小,即执行体的数目;句表示第1层中执行体漏洞的综合评分,定义为:ZeatIs,/=1.21JV式中,U代表每一个异构层级中漏洞的数量,G峪表示第k个漏洞的CVSS漏洞评分,由NVD数据库查询得到.通过漏洞评分计算层级漏洞综合评分,归一化后得到表2中的执行体配置.只考虑表中存在的漏洞,则各异构层级的漏洞综合评分为:Is1=4.7
14、Is2=5.0Is3=6.8Is4=10.0Isi=10.0则该执行体安全评估系数为:C0136947+S08+1.Q0+1.Q0安全评估系数越高,代表执行体中漏洞综合评分的水平就越低,表示执行体的安全性越高.根据执行体安全评估系数以及输出空间的定义,可以进一步根据执行体的输出结果及其安全性设计仲裁和调度算法.基于此,本文提出了基于执行体安全性的智能仲裁算法.2.3算法步骤假设系统中执行体个数为C;输出矢量空间的大小为,即一种正确,q种错误;并且每个执行体都有输出,不存在因故障导致无输出的特殊情况。步骤1:记录C个执行体的输出矢量,表示为将相同的值划分到同一个子集中,得到输出矢量的空间Q,5r
15、qi.步骤2:根据执行体输出矢埴的空间,将输出相同的执行体划分到一个执行体子集,得到q+1个执行体子集,表示为eMf/.步骤3:根据执行体子集中的不同执行体,计算每个执行体的安全评估系数,表示为号号-M步骤4:统计每个输出相同的子集中执行体的安全评估系数的平均值:Sq=MP=E(3)得到每个输出相同执行体子集的安全评估系数均值集合对一/统计集合8中的最大值对应的下标E即EsA)=4.步骤5:将输出空间的判定为正确输出,其余=何,-4人依1判定为出错或故障。建立一个标识矩阵F=(Q1.,0,其中步骤6:将标识矩阵F发送到负反馈模块,用于优化执行体的调度与部署流程.将.发送到输出代理,响应输入的用户请求.3仿真分析前文中实现基丁漏涧分析的执行体安全性度贵,并根据安全性度量提出r一种基于执行体安全性的智能仲裁.算法。本节采用Python3.7和Mat1.ab2019b进行了算法的仿真分析和有效性险证,并且对比了所提算法与拟态防御系统中常用的大数判决与基丁最高安全度判决的仲战算法的表现,采用上分布生成执行体的安全度数据,对比不同仿真次数、不同执行体个数下:种方法的仲裁结果,对比结果表明,相对于大数判