CN112839036A - 基于拟态防御理论的软件运行环境生成方法及系统 - Google Patents

基于拟态防御理论的软件运行环境生成方法及系统 Download PDF

Info

Publication number
CN112839036A
CN112839036A CN202011610282.9A CN202011610282A CN112839036A CN 112839036 A CN112839036 A CN 112839036A CN 202011610282 A CN202011610282 A CN 202011610282A CN 112839036 A CN112839036 A CN 112839036A
Authority
CN
China
Prior art keywords
variant
attack
user
mimicry defense
security
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
CN202011610282.9A
Other languages
English (en)
Other versions
CN112839036B (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 CN202011610282.9A priority Critical patent/CN112839036B/zh
Publication of CN112839036A publication Critical patent/CN112839036A/zh
Application granted granted Critical
Publication of CN112839036B publication Critical patent/CN112839036B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved

Abstract

本发明属于计算机网络安全技术领域,涉及一种基于拟态防御理论的软件运行环境生成方法及系统,在拟态安全架构下,根据用户的安全需求,结合多变体执行环境,提供了一种安全架构,在满足用户需求的同时保证系统成本的最小化,从而制定出一种安全且高效的策略。模型包含:用户感知模块:获取用户安全需求参数;认知决策模块:基于用户安全需求参数设置变体数据决策值;多样化编译模块:依据系统攻击情况和变体数据决策值,结合变体的异构性和安全性度量指标生成多变体执行环境来上线服务。经过验证,本发明能提升拟态防御生成变体及攻击防御的性能,降低拟态防御系统运行成本,具有较强的实用性。

Description

基于拟态防御理论的软件运行环境生成方法及系统
技术领域
本发明属于计算机网络安全技术领域,特别涉及一种基于拟态防御理论的软件运行环境生成方法及系统。
背景技术
在现阶段的网络安全环境中,软件攻击方和防御方往往处在不平等的地位。想要打破这种攻守双方不平衡的现状,根本的保护策略是创建难以预测的防御手段,从而增加攻击者的成本和难度。在这种思想下,冗余手段被看作一种常用的安全防御技术,通过异构或者多样化的设计来起到防御或者容错的目的,例如:多样化的冗余技术+可验证的裁决算法:用于应对一般的攻击措施;移动目标防御(Moving target defense,MTD):使用防御者可控的方式动态地改变系统内部中具有静态性、确定性和相似性的部分或者环节;数据一致性检查:确保数据完整性和相关操作的安全性。拟态防御技术:该技术手段通过实现动态异构冗余 (Dynamic Heterogeneous Redundancy,DHR)的系统架构,使用功能等价的多元化或多样化软硬构件搭建运行环境,通过策略调度、重构重组和虚拟化等多维动态的不确定性机制,使得原本针对系统的攻击难以实施。在各执行体功能等价条件下,以提供目标环境的动态性、非确定性、异构性、非持续性为目的,动态地构建网络、平台、环境、软件、数据等多样化的拟态环境,以防御者可控的方式在多样化环境间实施主动跳变或快速迁移,对攻击者则表现为难以观察和预测的目标环境变化,从而大幅增加攻击难度和成本,大幅度降低了安全风险。软件多样化防御手段以及软件多样化编译器:众所周知,在大多数情况下,更长的密码意味着系统具有更高的安全性,如果攻击者发起暴力攻击,则搜索空间将随着密码的长度呈指数增长,攻击者需要花费更多的精力来破解密码。多样化编译手段的提出正是利用了该思想实现了对软件的保护。例如,地址空间布局随机化(Address spacelayout randomization, ASLR)是当今操作系统中广泛使用的防御机制,该技术确保软件在每次运行时所在的地址空间都不相同,从而使攻击者难以对系统造成破坏行为。stackcanaries(heap canaries)技术通过修改函数栈(或者堆)中相关数据或者布局,在缓冲区插入canary word,从而可以检测出是否发生了缓冲区溢出攻击。指令集随机化(Instruction Set Randomization,ISR)和指令地址随机化(Instruction LocationRandomization,ILR)都是通过随机化指令内容或者指令所在的地址空间来达到“迷惑”攻击者的目的。
但是,软件多样化的方法对于面向返回的编程(Return-oriented Programming,ROP)等攻击手段来说往往安全性不够。现有的安全防御手段主要有以下两点局限性:用户的安全要求以及自身的局限性;现有防御手段的不完备性。
发明内容
为此,本发明提供一种基于拟态防御理论的软件运行环境生成方法及系统,在现有的多变体环境架构上进行改进,且考虑到不同的攻击情况、变体异构性度量、变体安全性度量等因素,保证变体编译策略的多样性和安全性,避免自身不必要的成本消耗,根据用户的需求提供最优的安全性定制方法。
按照本发明所提供的设计方案,一种基于拟态防御理论的软件运行环境生成方法,包含如下内容:
获取用户安全需求参数;
基于用户安全需求参数设置变体数据决策值;
依据当前系统攻击情况和变体数据决策值,并结合变体异构性和安全性度量指标生成多变体执行环境来上线服务。
作为本发明基于拟态防御理论的软件运行环境生成方法,进一步地,获取用户安全需求参数包含:用户安全防护攻击类型、安全防护效果、安全防护时长及安全防护预算。
作为本发明基于拟态防御理论的软件运行环境生成方法,进一步地,设置变体数据决策值时,将变体数量作为决策变量,从软件供应商、多变体执行环境、存储及编译器的多角度因素对多变体执行环境资源利用率和效率的影响来最小化变体数量。
作为本发明基于拟态防御理论的软件运行环境生成方法,进一步地,采用多种多样化编译相结合方式生成多变体执行环境。
作为本发明基于拟态防御理论的软件运行环境生成方法,进一步地,利用神经网络从二进制层面度量程序的相似性来度量生成的多样性变体异构性;通过量化评估多样化转换对系统安全提升情况来度量生成的多样性变体安全。
作为本发明基于拟态防御理论的软件运行环境生成方法,进一步地,通过评估多样化转换能力或利用机器学习手段量化不同多样化编译下抗攻击能力。
作为本发明基于拟态防御理论的软件运行环境生成方法,进一步地,机器学习手段量化抗攻击能力,包含:提取反混淆编译攻击中最相关特征,利用回归算法预测防御手段抵抗攻击难易程度,使用攻击者付出代价表示不同多样化编译下抗攻击能力。
进一步地,基于上述的方法,本发明还提供一种基于拟态防御理论的软件运行环境生成系统,包含:用户感知模块、认知决策模块和多样化编译模块,其中,
用户感知模块,用于获取用户安全需求参数;
认知决策模块,用于基于用户安全需求参数设置变体数据决策值;
多样化编译模块,用于依据当前系统攻击情况和变体数据决策值,并结合变体异构性和安全性度量指标生成多变体执行环境来上线服务。
本发明的有益效果:
本发明用户在使用系统架构时,只需要输入具体的安全请求以及相关的金额、成本等需求条件,在满足用户需求的条件下,能够提供给用户一种或者几种系统开销较小的软件安全运行定制部署方案。真正做到将安全性作为服务提供给用户。通过将用户的安全需求和攻击情况进行定量的分析,帮助用户完成针对自己软件的防护要求,并且提供给用户与系统的交互接口。通过系统帮助用户实现安全需求,从而避免了自身不必要的成本消耗。在现有的多变体环境架构上进行了改进,采用了多种编译方式来生成变体。在这其中,考虑到了不同的攻击情况、变体异构性度量、变体安全性度量等因素,保证变体编译策略的多样性和安全性。能够确保对用户的透明性,从配置的角度看,系统需要保证没有干扰到原有软件模型的功能;从用户的角度来说,除了运行时间的代价,用户并不会注意到多变体执行环境中有多个副本在运行。实际上,为了实现透明性的目的,已有的多变体执行环境已经采取了相应的策略,例如在GHUMVEE的架构设计中采用了主/从模型,其中一个变体是主变体,其余是从属的副变体,并且系统只允许主变体执行系统调用,这样用户在使用时并不会注意到多个变体的运行,从而保证了用户的透明性。且方案构建在多变体执行环境(MVEE)的基础上,作为一种结合冗余技术和多样化编译技术的安全高效的防御手段,可以从技术上确保本系统自身的安全性,具有较好的应用前景。
附图说明:
图1为实施例中软件运行环境生成流程示意;
图2为实施例中安全服务技术框架示意;
图3为实施例中不使用本案方案的攻击情况示意。
图4为实施例中使用本案方案的攻击情况示意。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚、明白,下面结合附图和技术方案对本发明作进一步详细的说明。
用户自身想要保护自身软件系统的安全性是一件十分困难的事情,主要原因是因为:现有的软件防御手段往往都是通过软件随机化等方法增加攻击实现的复杂性,以至于攻击者经济上耗费较大而没有能力进行攻击。大多数的代码随机化将多样化的负担完全都由户承担,在具体实现的时候往往需要设置构建适当的多样化环境,使用特殊的工具来对软件进行重新编译和链接。对于闭源软件来说,更是需要使用静态二进制工具来重写可执行的文件。所以仅仅让用户去完成这一系列繁琐的过程是不切实际的,往往会消耗大量的计算和人力资源。因此用户在面对该未知的攻击情况时往往显得束手无措。单一的软件多样化保护手段往往无法防御所有的攻击类型,因此本发明决定采用安全且全面的防御手段:多变体执行环境 (MVEE)。该技术采用不同的编译手段来生成变体,发生攻击时会触发变体的异常行为,从理论上讲可以发现并且检测出所有的攻击行为。但是,如前面所提到的,已有的多变体执行架构中变体的生成方法都较为简单,而且也没有经过实验验证可以抵御所有的攻击情况。为此,本发明实施例,提供一种基于拟态防御理论的软件运行环境生成方法,参见图1所示,包含如下内容:
S101、获取用户安全需求参数;
S102、基于用户安全需求参数设置变体数据决策值;
S103、依据当前系统攻击情况和变体数据决策值,并结合变体异构性和安全性度量指标生成多变体执行环境来上线服务。
在现有的多变体环境架构上进行改进,且考虑到了不同的攻击情况、变体异构性度量、变体安全性度量等因素,保证变体编译策略的多样性和安全性,并且避免了自身不必要的成本消耗,提高用户体验。
作为本发明实施例中基于拟态防御理论的软件运行环境生成方法,进一步地,获取用户安全需求参数包含:用户安全防护攻击类型、安全防护效果、安全防护时长及安全防护预算。进一步地,设置变体数据决策值时,将变体数量作为决策变量,从软件供应商、多变体执行环境、存储及编译器的多角度因素对多变体执行环境资源利用率和效率的影响来最小化变体数量。进一步地,采用多种混淆编译相结合方式生成多变体执行环境。进一步地,利用神经网络从二进制层面度量程序的相似性来度量生成的多样性变体异构性;通过量化评估混淆转换对系统安全提升情况来度量生成的多样性变体安全。进一步地,通过评估混淆转换能力或利用机器学习手段量化不同混淆编译下抗攻击能力。进一步地,机器学习手段量化抗攻击能力,包含:提取反混淆编译攻击中最相关特征,利用回归算法预测防御手段抵抗攻击难易程度,使用攻击者付出代价表示不同混淆编译下抗攻击能力。
作为本发明的具体实例,第一步:获取用户安全需求参数,包含:用户安全防护攻击类型、安全防护效果、安全防护时长及安全防护预算;第二步:设置变体数据决策值,从软件供应商、多变体执行环境、存储及编译器的多角度因素对多变体执行环境资源利用率和效率的影响来最小化变体数量;第三步:采用多种混淆编译相结合方式生成多变体执行环境。并且可以通过多种技术手段对生成的变体环境进行评价:利用神经网络从二进制层面度量程序的相似性来度量生成的多样性变体异构性、通过量化评估混淆转换对系统安全提升情况来度量生成的多样性变体安全、通过评估混淆转换能力或利用机器学习手段量化不同混淆编译下抗攻击能力、通过机器学习手段量化抗攻击能力,包含:提取反混淆编译攻击中最相关特征,利用回归算法预测防御手段抵抗攻击难易程度,使用攻击者付出代价表示不同混淆编译下抗攻击能力等。
参见图2所示,系统架构包含用户感知模块、认知决策模块和多样化编译模块,其中,用户感知模块,由于用户可以将自己的不同需求输入到系统中,因此该模块描述了用户需求的不同参数,主要包括:攻击类型、保护效果、保护时长和预算金额等。如图2,用户希望其软件对于ROP、符号攻击和缓冲区溢出攻击具有90%准确率的安全保护效果,此外保护时长为30天,预算为10000美元。这些参数对用户来说非常直观。用户感知模块将该用户需求传递给认知决策模块,以进行下一步的分析和决策。认知决策模块,采用变体数量作为决策变量,并且由于在软件供应商端来实现多变体执行环境,因此需要考虑软件供应商的成本:从软件供应商的角度来说,随着提供给用户变体数目的增多,其中计算和分发的成本也会随之变大;从多变体执行环境角度来说,监视器每次链接、调用同步的步骤都会占用大量的时间;从存储的角度来说,更多的变体意味着占用磁盘上更多的存储空间;从编译器的角度来说,编译过程会消耗大量的CPU和内存。因此,从上面几种因素可以看出,变体的数目很大程度上影响了多变体执行环境的资源利用率和效率,所以认知决策模块的目的是在保证用户需求的条件前提下,通过多样化编译模块给出的变体信息,最小化变体的数量。多样化编译模块,与现有的多变体环境不同,本案例实施方案通过结合不同的混淆转换技术进行编译,采用单一的转换技术或几种策略的组合。当然混淆转换也可能产生额外的费用,因此在考虑成本时也需要考虑混淆手段产生的额外成本。
多变体执行环境:该架构中的变体通过多样化编译器来生成。如图2所示,多变体执行环境感知到相关漏洞的注入和攻击行为后,会将攻击情况反馈给多样化编译器。
多样化编译器:采用多种多样化编译的方式来负责实现变体的生成,这么做的原因是单一的变体编译方式容易被攻击情况攻破。例如,函数名称的加密无法抵抗缓冲区溢出攻击;通过代码解读、模式识别等方法已经成功破解了不透明谓词(OpaquePredicates)、编码算术 (Encode Arithmetic)、无用代码注入(Insert dead code)、控制流扁平化(Control flow flattening) 等软件混淆手段;通过代码解读与数据恢复攻击成功攻破了指令替换(Instruction substitution)、虚拟化混淆(Virtualizationobfuscation)等混淆算法;通过静态代码理解攻击检测恶意的重新包装的Android应用程序成功攻破了指令集重排(Instruction reordering)、增添或者移除系统调用(Addingand removing call)的软件混淆手段。所以,多样化编译器会综合考虑当前的攻击情况和认知决策模块给出的变体的数量,并且结合变体异构性度量和安全性度量的结果来生成符合系统安全要求的变体环境,并将生成变体的信息传递给认知决策模块。
变体异构性度量:众所周知,生态系统的多样性可以增强抵御攻击的能力。对于变体的异构性,在学术界和工业界已经有了相应的研究成果:利用Shannon-Wiener指数来测量软件系统多样性,该指数是评估生物多样性的典型方法,例如使用Diversity Metric来测量多变体系统的多样性,利用多样性和安全性之间的关系,通过仿真观察多样性和安全性之间总体上呈现正相关的趋势;又如,通过SAFE的框架,利用self-attentive的神经网络机制,可以从二进制层面上解决程序的相似问题,生成的二进制文件的多样性可以使整个系统更安全。
变体安全性度量:由于不同的混淆手段会对系统产生不同的安全性影响,因此也需要量化混淆转换对于软件安全性的提升情况。现在已有的研究工作提出了测评混淆编译手段安全性的手段:可以通过定义混淆后的代码相比源代码的复杂程度和抵抗混淆攻击手段的能力来评价,比较典型的是抵抗性指标;例如利用机器学习手段也可以用来量化符号攻击下的不同转换技术抗攻击的能力,通过提取对攻击结果最有影响的混淆后代码的特征,最后使用回归算法来预测出不同混淆技术抵抗相应攻击的难度。
为验证本案方案有效性,下面结合具体实验数据做进一步解释说明:
如图2所示,假设有一个用户的对系统的安全需求是:软件对于ROP、符号攻击和缓冲区溢出攻击具有90%准确率的安全保护效果,需要保护时长为30天,预算为10000美元。使用MvArmor作为本次案例的多变体执行环境,其中变体数量为3个。案例中使用Tigress实现混淆转换进而编译实现变体,可以提供如下5种混淆转换:
(1)插入不透明谓词:针对原始代码引入分支条件,该条件对于程序任何的输入值来说始终为真或为假。
(2)文字编码:通过动态生成代码的值来替换原整数/字符串常量。
(3)算术编码:使用较为复杂的表达式替换整数算式,并且保证与原始表达式的意思一致。
(4)控制流展平:用基本块的展平结构代替整个控制流结构,使控制流的逻辑过程难以理解。
(5)虚拟化:使用二进制字节来替换整个代码,该代码具有相同的功能语义。
基于此,针对多变体环境中的三个变体,可以有
Figure RE-GDA0002968722990000051
种变体生成方式。
关于变体异构性的度量,计算变体通过编译链接后的二进制代码相似度来测评,可使用self-attentive网络机制将一系列汇编指令最终转换为单个嵌入向量,再比较两个向量的相似程度来测量代码的相似程度。
对于变体的安全性度量,可首先对于足够数量的混淆程序,通过特征选择工具提取出程序特征,结合反混淆攻击的时间特征,利用特征选择算法选择出与反混淆攻击难度最有关联的函数特征,最后使用回归算法预测出混淆技术抵抗攻击的难度。
另外,通过实际案例验证本案实施例方案的有效性。在该实验过程中,使用的漏洞为 CTF2017 Babyheap,文件中存在一个“fastbin”溢出漏洞,该攻击可以对某些地址具有写权限,并且可以通过使用“malloc_hook”函数来使用shell,接着会导致ROP进一步实现并调用系统的shell。在不使用本发明框架的情况下执行该软件可以正常执行该软件,但会启动隐藏的shell程序,如图3所示。当使用本文的防御架构时,当攻击者尝试启动shellcode时,可以检测到异常的系统调用,如图4所示。在确保系统的透明性、可靠性和兼容性的前提下,根据用户的安全需求,结合多变体执行环境,在满足用户需求的同时保证系统成本的最小化,能够获取安全且高效的变体生成策略,从而提供满足用户需求的软件高可靠运行服务环境。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
基于上述的方法或系统,本发明实施例还提供一种网络设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述的系统或执行上述的方法。
基于上述的系统,本发明实施例还提供一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现上述的系统。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述系统实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述系统实施例中相应内容。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述系统实施例中的对应过程,在此不再赘述。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、系统和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/ 或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备 (可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述系统的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种基于拟态防御理论的软件运行环境生成方法,其特征在于,包含如下内容:
获取用户安全需求参数;
基于用户安全需求参数设置变体数据决策值;
依据当前系统攻击情况和变体数据决策值,并结合变体异构性和安全性度量指标生成多变体执行环境来为用户提供拟态防御架构下的安全定制服务。
2.根据权利要求1所述的基于拟态防御理论的软件运行环境生成方法,其特征在于,获取用户安全需求参数包含:用户安全防护攻击类型、安全防护效果、安全防护时长及安全防护预算。
3.根据权利要求1或2所述的基于拟态防御理论的软件运行环境生成方法,其特征在于,设置变体数据决策值时,将变体数量作为决策变量,从软件供应商、多变体执行环境、存储及编译器的多角度因素对多变体执行环境资源利用率和效率的影响来优化变体数量及变体多样性和安全性。
4.根据权利要求1所述的基于拟态防御理论的软件运行环境生成方法,其特征在于,采用多种多样化编译相结合方式生成多变体执行环境。
5.根据权利要求1或4所述的基于拟态防御理论的软件运行环境生成方法,其特征在于,利用神经网络从二进制层面度量程序的相似性来度量生成的多样性变体异构性;通过量化评估多样化转换对系统安全提升情况来度量生成的多样性变体安全性。
6.根据权利要求4所述的基于拟态防御理论的软件运行环境生成方法,其特征在于,通过评估多样化转换能力或利用机器学习手段量化不同多样化编译下抗攻击能力。
7.根据权利要求6所述的基于拟态防御理论的软件运行环境生成方法,其特征在于,机器学习手段量化抗攻击能力,包含:提取反混淆编译攻击中最相关特征,利用回归算法预测防御手段抵抗攻击难易程度,使用攻击者付出代价表示不同多样化编译下抗攻击能力。
8.一种基于拟态防御理论的软件运行环境生成系统,其特征在于,包含:用户感知模块、认知决策模块和多样化编译模块,其中,
用户感知模块,用于获取用户安全需求参数;
认知决策模块,用于基于用户安全需求参数设置变体数据决策值;
多样化编译模块,用于依据当前系统攻击情况和变体数据决策值,并结合变体异构性和安全性度量指标生成多变体执行环境来上线服务。
9.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时执行权利要求1~7任一项所述的方法。
10.一种计算机设备,包含处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以执行权利要求1~7任一项所述的方法。
CN202011610282.9A 2020-12-30 2020-12-30 基于拟态防御理论的软件运行环境生成方法及系统 Active CN112839036B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011610282.9A CN112839036B (zh) 2020-12-30 2020-12-30 基于拟态防御理论的软件运行环境生成方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011610282.9A CN112839036B (zh) 2020-12-30 2020-12-30 基于拟态防御理论的软件运行环境生成方法及系统

Publications (2)

Publication Number Publication Date
CN112839036A true CN112839036A (zh) 2021-05-25
CN112839036B CN112839036B (zh) 2022-09-30

Family

ID=75925754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011610282.9A Active CN112839036B (zh) 2020-12-30 2020-12-30 基于拟态防御理论的软件运行环境生成方法及系统

Country Status (1)

Country Link
CN (1) CN112839036B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113741875A (zh) * 2021-09-14 2021-12-03 郑州昂视信息科技有限公司 一种拟态化程序执行装置、方法、电子设备及存储介质
CN114510712A (zh) * 2022-04-20 2022-05-17 中科星启(北京)科技有限公司 拟态数量调整方法、装置、宿主机及存储介质
CN114791801A (zh) * 2022-06-27 2022-07-26 军事科学院系统工程研究院网络信息研究所 一种基于多变体的软件安全防御方法和系统
CN115309402A (zh) * 2022-07-13 2022-11-08 国网江苏省电力有限公司信息通信分公司 一种可量化差异的异构执行程序集合构成方法及装置
CN113741875B (zh) * 2021-09-14 2024-05-03 郑州昂视信息科技有限公司 一种拟态化程序执行装置、方法、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128774A (en) * 1997-10-28 2000-10-03 Necula; George C. Safe to execute verification of software
WO2015134008A1 (en) * 2014-03-05 2015-09-11 Foreground Security Automated internet threat detection and mitigation system and associated methods
CN107092518A (zh) * 2017-04-17 2017-08-25 上海红神信息技术有限公司 一种保护拟态防御系统软件层安全的编译方法
CN107360135A (zh) * 2017-06-09 2017-11-17 中国人民解放军信息工程大学 拟态化网络操作系统、构建装置及方法
WO2019154202A1 (zh) * 2018-02-09 2019-08-15 中兴通讯股份有限公司 一种安全防护方法及装置
CN111475805A (zh) * 2020-04-13 2020-07-31 中国人民解放军战略支援部队信息工程大学 一种拟态表决器的安全运行方法及系统
CN111884996A (zh) * 2020-06-12 2020-11-03 中国人民解放军战略支援部队信息工程大学 一种基于可信度量的拟态交换机裁决系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128774A (en) * 1997-10-28 2000-10-03 Necula; George C. Safe to execute verification of software
WO2015134008A1 (en) * 2014-03-05 2015-09-11 Foreground Security Automated internet threat detection and mitigation system and associated methods
CN107092518A (zh) * 2017-04-17 2017-08-25 上海红神信息技术有限公司 一种保护拟态防御系统软件层安全的编译方法
CN107360135A (zh) * 2017-06-09 2017-11-17 中国人民解放军信息工程大学 拟态化网络操作系统、构建装置及方法
WO2019154202A1 (zh) * 2018-02-09 2019-08-15 中兴通讯股份有限公司 一种安全防护方法及装置
CN111475805A (zh) * 2020-04-13 2020-07-31 中国人民解放军战略支援部队信息工程大学 一种拟态表决器的安全运行方法及系统
CN111884996A (zh) * 2020-06-12 2020-11-03 中国人民解放军战略支援部队信息工程大学 一种基于可信度量的拟态交换机裁决系统及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
GAOFEI ZHANG等: "Multi-Variant eXecution: State-of-the-Art and Research Challenges", 《2020 12TH INTERNATIONAL CONFERENCE ON COMMUNICATION SOFTWARE AND NETWORKS (ICCSN)》 *
庞建民,张宇嘉: "拟态防御技术结合软件多样化在软件安全产业中的应用", 《中国工程科学》 *
斯雪明等: "拟态防御基础理论研究综述", 《中国工程科学》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113741875A (zh) * 2021-09-14 2021-12-03 郑州昂视信息科技有限公司 一种拟态化程序执行装置、方法、电子设备及存储介质
CN113741875B (zh) * 2021-09-14 2024-05-03 郑州昂视信息科技有限公司 一种拟态化程序执行装置、方法、电子设备及存储介质
CN114510712A (zh) * 2022-04-20 2022-05-17 中科星启(北京)科技有限公司 拟态数量调整方法、装置、宿主机及存储介质
CN114791801A (zh) * 2022-06-27 2022-07-26 军事科学院系统工程研究院网络信息研究所 一种基于多变体的软件安全防御方法和系统
CN114791801B (zh) * 2022-06-27 2022-08-30 军事科学院系统工程研究院网络信息研究所 一种基于多变体的软件安全防御方法和系统
CN115309402A (zh) * 2022-07-13 2022-11-08 国网江苏省电力有限公司信息通信分公司 一种可量化差异的异构执行程序集合构成方法及装置
CN115309402B (zh) * 2022-07-13 2023-10-24 国网江苏省电力有限公司信息通信分公司 一种可量化差异的异构执行程序集合构成方法及装置

Also Published As

Publication number Publication date
CN112839036B (zh) 2022-09-30

Similar Documents

Publication Publication Date Title
CN112839036B (zh) 基于拟态防御理论的软件运行环境生成方法及系统
Ding et al. Asm2vec: Boosting static representation robustness for binary clone search against code obfuscation and compiler optimization
Behera et al. Different obfuscation techniques for code protection
JP5643894B2 (ja) サイドチャネル攻撃および反復起動攻撃に耐える動的可変タイミング演算パスのシステムおよび方法
US8176473B2 (en) Transformations for software obfuscation and individualization
US20100106920A1 (en) Data location obfuscation
Coppens et al. Feedback-driven binary code diversification
US9721120B2 (en) Preventing unauthorized calls to a protected function
Tian et al. DKISB: Dynamic key instruction sequence birthmark for software plagiarism detection
US8775826B2 (en) Counteracting memory tracing on computing systems by code obfuscation
Guan et al. Semantics-based repackaging detection for mobile apps
Martinelli et al. Model checking and machine learning techniques for HummingBad mobile malware detection and mitigation
Muller et al. Towards a practical secure concurrent language
CN108809622B (zh) 一种抗功耗侧信道攻击对策验证方法
Schrittwieser et al. Covert computation: Hiding code in code for obfuscation purposes
Tsoupidi et al. Thwarting code-reuse and side-channel attacks in embedded systems
Ahmed et al. Active Learning Based Adversary Evasion Attacks Defense for Malwares in the Internet of Things
Kim et al. Polymorphic attacks against sequence-based software birthmarks
CN110717181B (zh) 基于新型程序依赖图的非控制数据攻击检测方法及装置
US11307962B2 (en) Method for semantic preserving transform mutation discovery and vetting
Luo et al. Code confusion in white box crowdsourced software testing
Oishi et al. Self destructive tamper response for software protection
Joshi et al. Trading Off a Vulnerability: Does Software Obfuscation Increase the Risk of ROP Attacks.
Jia et al. ERMDS: A obfuscation dataset for evaluating robustness of learning-based malware detection system
Fellin et al. Experimental assessment of XOR-Masking data obfuscation based on K-Clique opaque constants

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