第一课.IDA简介与初使用

IDA的反汇编有2种方式 :线性扫描(linear sweep)和递归下降(recursive descent)两种主要的反汇编算法。

线性扫描:反汇编从第一个代码段的第一个字节开始,以线性模式扫描整个代码段,逐条反汇编每条指令,直到遍历全部字节。此方法对于长度固定的指令集(MIPS)反汇编会更加容易,因为可以方便的的定位到随后的指令。缺点就是无法正确的将嵌在代码中的数据分离出。

递归下降:根据一条指令是否被另一条指令引用来决定是否对其进行反汇编。

 

交互式反汇编器专业版,常常称其为IDA Pro,属于递归下降反汇编器

用IDA载入程序时,不要乱改动默认的选项,直接点确定就行

蓝色的是代码段,棕色的是数据段

 

 

IDA可以重命名函数或者变量(一处修改全部都会被改)

快捷键是选中要改名的内容按N,或者右键rename

 

转换为视图模式,按空格可以来回切换

 

 

 

 

退出IDA时,会进行文件保存确认,如果需要继续进行分析,将IDA中间数据库打包,下次继续打开就可以进行分析;如果不需要继续分析,选择不要打包,不要存储数据库

IDA打开应用程序时,会为其创建一个数据库,后缀为IDB。IDB由4个文件组成,后缀为id0的二叉树形式的数据库,后缀为id1的程序字节标识,后缀为nam的Named窗口的索引信息,后缀为til的给定数据库的本地类型定义的相关信息。

一旦IDA为某个可执行程序创建数据库,它本身就不再需要访问这个可执行文件,除非使用IDA的Debug功能。

 

这样是设置是不会留下痕迹的

猜你喜欢

转载自blog.csdn.net/qq_41917908/article/details/83757238