2024年5月10日发(作者:)

IDA实例教程

作者:笨笨雄

邮箱:nemo314@

1 软件环境

静态分析有很多好处,例如加壳的程序(尽管对于高手来说这并不会耗费太多时间),

我们不需要寻找OEP,也不需要解除自校验,只要修复IAT,DUMP下来就可以动手分析

了。假如你需要修改程序,可以使用内存补丁技术。动态与静态,调试器与反汇编器结合可

以简化分析任务,帮助我们理解代码。因此掌握一种反汇编器是非常必要的。IDA可以说是

这方面的首选工具,它为我们提供了丰富的功能,以帮助我们进行逆向分析。这从IDA复

杂的工作界面便可以知道。

种类繁多的工具栏

在分辨率不高的情况,这些工具栏与反汇编窗口挤在小屏幕里,看起来不爽。我一般把

它关闭(查看=>工具栏=>主工具栏)以获得更好的视觉效果。当我们需要这些功能的时候,

直接使用快捷键就可以了。下面是常用快捷键的清单:

快捷键

C

D

A

N

R

H

Q

B

G

X

SHIFT+/

ALT+ENTER

ALT+F3

ESC

功能

转换为代码

转换为数据

转换为字符

为标签重命名

添加注释

把立即值转换为字符

把立即值转换为10进制

把立即值转换为16进制

把立即值转换为2进制

跳转到指定地址

交叉参考

计算器

便于查找API或变量的引用

便于分析立即值

方便记忆,避免重复分析。

注释

一般在IDA无法识别代码时使用

这两个功能整理代码

新建窗口并跳转到选中地址 这四个功能都是方便在不同函数

之间分析(尤其是多层次的调

关闭当前分析窗口

用)。具体使用看个人喜好

返回前一个保存位置

CTRL+ENTER

返回后一个保存位置

在工具栏下面的便是工作窗口。主要的窗口分页有“IDA View-A”、“Name”、“Strings”、

“Exports”和“Imports”。对于后面3项相信大家都不会陌生了,它们分别是字符参考,输

出函数参考和输入函数参考。Name是命名窗口,在那里可以看到我们命名的函数或者变量。

这四个窗口都支持索引功能,可以通过双击来快速切换到分析窗口中的相关内容,使用起来

十分方便。

简单输入几个字符即可定位目标

IDA View-A是分析窗口,支持两种显示模式,除了常见的反汇编模式之后,还提供图

形视图以及其他有趣的功能。

IDA的反汇编窗口