IDA Pro逆向工程工具:二进制地图、函数调用分析与安全漏洞定位
IDA Pro 展现出了代码块之间的调用关系。此外,IDA Pro 的扩展性能较为良好。能够借助 IDA Pro 所提供的 API 接口以及 IDC 脚本,对应用进行扩展。并且,由相关扩展的插件和脚本所生成的数据库文件,能够直接导入到 OllyDbg、Binary Diffing 等工具中加以使用。大名鼎鼎的 Hex-Rays 插件能够直接反编译生成 C 代码,仅需按下 F5 便可。在逆向工程领域,IDA pro 已逐渐成为分析人员必备的工具之一。在本书里,我们会利用它来确定安全漏洞的汇编代码位置,并且结合它所呈现的代码调用关系去理解漏洞的机理。

IDA Pro 7 静态反编译工具 Mac版下载
IDA Pro 7 静态反编译工具 win版下载
可编程性 IDA Pro 包含一个完全开发环境,这个环境由非常强大的类似于宏语言组成。它可用于执行从简单到中等复杂的自动化任务。对于一些高级任务,我们的开放式插件架构对外部开发人员没有限制,能以此完善 IDA Pro 的功能。例如,每个人都可以用 MP3 播放器来扩展 IDA Pro 并发现恶意软件。
目前,电脑在面对未知事物时,其能力无法与人类大脑相媲美。而 IDA Pro 具备完全的互动性,与电脑相比,IDA 能够让分析师重新编写决策或者提供相应的线索。交互性是内置程序语言以及开放式插件架构的最终需求。
在现实生活中,事情并非如我们想象的那般简单。恶意代码通常与分析不一致。病毒、蠕虫和木马往往是被其他东西修饰后造成了混淆,这就需要有一个更强大的工具来将其识别出来。IDA Pro 调试器具有补充反汇编静态分析功能的作用。它允许分析师逐步通过代码进行调查。调试器常常能够绕过混淆,并获取一些可用于对静态反汇编程序进行深入处理的数据。功能更强大的静态反汇编器在深度处理时能借助这些数据。远程调试器在人们想要对潜在有害程序进行深入研究时发挥了很大作用。有些 IDA 调试器能够在虚拟环境的应用上运行,这样一来,就使得恶意软件的分析更具成效。
反汇编器 IDA Pro 作为一种工具,它为那些源代码并非总是能获取的二进制程序的探索开发而创建程序执行图。反汇编器的一个益处在于,它能够通过符号表示(即汇编语言)为正在执行的处理器提供说明。如果一个刚刚安装的友好的屏幕存储器在探视你的网上银行会话或者登陆你的邮箱,那么反汇编器能够将其显示出来。不过,汇编语言是比较难以理解的,这就是这种先进的技术被应用在 IDA Pro 上的原因,这样能确保代码的可读性,在某些情况下甚至和二进制文件产生的源代码极为相似。该程序图的代码能够为后续的调查提供后期处理方面的支持。有一些人已经把它当作其根源,应用于病毒的基因分类工作中。