Chinaunix首页 | 论坛 | 博客
  • 博客访问: 318864
  • 博文数量: 60
  • 博客积分: 2781
  • 博客等级: 少校
  • 技术积分: 600
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-23 16:42
文章分类

全部博文(60)

文章存档

2011年(33)

2010年(27)

分类: WINDOWS

2011-01-15 14:03:49

IDA Pro的功能由四大模块(modules)支持,分别是(基于Windows/IA-32平台):

l  Plug-in 插件:利用SDK提供的API,完善IDA Pro的功能,扩展名plw

l  Loaders 加载器:将可执行文件载入内存,进行分段,扩展名ldw

l  Processor 处理器:将可执行程序的机器码反汇编成汇编代码,扩展名w32

l  Debuggers 调试器:IDA Pro自带的调试器。

上述四个模块均能通过Hex-rays公司提供的SDK得到扩展,因为 SDK提供了大量的API,这些API可以涉及到IDA Pro软件的系统层,用户通过编写调用这些APIC++程序达到扩展IDA Pro功能的目的。目前使用最为广泛的就是利用SDK开发IDA Pro插件,所以重点讨论如何开发插件。

 

既然需要利用IDA Pro SDK提供的API,那么就需要了解SDK里到底有些什么文件?我使用的SDK是基于5.2版本的,解压后对SDK包含的文件夹做简单的说明如下:

l  include:涵盖了SDK所有的头文件。

l  ldrSDK支持的loaders模块(含源码)。

l  moduleSDK支持的processor模块(含源码)。

l  libvc.w32SDK支持在32Windows环境下用Vistual Studio开发的插件。

l  plugins:已经完成作为示例的plugins(含源码)。

如何使用SDK呢?头文件中以ida_export开头的函数可以使用,以ida_export_data开头的数据可

以使用,此外SDK中定义的class, structureenum均可使用。

关于include头文件的说明,参考SDK根目录下的readme.txt文件。

阅读(14951) | 评论(0) | 转发(0) |
0

上一篇:IDAPython小结

下一篇:IDA Plugin的简单说明

给主人留下些什么吧!~~