VM分析还原插件是一个以可执行文件作为输入,反编译出高等级源代码的程序。VM分析还原插件是编译器的反向过程,编译器把高级源代码编译成可执行文件。
说明介绍
反编译器通常不能完美的重现源代码,也不能很好的处理混淆代码。至少,反汇编器是计算机软件逆向工程中非常重要的工具。
“反编译器”通常的解释为:一个可以将可执行文件转换成高级语言源代码的程序,当重新编译后,组建出的可执行程序的行为和原始的可执行程序一样。对比,反汇编器把可执行文件转换成汇编语言,而汇编器把汇编语言编译成可执行程序。
反编译过程就是使用的反编译器的过程,从反编译器的字面意思可以看出。它可以用在复原遗失的源代码,在计算机安全,协同工作,错误纠正方面也是很有用的。反编译过程的关键在于反编译出的代码信息和分析报告。字节码格式被用在许多的虚拟机中(例如Java虚拟机和.NET Framework Common Language Runtime)通常包含了广泛的元数据和高级语言规则,使得反编译过程成为可行的。调试数据的出现使反编译出原始变量,结构体,甚至行号成为可能。机器语言如果没有元数据和调试数据,就会使反编译变的非常困难。
一些编译器和编译器组件可以生成混淆代码(这样生成的代码会使反编译变得更加困难)。这样会给逆向带来难度。
功能特点
我们的工作
自从汇编级代码混淆和代码虚拟化的出现,给软件分析带来了很大的困难,我们的工作就是使这类代码的分析变得简单。
我们的产品
现在,我们提供了一款可以分析一类汇编级虚拟化代码的组件。为了使用更加方便,我们将它接入调试器中。
xx_vm_release
vmp虚拟代码分析还原插件,可以自动化的分析由vmp保护的虚拟代码,提供了包含丰富信息的日志文件,通过对日志伪代码的分析,我们几乎可以还原出原始指令。从而达到分析目的。目前我们已经开发出OllyDbg适用的插件,后续我们也会对接其他主流调试器。