CN112632530A - 拟态架构下多样化变体生成方法及系统 - Google Patents

拟态架构下多样化变体生成方法及系统 Download PDF

Info

Publication number
CN112632530A
CN112632530A CN202011610302.2A CN202011610302A CN112632530A CN 112632530 A CN112632530 A CN 112632530A CN 202011610302 A CN202011610302 A CN 202011610302A CN 112632530 A CN112632530 A CN 112632530A
Authority
CN
China
Prior art keywords
variant
attack
variants
diversity
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011610302.2A
Other languages
English (en)
Other versions
CN112632530B (zh
Inventor
王俊超
庞建民
卫今
张帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Information Engineering University of PLA Strategic Support Force
Original Assignee
Information Engineering University of PLA Strategic Support Force
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Information Engineering University of PLA Strategic Support Force filed Critical Information Engineering University of PLA Strategic Support Force
Priority to CN202011610302.2A priority Critical patent/CN112632530B/zh
Publication of CN112632530A publication Critical patent/CN112632530A/zh
Application granted granted Critical
Publication of CN112632530B publication Critical patent/CN112632530B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/54Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于计算机网络安全技术领域,涉及一种拟态架构下多样化变体生成方法及系统,用于提升拟态环境下变体多样性及抗攻击能力,包含:构建变体生成模型,利用该变体生成模型描述不同变体生成策略在不同攻击向量下对拟态环境因素影响,拟态环境因素至少包含设备性能、攻击成功概率及变体多样性;设定模型输入输出参数,设置变体多样性属性,结合攻击成功概率矩阵设置变体抵抗性属性;并利用变体多样性属性和抵抗性属性设定模型优化目标函数;利用最大化变体多样性和变体抵抗攻击能力之间的权衡对模型优化问题进行求解,通过最优解获取变体最终生成策略。本发明能够提升拟态防御生成变体及攻击防御的性能,降低拟态防御系统运行成本,具有较强实用性。

Description

拟态架构下多样化变体生成方法及系统
技术领域
本发明属于计算机网络安全技术领域,特别涉及一种拟态架构下多样化变体生成方法及系统。
背景技术
近年来,随着计算机技术和工业物联网技术的不断普及和发展,我国核心信息系统中存在的软件安全问题显得日益严重。黑客通常利用软件存在的缺陷,例如缓冲区溢出等,来攻击整个系统,进而威胁整个系统安全。软件的安全漏洞已经逐渐成为互联网中最常见的安全风险之一。通常在互联网中分发给远程主机的软件又大多相同,因此,黑客在发现软件漏洞后便可以利用该漏洞完成对于所有安装同版本软件的攻击,进而导致大规模的网络安全威胁。为了避免或减轻基于软件漏洞的黑客攻击,目前软件系统已广泛应用地址随机化、堆栈不可执行以及Canary保护等机制,在一定程度上保护系统免受软件安全漏洞攻击的影响。但是这些防御方法往往只针对于某种特定类型的攻击方法。例如,缓冲区溢出攻击的原理是覆盖函数的返回地址并跳转到恶意代码段(shellcode),为了防止返回地址被覆盖,Canary保护机制能够在返回地址前插入Canary关键字,从而在黑客覆盖掉返回地址后能够检测出来这种异常。但是该防御方法相对于攻击而言是一种事后弥补的手段。而新型的软件漏洞和攻击方法层出不穷,如何改变攻防不对称的现状是网络空间安全领域亟待解决的问题。
近年来提出的拟态防御技术通过搭建动态、异构、冗余(Dynamic HeterogeneousRedundancy,DHR)的架构,使用功能等价的多样化软硬构件搭建运行环境,通过策略调度、重构重组和虚拟化等多维动态的不确定性机制,能够有效打破传统网络空间防御中攻防不对称的现状,对于软件安全提供一种主动防御的思想和方法论。软件多样化技术是拟态防御的基础支撑技术。多样化技术引入了目标的不确定性,可以增加攻击者对目标软件进行精确定位的难度,进而提供一种广泛有效的防御机制。
发明内容
为此,本发明提供一种拟态架构下多样化变体生成方法及系统,考虑不同的变体生成策略在不同的攻击向量下对机器性能、攻击成功概率以及变体多样性等因素的影响,通过量化衡量所需生成的变体以及生成变体的整体布局,提升拟态防御生成变体及攻击防御的性能,降低拟态防御系统运行成本,具有较强的实用性。
按照本发明所提供的设计方案,一种拟态架构下多样化变体生成方法,用于提升拟态环境下单个变体抗攻击能力,包含如下内容:
构建变体生成模型,利用该变体生成模型描述不同变体生成策略在不同攻击向量下对拟态环境因素影响,拟态环境因素至少包含设备性能、攻击成功概率及变体多样性;
设定模型输入输出参数,其中,模型输入参数包含变体数量、攻击向量和用于生成变体的不同编译组合生成的潜在可执行文件,模型输出参数为潜在可执行文件中生成变体的数量;设置变体多样性属性,结合攻击成功概率矩阵设置变体抵抗性属性;并利用变体多样性属性和抵抗性属性设定模型优化的目标函数;
利用最大化变体多样性和变体抵抗攻击能力之间的权衡对模型优化问题进行求解,通过最优解获取变体最终生成策略。
作为本发明拟态架构下多样化变体生成方法,进一步的,依据攻击现状和拟态环境来设定模型输入输出各参数变量。
作为本发明拟态架构下多样化变体生成方法,进一步地,利用多样性指数信息理论来设定变体多样性的度量指标。
作为本发明拟态架构下多样化变体生成方法,进一步地,对攻击向量下各攻击手段对各编译方式产生变体的攻击成功概率进行求和来设定变体抵抗性属性的度量指标。
作为本发明拟态架构下多样化变体生成方法,进一步地,利用基于分解的多目标进化算法对模型优化问题进行求解,将变体生成转化为多目标优化对象,并结合遗传算法,通过设置突变、交叉和选择三个遗传算子来获取最大抵抗攻击能力的变体组合。
作为本发明拟态架构下多样化变体生成方法,进一步地,对变体多样性属性和抵抗性属性进行度量,并将该两种度量值作为算法的优化目标。
作为本发明拟态架构下多样化变体生成方法,进一步地,使用MOEA/D算法,将上述的多目标优化问题转化成一组单目标的优化问题或多个多目标优化问题来解决。
进一步地,基于上述的方法,本发明还提供一种拟态架构下多样化变体生成系统,用于提升拟态环境下单个变体抗攻击能力,包含:模型构建模块、参数设置模块和优化求解模块,其中,
模型构建模块,用于构建变体生成模型,利用该变体生成模型描述不同变体生成策略在不同攻击向量下对拟态环境因素影响,拟态环境因素至少包含设备性能、攻击成功概率及变体多样性;
参数设置模块,用于设定模型输入输出参数,其中,模型输入参数包含变体数量、攻击向量和用于生成变体的不同编译组合生成的潜在可执行文件,模型输出参数为潜在可执行文件中生成变体的数量;设置变体多样性属性,结合攻击成功概率矩阵设置变体抵抗性属性;并利用变体多样性属性和抵抗性属性设定模型优化的目标函数;
优化求解模块,用于利用最大化变体多样性和变体抵抗攻击能力之间的权衡对模型优化问题进行求解,通过最优解获取变体最终生成策略。
本发明的有益效果:
本发明综合考虑最大化软件多样化和变体抵抗攻击抗性来生成变体,在当前多变体执行环境的基础上通过量化软件多样性和抵抗性并决策所需变体数量、变体生成的整体布局,在保证系统防御性能的同时能够有效降低多变体生成所带来的运行负荷,降低拟态防御系统运行成本,具有较好的应用前景。
附图说明:
图1为实施例中拟态架构下多样化变体生成流程示意;
图2为实施例中变体生成模型输入输出示意;
图3为实施例中攻击者选择可利用的攻击向量表示示意;
图4为实施例中不同的编译组合生成的潜在的执行文件组合示意;
图5为实施例中MOEA/D算法流程示意;
图6为实施例中突变、交叉示意;
图7为实施例中攻击成功概率likelihood和变体多样化程度diversity取值示意;
图8为实施例中AttackNum参数对likelihood和diversity的影响情况示意。
图9为实施例中NeededVariantsNum参数对likelihood和diversity的影响情况示意。
图10为实施例中VariantsNum参数对likelihood和diversity的影响情况示意。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。
软件多样性可通过编译手段实现,主要通过代码混淆和添加随机性两种方法进行。代码混淆是通过一系列手段进行代码的重写和重排,目的是生成大量不同版本的操作系统功能;添加随机性是指在某些核心进程中添加随机性,也就是同一程序的所有版本之间都有所不同,使得单一的攻击获得广泛的收益更加困难。现有的软件多样化技术主要有代码布局随机化、全局布局随机化、堆栈变量随机化等。同时,多样化程序转换的设计空间很大,研究人员提出了多种软件多样化的方法,例如多编译器。编译器多样化是软件多样性解决方案的核心:当编译器将高级源代码转换为低级机器代码时,机器代码可自动多样化,从而创建多个功能相同,程序内部不同的变体,通过正交的基于编译器的技术-多变体执行的编译手段,监视层以锁步方式执行多个多样化变体,同时检查它们对相关攻击表现出的行为的差异。由于大规模的软件多样性,每个用户都有自己的多样化变体,导致攻击者不了解该变体的内部结构,因此无法构建攻击。常用的变体编译手段已经集中到一些混淆工具中了,例如OLLVM、tigress等混淆工具都支持控制流扁平化、指令替换、函数的拆分合并等软件混淆手段,常用的随机化工具还包括:Hikari和Armariris等。本发明实施例,提供一种拟态架构下多样化变体生成方法,用于提升拟态环境下单个变体抗攻击能力,参见图1所示,包含如下内容:
S101、构建变体生成模型,利用该变体生成模型描述不同变体生成策略在不同攻击向量下对拟态环境因素影响,拟态环境因素至少包含设备性能、攻击成功概率及变体多样性;
S102、设定模型输入输出参数,其中,模型输入参数包含变体数量、攻击向量和用于生成变体的不同编译组合生成的潜在可执行文件,模型输出参数为潜在可执行文件中生成变体的数量;设置变体多样性属性,结合攻击成功概率矩阵设置变体抵抗性属性;并利用变体多样性属性和抵抗性属性设定模型优化的目标函数;
S103、利用最大化变体多样性和变体抵抗攻击能力之间的权衡对模型优化问题进行求解,通过最优解获取变体最终生成策略。
在拟态防御架构中,可以使用多样化编译器构建目标应用程序的若干个变体,编译方法主要包括:代码布局随机化、全局随机化、堆栈变量随机化、堆布局随机化、C++虚函数表随机化、数据随机化、数据交叉检查、函数入口交叉检查、细粒度的堆对象检查等。虽然已知了生成多样化变体的具体方法,但是对所需生成的变体数量、应设置的变体数量以及生成变体的整体布局,并没有一个量化的衡量和决策方法。本案实施例考虑不同的变体生成策略在不同的攻击向量下,对机器性能、攻击成功概率以及变体多样性等因素的影响。围绕着单一软件的安全性和软件多样性这两个目标来对变体生成策略进行优化,一方面是要加强每个变体对于攻击的防御能力,一方面是使生成的变体尽可能的多样化。实际上,如果仅仅考虑最大化变体的防御能力,一种极端的方法就是只选择一种抵抗力最强的变体;如果仅仅考虑最大化变体多样性,一种极端的做法就是使得每种变体生成的策略各不相同。如何选择变体以最大化软件多样性和变体抵抗攻击能力之间的权衡,来生成最优变体组合。
作为本发明实施例中拟态架构下多样化变体生成方法,进一步的,依据攻击现状和拟态环境来设定模型输入输出各参数变量。进一步地,利用多样性指数信息理论来设定变体多样性的度量指标。进一步地,对攻击向量下各攻击手段对各编译方式产生变体的攻击成功概率进行求和来设定变体抵抗性属性的度量指标。
如图2所示,参数1:N表示用户所需的变体数量。拟态环境中,用户需要根据成本和存储容量限制指定生成的变体数量,可以在COTS(Commercial Off-The-Shelf)中生成使用的变体。参数2:一组攻击向量表示为A=(A1A2,…An)。攻击者对可利用的攻击向量使用概率不同,使用h1,h2,…hn来表示攻击者选择可利用攻击向量的概率,如图3所示,其中
Figure BDA0002871198010000031
hi越高可能表明该攻击是现有工具或开发技术可以轻松利用的,反之,是较为困难被利用的。参数3:假设有m个潜在的可执行文件x1,x2,…,xm,这些可执行文件可以是从不同的编译组合生成的潜在的执行文件,每种可执行文件表示一种变体生成方式,一个简单的编译组合图4所示。如果用户指定所需的变体总数为N,则有
Figure BDA0002871198010000041
通常,在进行攻击之前,攻击者会进行大量的测试以收集受攻击者的信息,并根据收集的信息做一些合理的假设。在实例化的攻击中,攻击并不总是成功的,而是会以一定概率成功,使用av来表示不同攻击在变体上成功的可能性。把攻击aj在第i种编译方式的变体上攻击成功的可能性记为av{ji},其中0≤av{ji}≤1。实际中,这种概率可以从统计学中推断出。
问题输出,m个潜在的可执行文件x1,x2,…,xm中生成变体的数量,如图1中的输出所示。符号表示,具体实现算法中使用到的其他参数可包括:攻击数量:AttackNum,所需变体数量:NeededVariantsNum,变体数量:VariantsNum,攻击成功概率:likelihood,程序多样性程度:diversity,攻击向量组:AttackPF,攻击成功概率矩阵:SucceedMat
问题指标。在生成变体时,本专利主要考虑两个指标,分别是软件多样性和攻击成功可能性,并且考虑影响因素对这两者产生的影响,并在其间进行权衡从而得出最佳变体生成的策略。变体多样性度量,软件多样性度量的方法取自Shannon-Wiener的信息理论,可以定义为:
Figure BDA0002871198010000042
将(1)取以e为底的对数,可以得到:
Figure BDA0002871198010000043
其中pi表示某个类别在整个种群的占比。
变体抵抗性度量,程序多样化生成变体是为了提高成功攻击的难度,实现可靠防御。所以期望最小化攻击成功的可能性:
Figure BDA0002871198010000044
如果攻击在一个变体上成功,那么攻击者一定会在使用相同编译方法的变体上成功,因此,仅仅考虑最小化攻击成功概率并不能保证一组变体的安全性。在分析攻击成功概率的同时,也更要关注变体多样性的问题,把两个目标作为一个整体来考虑。
作为本发明实施例中拟态架构下多样化变体生成方法,进一步地,利用基于分解的多目标进化算法对模型优化问题进行求解,将变体生成转化为多目标优化对象,并结合遗传算法,通过设置突变、交叉和选择三个遗传算子来获取最大抵抗攻击能力的变体组合。进一步地,对变体多样性属性和抵抗性属性度量的多目标优化问题进行加权求和,并利用切比雪夫法将问题分解转化,利用基于分解的多目标进化算法同时优化求解分解转化后问题的目标函数。
基于分解的多目标进化算法MOEA/D,将一个多目标优化问题转化成一组单目标的优化问题或多个多目标优化问题来解决。具体是根据子问题的领域关系,以协作方式同时优化所有子问题,找到整个Pareto面的逼近。应用MOEA/D,将分解的方法引入多目标进化计算中,这会使整个问题的适应度分配和多样性控制难度大大降低。
对于多目标优化问题:
maxF(x)=(f1(x),…,fm(x))T (4)
subject to x∈Ω
式(4)中x表示需要优化的变量。
首先可以利用加权求和法将原问题化解:
假设λ=(λ1,…λm)T是一个权重向量,对于
Figure BDA0002871198010000045
有λi≥0并且
Figure BDA0002871198010000046
可以对标量优化问题如下:
Figure BDA0002871198010000047
subject to x∈Ω
式(5)表示单一的优化目标gws(x|λ)等价于子问题fi(x)的加权求和,x和λ分别表示需要优化的变量和权重向量。
再利用切比雪夫法将问题化解为下:
Figure BDA0002871198010000057
subject to x∈Ω
式(6)表示单一的优化目标gte(x|λ,z*)等价于m个优化子问题,其中第i个子问题可以写为
Figure BDA0002871198010000051
其中λi
Figure BDA0002871198010000052
分别为第i个子问题的权重和参考点,并且
Figure BDA0002871198010000053
对于
Figure BDA0002871198010000054
都有
Figure BDA0002871198010000055
对于每一个Pareto最优解x*,总存在一个权重向量λ使得上式的解是一个Pareto最优解,该解对应着原最优化问题的Pareto最优解,因此如果想要获得不同的Pareto最优解可以修改权重向量。
因此,在使用MOEA/D算法时,使用式(6)将原问题分解为N个标量优化子问题。
在MOEA/D中,权重向量的邻居取其中的几个与之最接近的权重向量。每一代种群都是由各个子问题的当前最优解所构成的集合。在MOEA/D中,只有相邻的子问题可以被用来优化彼此。
对于第t代种群,使用切比雪夫的MOEA/D包含以下初始条件:
1)大小为N的种群,x1,…,xN∈Ω,其中xi是第i个子问题的当前最优解。
2)FV1,…,FVN,其中对于
Figure BDA0002871198010000056
FVi=F(xi)。
3)z=(z1,…,zm)T,zi是目前搜索到目标函数fi的最优值。
外部种群EP,用来存储目前算法搜索到的最优解。
本案实施例中MOEA/D详细的算法步骤可设计如下:
算法输入:
MOP;
N:子问题的数量;
N个均匀分布的权重向量;
T:每个权向量领域被权向量的个数;
一个停止条件
算法输出:EP
步骤1初始化:
1)设置EP为空集;
2)计算任意两个权向量之间的欧式距离,然后计算每个权向量最接近的T个权向量。对于i=1,2,…,N,设置B(i)=(i1,…,iT)。
3)随机或者通过问题特定的方法产生一个初始种群。设置FVi=F(xi)。
4)随机用问题特定的方法z=(z1,z2,…,zm)T
步骤2更新:
1)复制:随即从B(i)中选择两个索引k,l,以xk和xl为父代使用遗传算法生成新个体y。
2)改进:使用一个启发式算法改进y来生成y’。
3)更新参考点z:对于所有j=1,2,…,m,如果zj≤ff(y′),那么设置zj=ff(y′)。
4)更新领域解:对于j∈B(i),如果gte(y′|λj,z)≤gte(xjj,z),那么设置xj=y′和FVi=F(y′)。
5)更新EP:从EP中移除被F(y′)支配的所有向量;如果EP中没有向量支配F(y′),就将F(y′)加入到EP中。
步骤3停止准则:
如果停止准则满足,停止并输出EP,否则,转向步骤2。
该算法流程可以用图5表示;同时,本案算法基于遗传算法的相关概念和定义,在MOEA/D外设置3个遗传算子,分别是突变、交叉和选择。突变是改变一个变体中某个或几个位置产生一个新变体。交叉是交换两个变体中的一部分,并产生两个新后代。为了确保经过突变和交叉算子之后生成的后代有效,即生成的后代中所有变体数量的总和依然为N,因此,本案实施例中方案突变和交叉算法实现可描述如下:
(1)突变
传统的个体突变算法是在个体中随机选择某些位置进行突变,然而,这种方法并不能够确保生成的个体是有效的,从而无法进一步进行适应度的计算等操作。因此,本算法采取随机选择突变点的策略,对于某个突变点,首先检查该点的值是否超过优化子问题的总数N,如果不超过,则随机选取0和原来的值之间的一个数值作为新的设置值,并且再次选择下个突变点;如果超过N,则减少该突变点的值。
(2)交叉
对于两个变体ind1,ind2的交叉过程,各随机选择两个交叉点cxpoint1,cxpoint2。当cxpoint2>=cxpoint1时,将cxpoint2的值加一,从而避免可以交叉中cxpoint1与cxpoint2相等的情况。最后将ind1和ind2中cxpoint1到cxpoint2之间的值进行交换。
(3)适应度计算
对于每个变体,首先计算每个变体在面对不同攻击向量时的攻击成功概率,得到攻击成功向量,并对向量中的每项进行加和,在本案算法中,具体的做法是在每次循环中固定AttackNum、NeededVariantsNum和VariantsNum的值,计算攻击成功概率和变体多样性的值,最后综合考虑两项指标的值从而得到最终的变体生成策略。
进一步地,基于上述的方法,本发明实施例还提供一种拟态架构下多样化变体生成系统,用于提升拟态环境下单个变体抗攻击能力,包含:模型构建模块、参数设置模块和优化求解模块,其中,
模型构建模块,用于构建变体生成模型,利用该变体生成模型描述不同变体生成策略在不同攻击向量下对拟态环境因素影响,拟态环境因素至少包含设备性能、攻击成功概率及变体多样性;
参数设置模块,用于设定模型输入输出参数,其中,模型输入参数包含变体数量、攻击向量和用于生成变体的不同编译组合生成的潜在可执行文件,模型输出参数为潜在可执行文件中生成变体的数量;设置变体多样性属性,结合攻击成功概率矩阵设置变体抵抗性属性;并利用变体多样性属性和抵抗性属性设定模型优化的目标函数;
优化求解模块,用于利用最大化变体多样性和变体抵抗攻击能力之间的权衡对模型优化问题进行求解,通过最优解获取变体最终生成策略。
为验证本案实施例方案有效性,下面结合具体实验数据做进一步解释说明:
图6(a)、(b)可以表示突变和交叉的过程,该实例中的相关参数设置为:AttackNum=5,NeededVariantsNum=8,VariantsNum=5
图6(a)体现了突变过程,对于某个变体,首先检查攻击成功总和是否大于N(这里N=8),由于4+2+4+1+1=12>8,随机选择一个突变点后,减小值,再次检查总和,重复上述操作,直到综合小于或等于N,若小于则直接补充差值,若等于则直接结束。从图6(b)可以看到两个变体个体分别对“5,6,0”和“6,7,2”部分进行了交叉。其中交叉的部分是随机选取的,即交叉开始的位置CxPoint1和交叉结束的位置CxPoint2均为随机选取,两变体的区间交叉互换后形成两个新变体。
在实验结果中,通过改变相关参数的值,得到不同情况下软件多样化程度和攻击成功概率的值。在本次实例中相关的参数范围为:AttackNum:10~20,NeededVariantsNum:20~40。VariantsNum:10~15,DEAP粒子群优化的迭代次数:50。
根据设置的AttackNum、Variants和NeededVariantsNum的范围,随机生成AttackPF和SucceedMat。总共有10x5x20=1000个数据集。将初始的数据集带入MOEA/D中,突变、交叉、选择过程后,计算不同AttackNum、Variants、NeededVariantsNum条件下的diversity和likelihood。
当AttackNum=11,VariantsNum=10,NeededVariantsNum=20时生成的攻击成功概率likelihood和程序多样化程度diversity取值可见下表所示:
AttackNum VariantsNum NeededVariantsNum likelihood diversity
11 10 20 19.11269975 8.43089188
11 10 20 19.66974853 9.113000481
11 10 20 13.71491273 5.83615438
11 10 20 33.18576708 7.49967331
... ... ... ... ...
11 10 20 22.12089323 9.632232593
对该组数据进行绘图,剔除异常点,如图7所示。下面几种参数对实验结果的影响情况:
一、AttackNum的影响:
图8显示了在不同VariantsNum下,随着AttackNum的增加,likelihood和diversity指标的变化情况。从图中可以看出,diversity与VariantsNum有关,在相同的VariantsNum下,AttackNum的增加并没有引起diversity的变化,但是攻击成功的概率likelihood随着AttackNum的增加呈现了增长的趋势。
二、NeededVariantsNum的影响
图9显示了在不同VariantsNum下,随着NeededVariantsNum的增长,likelihood和diversity指标的变化情况。从图中可以看出likelihood随着NeededVariantsNum的增加基本上保持了单调递增的关系,但是Diversity和NeededVariantsNum并没有一个显著的线性相关性。
三、VariantsNum的影响
图10显示了在不同的AttackNum下,两个指标随着VariantsNum取值的不同的变化情况,可以验证随着VariantsNum数量的增大,攻击成功概率likelihood呈减小趋势,并且diversity与AttackNum是无关的。
通过以上实验数据进一步表面,本案实施例中生成的多样化变体能够较好地保障系统防御性能,有效提升系统鲁棒性和稳定可靠性。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
基于上述的方法或系统,本发明实施例还提供一种网络设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的系统或执行上述的方法。
基于上述的系统,本发明实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现上述的系统。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述系统实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述系统实施例中相应内容。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述系统实施例中的对应过程,在此不再赘述。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、系统和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述系统的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种拟态架构下多样化变体生成方法,用于提升拟态环境下单个变体抗攻击能力,其特征在于,包含如下内容:
构建变体生成模型,利用该变体生成模型描述不同变体生成策略在不同攻击向量下对拟态环境因素影响,拟态环境因素至少包含设备性能、攻击成功概率及变体多样性;
设定模型输入输出参数,其中,模型输入参数包含变体数量、攻击向量和用于生成变体的不同编译组合生成的潜在可执行文件,模型输出参数为潜在可执行文件中生成变体的数量;设置变体多样性属性,结合攻击成功概率矩阵设置变体抵抗性属性;并利用变体多样性属性和抵抗性属性设定模型优化的目标函数;
利用最大化变体多样性和变体抵抗攻击能力之间的权衡对模型优化问题进行求解,通过最优解获取变体最终生成策略。
2.根据权利要求1所述的拟态架构下多样化变体生成方法,其特征在于,依据攻击现状和拟态环境来设定模型输入输出各参数变量。
3.根据权利要求1或2所述的拟态架构下多样化变体生成方法,其特征在于,利用多样性指数信息理论来设定变体多样性的度量指标。
4.根据权利要求1或2所述的拟态架构下多样化变体生成方法,其特征在于,对攻击向量下各攻击手段对各编译方式产生变体的攻击成功概率进行求和来设定变体抵抗性属性的度量指标。
5.根据权利要求1所述的拟态架构下多样化变体生成方法,其特征在于,利用基于分解的多目标进化算法对模型优化问题进行求解,将变体生成转化为多目标优化对象,并结合遗传算法,通过设置突变、交叉和选择三个遗传算子来获取最大抵抗攻击能力的变体组合。
6.根据权利要求1或5所述的拟态架构下多样化变体生成方法,其特征在于,对变体多样性属性和抵抗性属性度量的多目标优化问题进行加权求和,并利用切比雪夫法将问题分解转化,利用基于分解的多目标进化算法同时优化求解分解转化后问题的目标函数。
7.根据权利要求6所述的拟态架构下多样化变体生成方法,其特征在于,利用分解的多目标进化算法将多目标优化问题转化成一组单目标的优化问题或多个多目标优化问题来解决。
8.一种拟态架构下多样化变体生成系统,用于提升拟态环境下单个变体抗攻击能力,其特征在于,包含:模型构建模块、参数设置模块和优化求解模块,其中,
模型构建模块,用于构建变体生成模型,利用该变体生成模型描述不同变体生成策略在不同攻击向量下对拟态环境因素影响,拟态环境因素至少包含设备性能、攻击成功概率及变体多样性;
参数设置模块,用于设定模型输入输出参数,其中,模型输入参数包含变体数量、攻击向量和用于生成变体的不同编译组合生成的可执行文件,模型输出参数为潜在可执行文件中生成变体的数量;设置变体多样性属性,结合攻击成功概率矩阵设置变体抵抗性属性;并利用变体多样性属性和抵抗性属性设定模型优化的目标函数;
优化求解模块,用于利用最大化变体多样性和变体抵抗攻击能力之间的权衡对模型优化问题进行求解,通过最优解获取变体最终生成策略。
9.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时执行权利要求1~7任一项所述的方法。
10.一种计算机设备,包含处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以执行权利要求1~7任一项所述的方法。
CN202011610302.2A 2020-12-30 2020-12-30 拟态架构下多样化变体生成方法及系统 Active CN112632530B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011610302.2A CN112632530B (zh) 2020-12-30 2020-12-30 拟态架构下多样化变体生成方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011610302.2A CN112632530B (zh) 2020-12-30 2020-12-30 拟态架构下多样化变体生成方法及系统

Publications (2)

Publication Number Publication Date
CN112632530A true CN112632530A (zh) 2021-04-09
CN112632530B CN112632530B (zh) 2022-11-08

Family

ID=75286794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011610302.2A Active CN112632530B (zh) 2020-12-30 2020-12-30 拟态架构下多样化变体生成方法及系统

Country Status (1)

Country Link
CN (1) CN112632530B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113783853A (zh) * 2021-08-30 2021-12-10 杭州电子科技大学 针对黑盒情况的动态异构冗余系统安全性分析方法及装置
CN114510712A (zh) * 2022-04-20 2022-05-17 中科星启(北京)科技有限公司 拟态数量调整方法、装置、宿主机及存储介质
CN115132369A (zh) * 2022-06-09 2022-09-30 中国传媒大学 基于社交媒体拟态环境建模的信息传播分析方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110034342A1 (en) * 2008-02-12 2011-02-10 Codexis, Inc. Method of generating an optimized, diverse population of variants
CN109218440A (zh) * 2018-10-12 2019-01-15 上海拟态数据技术有限公司 一种场景化的拟态web服务器异构执行体动态调度方法
CN110519220A (zh) * 2019-07-10 2019-11-29 中国人民解放军战略支援部队信息工程大学 基于漏洞一致率的网络空间拟态防御安全性建模量化方法
CN110830462A (zh) * 2019-10-30 2020-02-21 南京理工大学 一种面向拟态防御架构的安全性分析方法
CN111475805A (zh) * 2020-04-13 2020-07-31 中国人民解放军战略支援部队信息工程大学 一种拟态表决器的安全运行方法及系统
US20200394315A1 (en) * 2018-02-09 2020-12-17 Zte Corporation Security protection method and apparatus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110034342A1 (en) * 2008-02-12 2011-02-10 Codexis, Inc. Method of generating an optimized, diverse population of variants
US20200394315A1 (en) * 2018-02-09 2020-12-17 Zte Corporation Security protection method and apparatus
CN109218440A (zh) * 2018-10-12 2019-01-15 上海拟态数据技术有限公司 一种场景化的拟态web服务器异构执行体动态调度方法
CN110519220A (zh) * 2019-07-10 2019-11-29 中国人民解放军战略支援部队信息工程大学 基于漏洞一致率的网络空间拟态防御安全性建模量化方法
CN110830462A (zh) * 2019-10-30 2020-02-21 南京理工大学 一种面向拟态防御架构的安全性分析方法
CN111475805A (zh) * 2020-04-13 2020-07-31 中国人民解放军战略支援部队信息工程大学 一种拟态表决器的安全运行方法及系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
姚东等: "MVX-CFI:一种实用的软件安全主动防御架构", 《信息安全学报》 *
姚远等: "《多样化软件系统量化评估方法》", 《通信学报》 *
张宇嘉等: "代码混淆技术研究综述", 《信息工程大学学报》 *
张宇嘉等: "基于软件多样化的拟态安全防御策略", 《计算机科学》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113783853A (zh) * 2021-08-30 2021-12-10 杭州电子科技大学 针对黑盒情况的动态异构冗余系统安全性分析方法及装置
CN114510712A (zh) * 2022-04-20 2022-05-17 中科星启(北京)科技有限公司 拟态数量调整方法、装置、宿主机及存储介质
CN115132369A (zh) * 2022-06-09 2022-09-30 中国传媒大学 基于社交媒体拟态环境建模的信息传播分析方法及系统

Also Published As

Publication number Publication date
CN112632530B (zh) 2022-11-08

Similar Documents

Publication Publication Date Title
CN112632530B (zh) 拟态架构下多样化变体生成方法及系统
Liu et al. Deadline‐constrained coevolutionary genetic algorithm for scientific workflow scheduling in cloud computing
Ding et al. A bi-objective load balancing model in a distributed simulation system using NSGA-II and MOPSO approaches
Lin et al. A novel multi-objective particle swarm optimization with multiple search strategies
Omidvar et al. Designing benchmark problems for large-scale continuous optimization
Pan et al. An effective hybrid discrete differential evolution algorithm for the flow shop scheduling with intermediate buffers
De La Fuente et al. Discovery of meaningful associations in genomic data using partial correlation coefficients
Harman et al. A theoretical & empirical analysis of evolutionary testing and hill climbing for structural test data generation
Liu et al. Fuzzy programming with fuzzy decisions and fuzzy simulation-based genetic algorithm
Keerativuttitumrong et al. Multi-objective co-operative co-evolutionary genetic algorithm
Lee et al. Designing a parallel evolutionary algorithm for inferring gene networks on the cloud computing environment
Chakraborty et al. Differential evolution and its applications in image processing problems: a comprehensive review
Ramgouda et al. Constraints handling in combinatorial interaction testing using multi-objective crow search and fruitfly optimization
Jauernig et al. DARWIN: Survival of the fittest fuzzing mutators
Girgis et al. Automatic data flow test paths generation using the genetical swarm optimization technique
CN112839036A (zh) 基于拟态防御理论的软件运行环境生成方法及系统
Yi et al. Solving flexible job shop scheduling using an effective memetic algorithm
Bouhmala A multilevel memetic algorithm for large sat-encoded problems
Ma et al. On the Convergence of Biogeography‐Based Optimization for Binary Problems
Li et al. Strategies for practical hybrid attack graph generation and analysis
Zuo et al. Adaptive multimeme algorithm for flexible job shop scheduling problem
Santander-Jiménez et al. Asynchronous non-generational model to parallelize metaheuristics: a bioinformatics case study
Estrada et al. A distributed evolutionary method to design scheduling policies for volunteer computing
Lifflander et al. Optimizing distributed load balancing for workloads with time-varying imbalance
Terra-Neves et al. Enhancing constraint-based multi-objective combinatorial optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant