IDA pro 7.0版本

from:freebuf

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

首先,IDA pro的长相如下:

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

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

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

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

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

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

蓝色:表示代码段。

棕色:表示数据段。

红色:表示内核。

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

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

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

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

(1)IDA View-A

(2)Hex View-1

(3)Structures

(4)Enums

(5)Imports

(6)Exports

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

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

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

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

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

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

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

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

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

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

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

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

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

4.Serach 是用来搜索的。

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

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

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

IDA 逆向工程 反汇编使用相关推荐

  1. [系统安全] 三.IDA Pro反汇编工具初识及逆向工程解密实战

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  2. 基于 ida 的反汇编转换 Obj 的可行性 笔记(1)

    标 题: [原创]基于 ida 的反汇编转换 Obj 的可行性 笔记(1) 作 者: dummy 时 间: 2007-08-18,16:33 链 接: http://bbs.pediy.com/sho ...

  3. ida pro 反汇编 Android so 库后修改 arm 汇编指令的方法总结

    1 前言 最近博主在学习Android逆向的时候,参照吾爱破解论坛的<教我兄弟学Android逆向系列课程>学习的时候,学到第8章<教我兄弟学Android逆向08 IDA爆破签名验 ...

  4. IDA Pro 反汇编窗口基本操作

    反汇编窗口也叫IDA-View窗口. 反汇编窗口有两种显示格式:默认的基于图形的视图,面向文本的列表视图. 在打开的反汇编窗口中,可以使用空格键在图形视图与列表视图之间切换. 图形视图将一个函数分解成 ...

  5. 基于 ida 的反汇编转换 Obj 的可行性 笔记(2)

    前面一章讲述了一个简单的 exe 智能反汇编引擎推导实现方法,但是实际操作要比上文要困难的多, 其中涉及很多烦琐的细节, 这里不进行进一步的讨论. 现在公认静态分析比较强的工具是 ida, 它有的智能 ...

  6. 0.IDA的反汇编算法方式

    1.线性扫描 原理: 一条指令结束,另一条指令开始 关键: 确定起始位置 流程: 从起始,逐条反汇编指令,直到完成整个代码段 优点:        可覆盖程序的所有代码段 缺陷:        如果代 ...

  7. IDA-逆向分析-工具教程-IDA简介-反汇编工具-功能窗口

    文章目录 1.IDA简介 2.逆向与反汇编工具 2.1.文件识别工具 2.2.PE Tools 2.3.PEiD 3.IDA 窗口 3.1.二进制加载器 3.2.创建数据库 3.3.反汇编窗口 3.4 ...

  8. CTF逆向-IDA Pro攻防世界Hello CTF

    文章目录 前言 Hello CTF IDA反汇编 Flag值计算 总结 前言 交互式反汇编器专业版(Interactive Disassembler Professional),人们常称其为 IDA ...

  9. 写给小白看的,逆向工程怎么上路?

    什么是逆向工程 先给大家出一道思考题 用C语言设计一个程序,验证输入的密码是否是"12345678",如果验证成功,就输出"success",如果验证失败,则输 ...

最新文章

  1. Blender全流程制作真实感3D产品学习教程
  2. BZOJ 2028 [SHOI2009]会场预约
  3. AAD Connect 微软官方的描述准确吗?
  4. python希尔排序的优缺点_Python排序搜索基本算法之希尔排序实例分析
  5. 基于python的界面自动化测试-基于python的接口自动化测试+ddt数据驱动
  6. select sqlite 唯一_SQLite Select 语句
  7. Python3压缩和解压缩实现
  8. Vivado关联Modelsim进行仿真
  9. android combobox控件,Android中的组合框
  10. BAT文件命名中含有英文括号运行出错
  11. extjs 渲染之前的方法_Unity通用渲染管线(URP)系列(十一)——后处理(Bloom)...
  12. mybatis SqlMapConfig.xml typeAliases
  13. 第四范式完成超10亿元C轮融资,估值12亿美元
  14. Lintcode 138. 子数组之和 [Easy]
  15. 类的封装,继承和多态
  16. 使用highcharts绘制图表,如何在tooltip里显示服务器端的其他数据
  17. uniapp 打包成微信小程序
  18. 奇安信与360的恩怨情仇:A股决战企业安全
  19. 计算机c盘装什么,电脑只有一个C盘!怎么为电脑重装系统?
  20. 【复习】物联网导论知识梳理

热门文章

  1. java写一个外网访问的接口_【JAVA基础】一个案例搞懂类、对象、重载、封装、继承、多态、覆盖、抽象和接口概念及区别(中篇)...
  2. matlab拟合双自变量双指数函数曲线,怎样用MATLAB拟合两个自变量的函数系数和指数?...
  3. 无线对讲调度服务器,无线对讲系统---智能调度系统
  4. matlab运行容量小,可变大小(运行时)输入Simulink Matlab
  5. java泛型的泛型_Java 泛型总结(一):基本用法与类型擦除
  6. 深度学习为什么要resize_为什么要学习演讲与口才
  7. 一键进入dfu模式软件_dfu模式是什么 dfu模式介绍及进入方法【详解】
  8. 计算机专业考研可以转专业不,学术可以转专业吗考研
  9. 机器学习(MACHINE LEARNING)MATLAB中微分方程的求解
  10. 桶排序python实现