首页
社区
课程
招聘
[原创]IDA7.0 Mac 插件编译指南
发表于: 2017-12-8 18:19 11634

[原创]IDA7.0 Mac 插件编译指南

2017-12-8 18:19
11634

前不久IDA7.0发布,这次相较之前来说有很多的改动,首先整个IDA是x86 64位架构,而之前却一直是i386 32位,因此插件同样为64位的dylib。不仅这样,SDK上某些接口也发生了改变,导致很多优秀的插件不得不重新改动源码,很多在IDA7上编译也存在问题。下面我将以IDA的官方插件findcrypt2来说明IDA7的插件编译细节。编译IDA插件是个麻烦事,主要在于网上相关的资料很少,唯一的几篇也是年代久远,Makefile里面很多编译参数都有变化,目前来说,没有一个完整的文章来介绍如何在Mac平台下编译IDA插件的指南。希望这篇文章能够对有这需求的人有所帮助。

在Mac上完全可以用xcode来帮助我们编译IDA插件,其实更常见的是用Makefile编译,但原理一样,所以这里就以xcode来介绍。

我们知道IDA的插件的文件格式为dylib动态库,因此在创建xcode项目时在Framework&Libarry中选择Libarry

xcode_step_1

然后再选择为Dynamic动态库,并导入C++标准库

xcode_step_2

接下来项目中自动会生成两个文件。暂时不用管,我们把findcrypt2的源码放入该项目,最后如下图所示

project_1

这时你的项目中像ida.hpp这类的头文件肯定会提示找不到,还需要进一步设置。

这里我们将设置头文件和库的搜索路径等等。

首先设置目标架构为x86_64

arch_s

然后设置头文件和库的搜索路径,依据你IDA及sdk路径改成对应路径

search_s

经过上面的设置,此时xcode应该能找到头文件了,这时还需要设置连接的静态库

link_s

这里连接的库为-lida64,表示我们编译的是解析64位的插件,若要编译解析32位的插件,这里为-lida即可。

最后我们还需要设置编译参数

macros_s

其中__EA64__在编译64位插件时才有。

这时候build一下,如果一切顺利,应该就不会报错了。

IDA7相以前版本而言,插件的后缀名统一为dylib格式,之前32位为pmc,64位为pmc64。这里将编译好的插件改为findcrypt264.dylib表示为64位插件,则对应的32位插件名为findcryt.dylib

下面测试下效果,我们打开IDA去解析一个含有md4加密的macho文件,运行插件测试能否识别出其中的加密算法。

test

上图我们可以看到这里成功找到一处md4加密,反汇编窗口中正是md4加密中用到的常量数组。我顺便为插件注册了Ctrl-Alt-z的快捷键,若没有快捷键,可以在插件的导航栏里点击对应的插件即可。

附上该插件,完。

findcrypt264.dylib_for_ida7_made_by_x1a0

http://newsoft-tech.facebook.com/2014/05/setting-up-ida-sdk-65-on-mac-os-x-109.html

http://www.h4ck.org.cn/2014/09/mac-ida-pro-%E6%8F%92%E4%BB%B6%E7%BC%96%E5%86%99%E6%8C%87%E5%8D%97-v1-0/


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 2
支持
分享
最新回复 (6)
雪    币: 3907
活跃值: (5817)
能力值: ( LV12,RANK:200 )
在线值:
发帖
回帖
粉丝
2
写的很详细不错不错
2017-12-8 18:39
0
雪    币: 6911
活跃值: (9069)
能力值: ( LV17,RANK:797 )
在线值:
发帖
回帖
粉丝
3
学习了
2017-12-8 19:24
0
雪    币: 290
活跃值: (43)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
原来是滴滴大佬,膜
2017-12-8 19:34
0
雪    币: 18
活跃值: (1059)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
5
idapro7.0插件的sdk有下载吗?
2017-12-8 22:26
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
不错、很好
2018-6-1 08:03
0
雪    币: 244
活跃值: (174)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
非常棒的文章
2018-6-28 12:32
0
游客
登录 | 注册 方可回帖
返回
//