首页> 外文期刊>Computers & Security >Enhance virtual-machine-based code obfuscation security through dynamic bytecode scheduling
【24h】

Enhance virtual-machine-based code obfuscation security through dynamic bytecode scheduling

机译:通过动态字节码调度增强基于虚拟机的代码混淆安全性

获取原文
获取原文并翻译 | 示例

摘要

Code virtualization built upon virtual machine (VM) technologies is emerging as a viable method for implementing code obfuscation to protect programs against unauthorized analysis. State-of-the-art VM-based protection approaches use a fixed scheduling structure where the program always follows a single, deterministic execution path for the same input. Such approaches, however, are vulnerable in certain scenarios where the attacker can reuse knowledge extracted from previously seen software to crack applications protected with the same obfuscation scheme. This paper presents Dsvmp, a novel VM-based code obfuscation approach for software protection. Dsvmpbrings together two techniques to provide stronger code protection than prior VM-based approaches. Firstly, it uses a dynamic instruction scheduler to randomly direct the program to execute different paths without violating the correctness across different runs. By randomly choosing the program execution path, the application exposes diverse behavior, making it much more difficult for an attacker to reuse the knowledge collected from previous runs or similar applications to launch an attack. Secondly, it employs multiple VMs to further obfuscate the mapping from VM opcode to native machine instructions, so that the same opcode could be mapped to different native instructions at runtime, making code analysis even harder. We have implemented Dsvmpin a prototype system and evaluated it using a set of widely used applications. Experimental results show that Dsvmpprovides stronger protection with comparable runtime overhead and code size, when it is compared to two commercial VM-based code obfuscation tools.
机译:建立在虚拟机(VM)技术之上的代码虚拟化正在成为一种可行的方法,用于实现代码混淆,以保护程序免受未经授权的分析。基于虚拟机的最新保护方法使用固定的调度结构,其中程序对于相同的输入始终遵循一条确定的执行路径。但是,这种方法在某些情况下容易受到攻击,在这种情况下,攻击者可以重用从以前看到的软件中提取的知识来破解受相同混淆方案保护的应用程序。本文介绍了Dsvmp,这是一种新颖的基于VM的代码混淆技术,用于软件保护。 Dsvmp将两种技术结合在一起,以提供比以前的基于VM的方法更强大的代码保护。首先,它使用动态指令调度程序来随机引导程序执行不同的路径,而不会破坏不同运行之间的正确性。通过随机选择程序执行路径,应用程序会暴露各种行为,从而使攻击者更加难以重用从先前运行或类似应用程序中收集的知识来发起攻击。其次,它使用多个虚拟机来进一步模糊从虚拟机操作码到本机指令的映射,以便可以在运行时将相同的操作码映射到不同的本机指令,从而使代码分析更加困难。我们已经实现了Dsvmpin一个原型系统,并使用了一组广泛使用的应用程序对其进行了评估。实验结果表明,与两个基于商业VM的商业代码混淆工具相比,Dsvmp提供了更强大的保护,具有可比的运行时开销和代码大小。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号