IDA权威指南阅读笔记2
来源:互联网 发布:衢州软件开发 编辑:程序博客网 时间:2024/05/23 19:21
1.之前查看当前函数被哪个函数调用了都是去跳转到LR寄存器(arm)的地址,看这个地址在哪个函数里,现在发现这个功能IDA提供了
依次点击:View--->openSubviews--->Functions calls 即可
显示如图:
2.查看栈相对变化量:
依次点击 Options--->General,勾上 stack pointer
看看多了什么:
红框里边的部分表示的是进入一个函数后,栈相对于调用函数开始时候的栈指针的变化量,通常对抗IDA静态分析就是让IDA在执行ret指令时候,检查到栈的变化量不为0.
3.操纵函数
初步分析完成后,如果IDA无法定位一个函数调用,由于没有直接的方法到达函数,IDA将无法识别他们,因此需要手动干预。
光标放在将要包含在新建函数的第一个字节或者指令上,右键create function
那么问题来了,如何才能知道某处可能是某个函数的第一个调指令呢?对于x86,首先要保存上一个函数的栈桢,然后将当前栈顶作为当前函数的栈桢
代码:
push %ebp
mov %ebp %esp
对于arm也是有一段入栈操作保存寄存器的值
4. 函数块太多,造成分析不方便:
首次加载时候,选择kernel options2 取消选择create function tails
5.删除当前格式:Edit--->Undefine或者热键U
效果:
6.反汇编一组未定义的字节:
Edit-->code 或者热键c
7.创建数组:
edit-->arrays
阅读全文
0 0
- IDA权威指南阅读笔记2
- IDA权威指南阅读笔记1
- IDA权威指南阅读笔记3
- IDA Pro 权威指南笔记
- 《JavaScript权威指南》阅读笔记(2)
- CSS 权威指南 阅读笔记
- HTTP 权威指南 阅读笔记
- hbase权威指南阅读随手笔记<1>
- hadoop 权威指南 阅读笔记(一)
- hadoop权威指南 阅读笔记(二)
- 《ActionScript 3.0权威指南》阅读笔记
- Android 编程权威指南 阅读笔记
- Android 编程 权威 指南 阅读 笔记
- 《HTTP权威指南》阅读笔记(一)
- 《HTTP权威指南》阅读笔记(二)
- 《HTTP权威指南》阅读笔记(三)
- 《HTTP权威指南》阅读笔记(四)
- 《HTTP权威指南》阅读笔记(五)
- 线段树和rmq
- Git的简单使用教程
- Linux查看CPU和内存使用状况
- 2,Swift 学习笔记懒加载控件
- IMX6Q下tlv320aic3x音频驱动移植
- IDA权威指南阅读笔记2
- Python Linux上安装MYSQLdb
- Cocoa与Cocoa Touch区别
- 使用tomcat产生的java.lang.ClassNotFoundException: com.mysql.jdbc.Driver问题
- lintcode -- 生成括号
- POJ 3613 Cow Relays k步最短路 (floyd + 矩阵快速幂)
- 《人人都是产品经理》——第六章笔记
- C++之操作符重载
- 产生随机数的Random类的框架