-
-
[IDA使用技巧]#011: 快速创建结构
-
2024-4-15 13:49
1588
-
翻译:梦幻的彼岸
原文地址:https://hex-rays.com/blog/igor-tip-of-the-week-11-quickly-creating-structures/
在对大型程序进行逆向工程时,经常会遇到存储在结构体中的信息。标准的方法是使用 "Structures[结构] "窗口逐个添加字段,与反汇编中格式化数据项的方法类似。但还有其他选择吗?让我们来看看其它方案。
使用已格式化的数据
这一点在 关于选择的文章中已简要提及,但仍值得重复。如果你在反汇编中碰巧有一些格式化数据,并想将其组合成一个结构体,只需选中它,然后在上下文菜单中选择 "Create struct from selection[从选区创建结构体] "即可。
使用Local Types[本地类型]
本地类型视图显示数据库中使用的高级或C 级类型,如结构体、枚举和类型定义。该视图对反编译器最有用,但仍可用于汇编级类型,如结构和枚举。例如,打开本地类型(Shift–F1 or View > Open subviews > Local Types)),然后按 Ins(或从上下文菜单中选择 Insert..)。在新对话框中输入 C 语法结构定义,然后单击 "OK"。
该结构出现在列表中,但还不能用于反汇编。
要使其可用,请点击 "Yes"按钮。
在 "结构 "视图中创建了相应的汇编级类型后,就可以在反汇编中使用它了。
有关使用本地类型和两种类型的更多信息,请查看IDA 帮助主题。
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法