IDA 逆向工程 反汇编使用

IDA pro 7.0版本

from:freebuf

用到的工具有IDA pro 7.0  ,被反汇编的是百度云(BaiduNetdisk_5.6.1.2.exe)。

首先,IDA pro的长相如下:

image.png

共有(File , Edit , Jump , Search , View , Debugger , Options , Windows , Help)9个模块,还有下面的诸多小菜单。

现在我们点击File,选择Open打开一个文件,这里我们选择百度云盘PC端安装程序,出现如下图示:

image.png

这里我们直接默认OK即可。

此时,我们看到的视图是这样的:

image.png

然后我们对各个部分进行标号,单独进行介绍:

image.png

第一部分表示的是对不同代码块使用不同的颜色进行区分,我们可以直接点击相应的颜色块进行不同代码块的定位。

蓝色:表示代码段。

棕色:表示数据段。

红色:表示内核。

第二部分表示该程序的函数表,双击后可查看详细信息。

image.png

该函数对应的IDA View-A如下:

image.png

第三部分对应的就是整体程序或者某个函数的图标概述形式,可以大体把握功能和结构的走向。对整体的脱壳逆向有很大的帮助。

image.png

第四部分主要可以显示以下6部分信息:

(1)IDA View-A

(2)Hex View-1

(3)Structures

(4)Enums

(5)Imports

(6)Exports

其中IDA View-A表示的就是某个函数的图标架构,可以查看程序的逻辑树形图,把程序的结构更人性化地显示出来,方便我们的分析。

具体表示形式,上文中有截图可参考。

在Hex View-1中可以查看16进制代码,方便定位代码后使用其他工具修改,具体表示如下图所示:

image.png

在Stuuctures中可以查看程序的结构体:

image.png

在Enums中可以查看枚举信息:

image.png

在Imports中可以查看到输入函数,导入表即程序中调用到的外面的函数:

image.png

在Exports中可以查看到输出函数:

image.png

以上就是IDA主面板中的各个部分的功能介绍了。

接下来我们介绍9个菜单模块,即:

File , Edit , Jump , Search , View , Debugger , Options , Windows , Help

image.png

1.File 是用来打开,新建,装载一个应用程序的,这大家都知道的。

2.Edit 是用来编辑反汇编代码的,可以复制,筛选什么的。

3.Jump 是用来跳转的,可以有很多种类型的跳转,比如跳转到上一个位置或者下一个位置,跳转到某个指定的地址。还可以根据名字,函数来进行跳转,跳转到一个新的窗口,跳转某一个偏移量等等,总之很多了,具体大家可以慢慢积累了。这个模块就比较重要了。

4.Serach 是用来搜索的。

5.View 是用来选择显示方式的,或者显示某一特定模块信息的。比如以树形逻辑图显示,或者16进制形式显示。还可以单独显示某一特定信息,比如输入或者输出表等。

6.Debugger ,调试器被集成在IDA中,首先我们使用IDA装入文件,来生成数据库,用户可以使用反汇编功能,查看所有反汇编信息,这些均可以在调试器中进行和使用。

image.png

7.Options ,在这里可以进行一下常规性的设置。

8.Windows,

9.Help,使用IDA的一些帮助文档,检查更新等等。


使用IDA的一个大体步骤:

1.装入文件或程序

2.指令断点

3.程序运行

4.分析堆栈

5.添加监视

6.进行地址分析

7.单步跟踪

8.找到bug

9.使用硬件断点进行bug确认


本期就介绍到这里了,IDA有很多高级功能,会在之后的实战文章中进行讲解。

下一期我们将讲解《逆向动态调试之Ollydbg的使用》。

学完汇编,IDA,Ollydug我们就可以进行简单的逆向分析了。

转载于:https://www.cnblogs.com/bonelee/p/9984874.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: IDA (Interactive Disassembler) 是一款功能强大的反汇编工具,可以用来分析和反汇编各种类型的二进制文件。 使用IDA反汇编工具的基本流程如下: 1. 安装IDA反汇编工具(需要购买商业版本)。 2. 打开IDA,加载要反汇编的二进制文件。 3. 选择反汇编的模式,包括 32 位或 64 位模式。 4. 选择反汇编的目标平台,包括 Windows、Linux、MacOS 等。 5. 等待反汇编过程完成。 6. 使用IDA的各种功能进行二进制文件分析,包括查看函数定义、跟踪代码流程、查看程序结构等。 7. 使用IDA的调试功能进行程序调试。 注意:IDA反汇编工具的使用需要一定的二进制分析知识,如果您没有相关经验,建议先学习二进制分析的基础知识。 ### 回答2: IDA反汇编工具是一款用于将机器码反汇编为可读的汇编指令的工具。它广泛用于反向工程、代码逆向分析以及恶意软件分析等领域。以下是IDA反汇编工具的使用说明。 1. 下载和安装:访问IDA官方网站,根据自己的操作系统下载适合的版本,并按照安装向导进行安装。 2. 打开二进制文件:启动IDA软件后,点击“File”菜单中的“Open”选项,在弹出窗口中选择要反汇编的二进制文件,并点击“打开”。 3. 分析代码:选中二进制文件后,IDA会自动进行二进制文件的分析,包括识别并显示函数、变量和控制流等信息。在代码窗口中,可以看到将二进制代码转换为可读的汇编指令。 4. 导航和查看代码:IDA提供了多种导航和查看代码的功能。通过双击函数或跳转指令,可以快速导航到相应的代码位置。还可以通过搜索功能查找特定的指令或字符串。 5. 分析反汇编结果:通过观察汇编指令的顺序、跳转指令和函数调用等,可以推测出程序的逻辑结构。可以根据需要添加注释、标签等,以便更好地理解和记录分析结果。 6. 反编译并修改代码:IDA还提供了反编译功能,可以将汇编指令转换为高级语言代码(如C语言)。可以修改反编译的结果,进一步分析代码逻辑或进行恶意软件分析。 7. 插件和脚本扩展:IDA支持插件和脚本扩展,可以根据需要添加各种功能的插件,或者编写自己的脚本来扩展和定制功能。 总之,IDA反汇编工具是一款功能强大的反向工程工具,通过其丰富的功能和用户友好的界面,可以帮助分析人员更好地理解和分析二进制代码,提高反向工程和恶意软件分析的效率。 ### 回答3: IDA反汇编工具是一款在逆向工程领域广泛应用的强大工具。它能够将目标程序的机器码转换为相应的汇编代码,帮助逆向工程师分析、理解和修改程序的功能和逻辑。下面是IDA反汇编工具的使用说明。 首先,要使用IDA反汇编工具,我们需要将目标程序加载到IDA中。打开IDA软件后,选择“文件”菜单中的“打开”选项,然后选择目标程序所在的文件。 IDA会自动识别目标程序的格式,并将其转换为汇编代码显示在主界面中。在汇编代码中,每个指令都会以十六进制的形式显示,并附带相应的注释和参考信息。 接下来,我们可以通过IDA的导航功能快速定位到感兴趣的函数或指令。例如,可以使用快捷键“N”跳转到下一个函数,使用快捷键“P”跳转到上一个函数。 在分析目标程序时,IDA提供了多种辅助功能。例如,可以使用“反向搜索”功能查找调用某个函数的位置,可以使用“字符串视图”功能查看程序中的字符串常量,还可以使用“图形视图”功能以图形化的方式展示程序的控制流程。 除了分析功能外,IDA还提供了修改目标程序的能力。可以通过IDA在汇编代码中直接修改指令,然后保存修改后的程序,实现对程序的修复或定制。 此外,IDA还支持插件扩展,用户可以编写自己的插件来增加功能或定制界面。 总之,IDA反汇编工具是逆向工程师的得力助手,可以帮助我们进行目标程序的分析、理解、修改和定制。相信通过学习和熟练使用IDA,我们能够更好地进行逆向工程的工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值