返回介绍

第 15 章 编写 IDA 脚本

发布于 2024-10-11 21:05:45 字数 885 浏览 0 评论 0 收藏 0

事实上,没有哪一个应用程序能够满足每名用户的一切需求。要想预测每一种可能出现的情况,几乎是不可能的事情。应用程序开发者面临两种选择:要么满足用户提出的无止境的功能要求,要么提供一种方法,供用户解决问题。IDA 采用了后一种方法,它集成了一个脚本引擎,让用户从编程角度对 IDA 的操作进行全面控制。

脚本的潜能无限,可用于开发简单的单行程序,也可以开发功能全面的程序,从而自动执行常见的任务,也能实现复杂的分析功能。从自动化的角度看,你可以将 IDA 脚本看成宏1 ;而从分析的角度看,IDA 脚本语言可看成是一种查询语言,它能够以编程方式访问 IDA 数据库的内容。IDA 使用两种不同的语言编写脚本。IDA 的原始嵌入式脚本语言叫做 IDC ,之所以取这个名称,可能是因为它的语法与 C 语言的语法非常相似。自 IDA 5.4 发布以来2 ,IDA 还通过集成由 Gergely Erdelyi3 开发的 IDAPython 插件来支持 Python 集成式脚本。本章剩余部分将介绍编写和执行 IDC 和 Python 脚本的基础知识,以及一些可供程序员使用的有用函数。

1. 许多应用程序可将操作序列记录到一个叫做“宏”的复杂操作中。重播或触发宏,将执行其记录的整个操作步骤。宏提供了一种简单的方法,可自动执行一系列复杂的操作。
2. 有关每个新版本的 IDA 引入的功能的完整列表,请访问 http://www.hex-rays.com/idapro/idanew48.htm
3. 参见 http://code.google.com/p/idapython/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文