快速创建结构体
在逆向工程大型程序时,通常会遇到存储在结构中的信息。标准的做法是使用“结构体”窗口,逐个添加字段,类似于在反汇编中格式化数据项的方式。但是,还有其他选择吗?让我们看看其中一些。
使用已经格式化的数据
这在选择的帖子中简要提到过,但值得重复一下。如果你在反汇编中有一些格式化的数据,并想将它们分组成一个结构体,只需选择它们,然后在上下文菜单中选择“Create struct from selection”。
使用本地类型
本地类型视图显示数据库中使用的高级或C级别类型,例如结构体、枚举和 typedef。
在反编译器中,它非常有用,但仍然可以用于汇编级别的类型,例如结构体和枚举。例如,打开本地类型(Shift–F1 或View > Open subviews > Local Types),然后按Ins键(或从上下文菜单中选择插入..)。在新对话框中输入一个C语法结构定义,然后点击确定。
结构出现在列表中,但目前还不能在反汇编中使用。
要使其可用,请双击它,并回答“是”。
现在在结构视图中创建了相应的汇编器级别类型,它可以在反汇编中使用。
原文始发于微信公众号(二进制磨剑):IDA 技巧(11)玩转结构体!
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论