Ghidra反汇编操作全解析
1. 反汇编操作概述
在软件逆向工程中,Ghidra提供了强大的反汇编操作功能。除了导航功能外,反汇编修改是其另一重要特性。它能让用户轻松操作反汇编内容,添加新信息或重新格式化列表以满足特定需求。而且,由于Ghidra的底层结构,对反汇编所做的更改能轻松传播到所有相关视图,确保程序呈现一致的画面。同时,Ghidra还能自动处理一些操作,如上下文感知的搜索和替换,并且能轻松地将指令重新格式化为数据,或将数据重新格式化为指令。更棒的是,几乎所有操作都能撤销。
2. 操作名称和标签
2.1 标识符类别
在Ghidra反汇编中,有两种标识符:标签(与位置相关的标识符)和名称(与栈帧变量相关的标识符)。通常,我们将两者都称为名称。栈帧变量名称根据变量是参数(以 param_ 为前缀)还是局部变量(以 local_ 为前缀)有不同的前缀。在自动分析过程中,位置会被分配带有有用前缀的名称/标签,如 LAB_ 、 DAT_ 、 FUN_ 等。
2.2 重命名参数和局部变量
重命名栈变量时,这些名称与特定虚拟地址无关,且作用域限于所属函数。要重命名变量,可在列表窗口中点击名称,然后使用热键 L 或右键菜单中的“Edit Label”选项打开重命名对话框。例如,将 demo_stackframe 函数中的 local_14 重命名为 y
超级会员免费看
订阅专栏 解锁全文
2541

被折叠的 条评论
为什么被折叠?



