IDA Pro 7 静态反编译工具
IDA Pro 就像提供了一张二进制的地图,标注了系统函数以及分析人员注解的函数调用,同时展现出各级函数和代码块之间的调用关系。此外,IDA Pro 的扩展性能很好,可以利用 IDA Pro 提供的 API 接口和 IDC 脚本来扩展应用,而且相关扩展的插件和脚本产生的数据库文件可以直接导入 OllyDbg、Binary Diffing 等工具中使用。大名鼎鼎的 Hex-Rays 插件可以直接反编译生成 C 代码,只要按 F5 即可。 在逆向工程,IDA pro 已经日渐成为分析人员必备的工具之一。在本书中,我们将利用它来定位安全漏洞的汇编代码位置,结合其呈现的代码调用关系来理解漏洞的机理。
可编程性 IDA Pro 包含了一个由非常强大的类似于宏语言组成的完全开发环境,可用于执行简单到中等复杂的自动化任务。对于一些高级任务,我们的开放式插件架构对外部开发人员是没有限制的,这样可以完善 IDA Pro 的功能。比如,每个人可以用 MP3 播放器来扩展 IDA Pro 并且发现恶意软件。
交互性 目前,电脑在遇到未知事物时,是无法和人类大脑相比的。而 IDA Pro 拥有完全的互动性,与前者相比,IDA 可以让分析师重写决策或者提供相应的线索。交互性是内置程序语言和开放式插件架构的最终要求。
调试器 在现实生活中,事情并不是我们想象的那样简单,恶意代码通常总与分析不一致。病毒,蠕虫和木马往往是被其他东西修饰过而造成混淆,这就要求有一个更加强大的工具来识别出来。IDA Pro 调试器补充了反汇编的静态分析功能:允许分析师通过代码一步一步来调查,调试器经常会绕过混淆,并得到一些能够对静态反汇编程序进行深入处理的数据,包括有助于得到的数据的功能更强大的静态反汇编器将能够在深度处理。远程调试器对人们想要对潜在的有害程序进行深入时起到了很大的作用。有些 IDA 调试器也可以运行在虚拟环境的应用上,这使得恶意软件分析更有成效。
反汇编 作为一个反汇编器,IDA Pro 为可用在那些源代码不总是可用的二进制程序的探索开发,创建程序执行图。一个反汇编器*的益处就在于它可以通过符号表示,也就是汇编语言来为在执行的处理器提供说明。如果一个你刚刚安装的友好的屏幕存储器在探视你的网上银行会话或者登陆你的邮箱,反汇编器就可以将它显示出来。然而,汇编语言是很难搞懂的,这也是为什么这种先进的技术被应用在 IDA Pro 上从而能确保代码的可读性,甚至在某些情况下和二进制文件产生的源代码非常相似。该程序图的代码可以为进一步的调查提供后期处理。有些人已经将它作为其根源用在病毒的基因分类上。
评论