首页
社区
课程
招聘
[原创]分析实战读书笔记3_IDA小知识
发表于: 2020-12-8 18:30 7514

[原创]分析实战读书笔记3_IDA小知识

2020-12-8 18:30
7514

本章讲了一些IDA的小知识,有很多是我目前还不知道的, 收集一下以后能用得上

image-20201208164406556

将样本拖入IDA后勾选Manual load, 然后点击OK,输入基地址,这样可以在IDA进行加载时就执行基址重定向相关工作,同时,这种操作还有另一个好处, 可以让IDA显示PE头部数据.

image-20201208164735193image-20201208164803688

点击顶部菜单栏Options->Genaral, 将Number of opcode....设置为10,就可以看到硬编码了

image-20201208165026091

图中红色箭头表示跳转未执行
绿色箭头表示跳转执行了
蓝色箭头表示无条件跳转

image-20201208165417898

如图所示, 虚线箭头表示条件跳转, 实线箭头表示无条件跳转 , 向上的箭头一般代表循环

image-20201208165551516

函数窗口中列出了IDA解析出的所有函数,并关联了相关属性如开始地址,结束地址,长度,类型等 (之前竟然没注意到这个窗口还有后面的部分)

image-20201208165744379

名字窗口展示了IDA解析出来的函数名称,字符串名称,变量名称等一些名称字符串.

image-20201208165845003

字符串窗口显示了IDA解析出来的字符串,但是仅支持ASCII码字符串展示

分别展示了程序的导入函数 导出函数 已识别的结构体

image-20201208170513160

当你乱拖动窗口发现弄不回去了的时候, 点击Reset desktop可以将各个窗口位置重置, 同样的, 点击Save desktop也可以保存你设置好的窗口布局

image-20201208170717046

IDA中的地址是内存中拉伸后的地址, 当你在HEX查看器里发现一些有趣的数据时,可以通过Jump to file offset直接输入文件偏移进行跳转, 省去了我们手动进行地址转换的时间.

Alt+T 搜索字符串,可以搜索指令的字符串 如 fs:

Alt+B 搜索字节数据, 如 30 00 00 00

当IDA无法正确识别一段函数时,可以按P手动要求IDA识别函数

Alt+P可以指定函数的细节,如开始位置,结束位置,是否为EBP寻址,参数变量默认长度等

1123

image-20201208171336313

image-20201208171444885

如图, IDA将0x410000识别为了一个内存地址, 我们可以按下O让IDA将其识别为一个普通的立即数,如下图

image-20201208171614022image-20201208171625333

image-20201208173010597

当一个函数的参数类似图上这种展示,肯定不易阅读的, 鼠标放在数据上, 按M,可以将常量0指定为宏名称

image-20201208173301477

dllmain的地址是0x1000d02e

image-20201208173419539

定位到了0x100163CC

image-20201208173516357去除重复引用,共5个函数调用了共9次

image-20201208173654419

image-20201208173708244

pics.praticalmalwareanalys.com将被触发

image-20201208173902134

函数头部说明了参数个数为1个,因此识别出的局部变量个数为23个


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 3
支持
分享
最新回复 (2)
雪    币: 2373
活跃值: (1051)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
多谢分享,但是课后题的文件在哪?
2021-2-2 18:26
0
雪    币: 1484
活跃值: (14662)
能力值: ( LV12,RANK:380 )
在线值:
发帖
回帖
粉丝
3
rushmaster 多谢分享,但是课后题的文件在哪?
我主页  分析笔记1里有网盘链接
2021-2-3 09:28
0
游客
登录 | 注册 方可回帖
返回
//