首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 171 毫秒
1.
代码混淆算法有效性评估   总被引:3,自引:1,他引:3  
代码混淆是一种能够有效增加攻击者逆向分析和攻击代价的软件保护技术.然而,混淆算法的有效性评价和验证是代码混淆研究中亟待解决的重要问题.目前,对代码混淆有效性的研究大都是基于软件复杂性度量的,然而代码混淆作为一种保护软件安全的技术,更需要从逆向攻击的角度进行评估.将面向逆向工程的思想引入到代码混淆算法评估中,通过理论证明和具体实验验证了其可行性,该评估方法能够为混淆算法提供有效证明,并对判别和选择代码混淆算法具有指导意义,同时也有助于寻求更有效的代码混淆方法.  相似文献   

2.
代码混淆是一种对软件代码的保护技术,通过提高代码逻辑的分析难度对软件进行加固。目前,针对代码混淆的研究主要集中在单一的新混淆方法的提出及其效果分析,针对多种混淆方法进行协同混淆的研究较少。针对此问题,文章提出一种基于强度导向的JavaScript代码协同混淆方法,首先对参与混淆的多种独立混淆方法进行强度评估;然后根据评估结果调整混淆方法的执行顺序,获得比单一的多方法叠加更好的混淆效果。实验结果表明,该方法能够以较低的代价获得更好的代码混淆效果。  相似文献   

3.
为解决代码混淆算法有效性评估模型存在评价指标不全面、单一学习器泛化能力低的问题,提出一种融合自适应增强训练机制和Stacking算法的代码混淆算法有效性评估模型SDF-Stacking。构建一个包括强度、弹性、开销、隐蔽性4大特征的代码混淆有效性评价指标集合;在模型的基分类器训练阶段引入自适应增强训练机制,提高基分类器的预测精度和多样性;使用最大互信息算法做数据融合,增大元分类器训练数据信息量。实验结果表明,该模型在多个评价指标上均优于其它对比模型,准确率可达98.6%。  相似文献   

4.
为了克服软件保护过程中代码混淆方法选择的偶然性和盲目性,针对代码混淆量化比较和评估困难的问题,提出一种基于多层次属性加权的代码混淆定量评估方法:从攻击者角度出发,采用静态和动态逆向分析手段对混淆前后程序进行分析,量化基于程序属性的评估指标。构建三级层次分析模型,运用专家评分法来比较程序属性之间的重要性,以确定属性权值。在程序属性指标量化值和权值的基础上,运用层次分析法对不同混淆方法进行评估。实验和分析表明,评估方法能够定量地对不同混淆算法的有效性进行比较。  相似文献   

5.
自修改代码混淆方法是一种隐藏程序重要信息的有效技术。为减少代码混淆造成的额外开销而又不影响代码混淆的质量,利用程序流敏感分析方法选择比较重要的指令进行混淆。为提高代码混淆的质量,有效地防止反汇编,提出一个二步比较混淆模型。该模型包括两个子混淆器,混淆器1采用程序流敏感分析方法获得混淆的指令并产生两个混淆代码文件和一个混淆代码映射文件。混淆器2通过比较两个混淆代码文件精确地定位混淆指令在二进制代码中的位置,然后利用混淆代码映射文件对二进制代码进行混淆,以进一步提高代码混淆的质量。通过实验分析,混淆后二进制文件的额外开销只占整个代码的3%左右,并且混淆后的反汇编代码明显异于原始的反汇编代码,甚至出现了一些无法识别的错误指令。  相似文献   

6.
构建基于RBF神经网络的电力客户信用评估模型。为了改善样本的质量和降低训练神经网络时对样本的处理成本,对原始样本进行主成分分析,利用提取的少数主成分作为新的综合指标再进行评估模型的构建。同时通过改进MatLab神经网络工具箱中的RBF神经网络设计函数,构建高分类能力的网络模型。实验证明该信用评估模型的有效性。  相似文献   

7.
针对装甲车辆柴油机摩托小时不能真实反映实际技术状况的问题,通过提取气缸压缩压力、加速时间、减速时间、供油提前角、振动能量和平均燃油流量等状态参数,运用主成分分析和BP神经网络相结合的方法构建了一种柴油机状态评估模型;该模型首先利用主成分分析方法将多个参数简化为两个综合参数,并根据综合参数的散点图对柴油机的状态进行初步划分,得到BP神经网络的训练数据;最后通过建立BP神经网络进行状态评估;评估结果表明,该模型准确度高,具有较好的应用和推广价值。  相似文献   

8.
多传感器数据融合的主成分方法研究   总被引:2,自引:0,他引:2       下载免费PDF全文
针对多个传感器对某一特性指标进行测量实验的数据融合问题,提出了一种基于主成分分析的融合方法。该方法把各传感器的测量数据作为一变量,定义总体的各主成分,利用测量值与主成分的复相关关系,给出了各传感器的综合支持程度和数据融合公式。应用实例验证了方法的有效性和精确性。  相似文献   

9.
为了对军用软件进行科学系统的过时淘汰评估,提出基于机器学习的软件过时淘汰评估模型。首先使用机器学习预处理与缩放技术处理相关的特征数据,然后基于主成分分析模型进行特征提取和降维,消除特征数据中的噪音值并选择重要的军用软件过时淘汰特征数据,使用由粒子群优化算法改进的支持向量机模型进行分类和评估建模,并使用混淆矩阵的精度评估模型,最后通过案例验证模型有效性、适用性和科学性。  相似文献   

10.
针对软件代码混淆算法中的内联方法存在混淆结果单一性问题,提出了一种多态内联代码混淆算法.基于有限状态自动机(FSM)建立了算法理论模型,对每个内联的方法体选择差异性的混淆实现,并通过理论分析说明了提出的算法在隐蔽、强度和执行开销方面的有效性,最后把提出的算法与Sandmark的内联算法进行了实验比较.实验结果表明,提出的算法在程序复杂度以及控制流结构的复杂度方面都得到了很大提高,验证了其对代码混淆强度的提升.  相似文献   

11.
为了提高软件的安全性,常使攻击者难以理解专利软件系统内部的工作机制,代码迷惑技术因其代价低廉而越来越受到人们的重视。代码迷惑技术的提出对于软件保护具有非常重要的意义,代码迷惑技术的使用可以对程序代码及核心算法进行保护。简要概述了代码迷惑技术基本内容,阐述了基本块和流图的相关知识,给出了可归约流图变换为不可归约流图的迷惑变换具体的算法及实验结果,并对算法的有效性进行了分析。  相似文献   

12.
花指令模糊变换是代码模糊变换策略中的一种有效方法。在分析现有花指令加密方法的基础上,给出一种随机花指令模糊变换加密方案,并利用形式化方法对其进行了描述。通过研究花指令模糊变换各种形式化的定义,推导出若干引理,从“JMP扩展”、“JMC变换”、“JMP后添加花指令”等3个方面形式化地证明了经上述随机花指令加密算法变换的程序具有与原始程序相同的逻辑性。  相似文献   

13.
代码迷惑(保护程序的一种手段)通过增加程序的分析理解难度来阻止攻击者对代码进行有用的窜改。从攻击视角指出,盲目采用代码迷惑并不能有效增强程序安全性,而根据攻击模型,从多个角度综合运用各种码迷惑方法将能有效提高程序安全。随后建立攻击模型,将攻击描述为一个不断提取程序信息并据此分析具体语义,进而通过抽象和判断获取抽象语义的过程,并从攻击各层面出发引入相应的代码迷惑方法,进而保护代码安全。  相似文献   

14.
基于抽象解释的代码迷惑有效性比较框架   总被引:8,自引:0,他引:8  
高鹰  陈意云 《计算机学报》2007,30(5):806-814
代码迷惑是一种以增加理解难度为目的的程序变换技术,用来保护软件免遭逆向剖析.代码迷惑是否有效是代码迷惑研究中首要解决的问题.目前对有效性证明的研究大都是基于非语义的方式.文章将语义与有效性证明联系起来,建立了基于语义的代码迷惑有效性比较框架,该框架能够为迷惑算法在静态分析这样的限定环境下提供有效性证明,而且也能严格比较迷惑算法之间的有效性,最后使用实例描述比较框架如何应用到证明代码迷惑的有效性.  相似文献   

15.
代码混淆是一种便捷、有效的软件保护方法,能够较好地对抗以逆向分析为基础的MATE攻击,随着以符号执行为基础的自动程序分析技术的发展,出现了能够抵抗符号执行的新代码混淆方法——路径分支混淆。依据路径分支信息的构成,以及分支信息在对抗符号执行分析上的差异,对分支混淆技术进行了分类,并给出了分支信息泄露与符号执行的联系;按照分支混淆的分类,对当前分支混淆的研究进展进行了介绍和总结,分析了各类分支混淆的优缺点;最后,对分支混淆技术的发展进行了展望。  相似文献   

16.
李路鹿  张峰  李国繁 《软件》2020,(2):62-65
代码混淆技术是一种语义保留的代码变换技术,是衡量代码相似度检测方法的重要指标之一。本文主要对现有的代码混淆手段的研究现状和发展进行了综述。首先阐述了代码混淆的相关定义,然后介绍了现有的几种代码混淆手段,对代码混淆手段进行了系统的分类,分别介绍了每种代码混淆手段。最后对代码混淆手段进行了总结与评价。  相似文献   

17.
Code protection technologies require anti reverse engineering transformations to obfuscate programs in such a way that tools and methods for program analysis become ineffective. We introduce the concept of model deformation inducing an effective code obfuscation against attacks performed by abstract model checking. This means complicating the model in such a way a high number of spurious traces are generated in any formal verification of the property to disclose about the system under attack.We transform the program model in order to make the removal of spurious counterexamples by abstraction refinement maximally inefficient. Because our approach is intended to defeat the fundamental abstraction refinement strategy, we are independent from the specific attack carried out by abstract model checking. A measure of the quality of the obfuscation obtained by model deformation is given together with a corresponding best obfuscation strategy for abstract model checking based on partition refinement.  相似文献   

18.
针对ARM程序高层代码混淆存在盲目性较强而降低混淆准确度,且很容易被逆向还原的问题。从ARM汇编指令底层研究ARM程序混淆,通过结合ARM架构指令系统的特点,基于模式切换提出一种ARM汇编代码混淆算法,包括指令模式切换混淆、寄存器随机分配混淆和虚假指令混淆,使混淆后汇编代码的控制流变得更加复杂,且对切换地址的寄存器混淆也提高了动态调试跟踪的难度。模式切换及虚假指令混淆也会造成反汇编错误,从复杂强度、逆向弹性和性能开销三方面进行测试评估。测试结果表明,该混淆算法不仅有效地提高了程序的控制流循环复杂度,而且能够抵抗反汇编工具的逆向分析。该混淆算法引发的额外体积开销和时间开销较低,具有实用性。  相似文献   

19.
代码混淆可有效对抗逆向工程等各类MATE攻击威胁,作为攻击缓和性质的内生安全技术发展较为成熟,对代码混淆效果的合理度量具有重要价值。代码混淆度量研究相对较少,针对代码混淆弹性的度量方法与泛化性、实用性度量方法相对缺乏。符号执行技术广泛应用于反混淆攻击,其生成遍历程序完整路径输入测试集的难度可为混淆弹性度量提供参考,然而基于程序嵌套结构的对抗技术可显著降低符号执行效率,增加其混淆弹性参考误差。针对上述问题,提出结合符号执行技术和N-scope复杂度的代码混淆度量方法,该方法首先基于程序符号执行时间定义程序混淆弹性;其次提出适配符号执行的N-scope复杂度,定义程序混淆强度同时增强符号执行对多层嵌套结构程序的混淆弹性度量鲁棒性;进而提出结合动态分析与静态分析的混淆效果关联性分析,通过对程序进行符号执行与控制流图提取量化混淆效果。面向C程序构建了该度量方法的一种实现框架并验证,实验对3个公开程序集及其混淆后程序集约4 000个程序进行混淆效果度量,度量结果表明,提出的度量方法在较好地刻画混淆效果的同时拥有一定的泛化能力与实用价值;模拟真实混淆应用场景给出了该度量方法的使用样例,为混淆技术使...  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号