共查询到16条相似文献,搜索用时 62 毫秒
1.
针对Miasm反混淆框架反混淆后的结果是一张图片,无法反编译恢复程序源码的问题,在对底层虚拟机混淆器(OLLVM)混淆策略和Miasm反混淆思路进行深入学习研究后,提出并实现了一种基于符号执行的OLLVM通用型自动化反混淆框架。首先,利用基本块识别算法找到混淆程序中有用的基本块和无用块;其次,采用符号执行技术确定各个有用块之间的拓扑关系;然后,直接对基本块汇编代码进行指令修复;最后,得到一个反混淆后的可执行文件。实验结果表明,该框架在保证尽量少的反混淆用时前提下,反混淆后的程序与未混淆源程序的代码相似度为96.7%,能非常好地实现x86架构下C/C++文件的OLLVM反混淆。 相似文献
2.
底层虚拟机混淆器(OLLVM)是一个著名的代码混淆工具,除了用于保护商业软件的安全外,也被恶意代码的开发者所利用,以此增加分析难度。为便于安全研究人员对ARM恶意程序进行分析,提出并实现了基于动态分析的OLLVM自动化反混淆方法。对于虚假控制流,根据不透明谓词的内存特征监控内存读写并利用动态污点分析技术识别虚假控制流来完成反混淆;对于控制流平坦化,通过动态运行程序并记录基本块的执行顺序来完成反混淆;同时利用多执行路径构造来提高代码覆盖率,最后通过指令修复还原基本块之间的关系。实验结果表明,该方法可准确消除可执行程序中因混淆产生的条件分支,且反混淆后得到的程序其运行结果与未混淆的程序保持一致,能有效完成对ARM混淆程序的反混淆工作。 相似文献
3.
针对现有代码混淆仅限于某一特定编程语言或某一平台,并不具有广泛性和通用性,以及控制流混淆和数据混淆会引入额外开销的问题,提出一种基于底层虚拟机(LLVM)的标识符混淆方法。该方法实现了4种标识符混淆算法,包括随机标识符算法、重载归纳算法、异常标识符算法以及高频词替换算法,同时结合这些算法,设计新的混合混淆算法。所提混淆方法首先在前端编译得到的中间文件中候选出符合混淆条件的函数名,然后使用具体的混淆算法对这些函数名进行处理,最后使用具体的编译后端将混淆后的文件转换为二进制文件。基于LLVM的标识符混淆方法适用于LLVM支持的语言,不影响程序正常功能,且针对不同的编程语言,时间开销在20%内,空间开销几乎无增加;同时程序的平均混淆比率在77.5%,且相较于单一的替换算法和重载算法,提出的混合标识符算法理论分析上可以提供更强的隐蔽性。实验结果表明,所提方法具有性能开销小、隐蔽性强、通用性广的特点。 相似文献
4.
软件程序是按一定顺序排列的指令序列,指令的排列组合构成了千变万化的程序语义.指令顺序重排通常会相应地导致程序语义的变化,通过分析相邻指令序列的相对独立性,可以在不影响程序语义的前提下交换相邻指令序列,增大指令距离,改变程序特征,在一定程度上增加逆向分析代价.通过改进程序的形式化定义论证相邻指令交换的充分条件,采用模拟退火算法实现随机化的指令乱序混淆方法,并将指令乱序方法与虚拟机代码保护技术融合,实现基于指令乱序的虚拟机代码保护系统IS-VMP,使用加密算法实例进行系统测试,验证了指令乱序混淆算法的可行性与有效性. 相似文献
5.
越来越多的软件以平台无关的中间代码来发布,代码混淆技术降低了被静态分析、逆向工程和篡改等恶意攻击的可能性,从而达到保护软件源码的效果。文章从软件保护的方法出发,给出了代码混淆技术的定义和目标,介绍了代码混淆技术的分类和性能指标,最后指出代码混淆技术的发展方向。 相似文献
6.
针对目前日益严峻的软件保护问题,对现有基于虚拟机的软件保护技术进行分析与研究,对虚拟机保护技术进行了改进,设计了一种增强型虚拟机软件保护技术。采用了虚拟花指令序列与虚拟指令模糊变换技术,并对虚拟机的虚拟指令系统做了改进,从而提高了虚拟机执行的复杂程度与迷惑程度,具有高强度的反逆向、防篡改、防破解的特点。实验分析表明,增强型虚拟机保护技术明显优于普通型虚拟机保护技术。 相似文献
7.
未经处理的传统二进制可执行代码容易遭到静态分析、动态分析、逆向工程和篡改等恶意攻击。进程级虚拟机软件技术近年来被用于软件保护领域。本文描述一种新颖的进程级软件保护虚拟机指令解释器方案,该方案使用自定义的SEH(Structured Exception Handling,结构化异常处理)控制虚拟指令的获取。结果表明,该方案为虚拟机中其他保护手段提供了平台,并能在现有基础上增加逆向分析的难度。 相似文献
8.
一种采用嵌套虚拟机的软件保护方案 总被引:1,自引:0,他引:1
随着逆向工程的发展,传统的众多保护方法已经不再适合现代软件保护的要求.给出了一种新的基于虚拟机的保护方案,将本地机器码译成虚拟指令并由虚拟机解释和执行,抽象了软件语义,使得逆向工程师极难理解高层原程序逻辑.此外,方案中采用了嵌套多重虚拟机技术,逆向工程师不把前一重突破就无法展开对下一重的分析,从而使得该软件保护方案极大提高了安全性. 相似文献
9.
10.
按照一定顺序执行虚拟指令处理函数(Handler)可完成程序关键代码的保护,其为软件逆向分析者攻击的重点对象。针对“动态提取,静态分析”的Handler攻击方法,提出一种基于Handler混淆增强的虚拟机保护方法。运用等价指令替换规则生成多种等价Handler序列,对所有Handler进行变长切分和随机乱序,通过构建跳转表对乱序序列进行重组,构建随机地址数组对Handler调度地址表和执行跳转表进行隐藏。实验和分析表明:多样化Handler生成、切分和乱序增加了动态提取和分析的难度,Handler地址表和跳转表的隐藏增加了抵御静态逆向分析的难度,从而提升了虚拟机保护强度。 相似文献
11.
针对现有剪贴板操作监控无法抵御内核层攻击,且所采取的单一保护策略无法满足现实需求的问题,提出一种基于虚拟机监控器(VMM)的文档内容剪贴板操作监控技术,并提出基于剪贴板操作监控的电子文档分级保护策略。首先,通过修改影子寄存器的方法在VMM层截获并识别系统调用;其次,监控文档打开操作建立进程标识符和文档路径之间的映射表,并在截获到剪贴板操作后通过进程标识符解析文档路径;最后,根据电子文档分级保护策略对剪贴板操作进行过滤。实验结果表明,监控系统给客户机文件系统带来的性能损耗随着文件读写块的增大而减小,当读写块大小达到64 KB以上时,客户机性能损耗在10%以内,对用户影响不大。 相似文献
12.
13.
存储相关性预测对于减少存储相关性冲突、提高微处理器性能具有十分重要的作用。针对传统相关性预测器硬件开销大、可实现性较差的缺点,通过对存储相关性的局部性分析,提出了一种基于指令距离的存储相关性预测方法。该方法充分利用了发生存储相关性冲突的指令在指令距离上的局部性,预测冲突指令的指令距离,进而控制部分访存指令的发射时机,大大减少了存储相关性冲突的次数。实验结果表明,在硬件开销约为1KB的情况下,使用基于指令距离的相关性预测器后,每个时钟周期平均执行的指令数可以提高1.70%,最高可以提高5.11%。在硬件开销较小的情况下,较大程度提高了微处理器的性能。 相似文献
14.
由于虚拟环境的复杂性和动态性,使用传统方法证明其安全状态时会出现运算效率低下的情况;而环签名具有运算效率高、匿名性强的特点,利用无证书公钥系统可解决密钥管理问题。为此,提出一种采用无证书环签名机制的虚拟机可信证明方案。私钥生成中心(PKG)验证平台物理环境的状态可信后,由PKG和虚拟可信平台模块(vTPM)管理器利用无证书算法共同生成vTPM签名密钥,虚拟机对外证明时采用环签名机制,将证明者的信息隐藏在环成员列表中,从而实现虚拟机对外的匿名身份证明和状态证明。在完成证明准备工作后,虚拟机不需要在每次证明和迁移时重复生成虚拟身份证明密钥(vAIK)证书,因此大大提高了证明效率;另外方案具有很强的安全性和匿名性,适用于虚拟机数量巨大的云计算环境。 相似文献
15.
对超粒度混杂技术的改进:基于瘦虚拟机的指令集交替技术 总被引:2,自引:0,他引:2
超粒度混杂技术对于小型解密程序效率低下,为此提出了基于瘦虚拟机的指令集交替技术。该技术使用一个自动机来记录程序加密和解密的方法,并且使用瘦虚拟机来完成对加密过的程序解释执行。测试结果表时,该技术在保证加密强度的条件下,对效率有较大的提高。 相似文献
16.