IDA工具介绍

往期推荐

IDA工具安装、分享

ARM处理器寻址方式

ARM指令集

ARM汇编语言程序结构

昨天给大家概括性的了解了IDA工具,今天分享IDA工具的实际应用。

一:IDA打开so文件

1.首先打开IDA工具,进入选项界面,直接选中Go选项,如下图所示。

在这里插入图片描述

2.点击GO进入IDA工具的主界面,如下图所示。

在这里插入图片描述

3.将准备好的so文件案例拖至IDA工具中,此界面的选项选择默认即可,点击OK,如下图所示。

在这里插入图片描述

4.进入So文件反编译完成的提示界面,继续点击OK进入主界面,如下图所示。

在这里插入图片描述

5.进入IDA反编译so完成后的界面(IDA反编译需要一定的时间,编译过程要耐心等待),如下图所示。

在这里插入图片描述

二:IDA导航条

方框内的条码导航条,它包含蓝色、黑色、银白色、粉色以及暗黄色,每种颜色代表不同的涵义,如下图所示。

在这里插入图片描述

  • 蓝 色: 表示常规的指令函数。
  • 黑 色:节与节之间的间隙。
  • 银白色:数据内容。
  • 粉 色:表示外部导入符号。
  • 暗黄色:表示ida未识别的内容。

三: IDA主界面

IDA的主界面包含7个窗口,如下图所示。

在这里插入图片描述

7个窗口的功能如下:

IDA View三种反汇编视图:文本视图、图表视图、路径视图反汇编窗口是当前数据的汇编指令窗口。

在这里插入图片描述

Strings 字符串窗口

在这里插入图片描述

Hex View 十六进制窗口十六进制窗口是编辑内存数据和代码。

在这里插入图片描述

Structures 结构体窗口

在这里插入图片描述

Enums 枚举窗口

在这里插入图片描述

Imports 导入函数窗口

在这里插入图片描述

Exports 导出函数窗口

在这里插入图片描述

四:IDA常用快捷键

1.空格键:切换文本视图与图表视图,如下图所示。

在这里插入图片描述

2.ESC:返回上一个操作地址。

3.G:搜索地址和符号,如下图所示。

在这里插入图片描述

4.N:对符号进行重命名,如下图所示。

在这里插入图片描述

5.冒号键:常规注释,如下图所示。

在这里插入图片描述

6.分号键:可重复注释,如下图所示。

在这里插入图片描述

7.Alt+M:添加标签,如下图所示。

在这里插入图片描述

8.Ctrl+M:查看标签,如下图所示。

在这里插入图片描述

9.Ctrl+S:查看节的信息,如下图所示。

在这里插入图片描述

10.X:查看交叉应用,如下图所示。

在这里插入图片描述

11.F5:查看伪代码,如下图所示。

在这里插入图片描述

12.Alt+T:搜索文本,如下图所示。

在这里插入图片描述

13.Alt+B:搜索十六进制,如下图所示。

在这里插入图片描述

14.代码数据切换

  • C–>代码
  • D–>数据
  • A–>ascii字符串
  • U–>解析成未定义的内容。

五:拷贝伪C代码到反汇编窗口

点击右键,如下图所示。

在这里插入图片描述

Edit comment:注释伪c代码。
copy to -assembly:拷贝伪C代码到反汇编窗口。

IDA可以通过修改so的hex操作数来修改so文件,具体的操作流程如下:右键点击“edit”进行修改,然后右键点击“edit-patchrogram”保存修改(提示:这里建议使用winhex来进行修改)。

小结

本次主要分享了主面板各项的功能以及快捷键的使用,这些都是需要记忆的内容。

如果你也对安卓逆向感兴趣。可以加入下方的群,大家一起讨论问题,或者扫描下方二维码关注公众号,关注回复 “安卓逆向” 获取免费教程

安卓逆向交流学习:3543756281
vx:Yjxiaox

在这里插入图片描述


版权声明:本文为YJJYXM原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。