《从0到1CTFer成长之路》逆向工程个人笔记--静态分析

上一篇文章:《从0到1CTFer成长之路》逆向工程个人笔记--逆向工程基础

IDA 使用入门

加载文件

打开 IDA,点击 GO,即可把程序拖拽到 IDA 中

IDA 分为 32bit 和 64bit 两种架构,选择哪种结构,可以在把程序拖拽到 IDA 后,根据 Load a new file 界面决定是否更换另一种架构

界面介绍

  • 1:导航栏(程序不同类型的数据:普通函数,未定义函数的代码,数据,未定义)
  • 2:反汇编主窗口
  • 3:函数窗口(函数名称+地址)
  • 4:输出窗口(下方输入框可以输入命令)
  • 5:状态指示器(AU:idle 代表 IDA 完成了对程序的自动化分析)

数据类型

在反汇编窗口,右键菜单或按空格键可以在控制流图和文本界面之间切换

IDA 会将代码段多数数据正确标注为代码类型,并反汇编,特殊段部分位置标注为 8 字节整型 qword,用户可自行纠正

被标注为代码的位置:地址黑色显示

被标注为数据的位置:地址灰色显示

未定义数据类型的位置:显示黄色

定义数据类型的快捷键

  • U 键:取消一个地方已有的数据类型定义
  • D 键:让某一个位置变成数据,一直按,会改变字节大小(1/2/4/8)
  • C 键:让某一个位置变成指令,定义为指令后,IDA 会自动以此为起始位置进行递归下降反汇编
  • A 键:以该位置为起点定义一个以“\0”结尾的字符串类型
  • *键:将此处定义为一个数组,可设置数组属性
  • O 键:将此处定义为一个地址偏移

函数操作

反汇编不是完全连续的,而是由分散的各函数拼凑而成的。

每个函数都有局部变量、调用约定等信息,控制流图也只能以函数为单位生成和显示,所以需要正确定义函数

  • 删除函数:在函数窗口中选中函数后,按 Delete
  • 定义函数:在反汇编窗口中选中对应行后&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值