-
-
[IDA使用技巧]#03: IDA中的选择功能
-
发表于:
2024-2-25 17:37
2480
-
翻译:梦幻的彼岸
原文地址:https://hex-rays.com/blog/igor-tip-of-the-week-03-selection-in-ida/
本周的主题是在 IDA 中选择项目以及如何使用选择结果。
与前几篇主要使用键盘的文章相比,这次我们将使用鼠标!
操作及其应用对象
在IDA中执行某个操作时,默认情况下,该操作仅应用于光标所在的项目或当前地址(具体取决于操作)。但是,有时您可能希望对更多项目或地址范围执行该操作,例如:
- 取消定义一系列指令;
- 如果 IDA 无法自动将未定义字节范围转换为字符串字面量(例如字符串不是空端),则将其转换为字符串字面量;
- 从一系列指令创建一个函数,中间包含一些数据(例如,当你遇到可怕的 "函数在指定地址有未定义的指令/数据 "错误时);
- 只导出反汇编或反编译选定的函数,而不是整个文件;
- 将反汇编的选定片段复制到剪贴板。
IDA中的选择功能
在 IDA 中选择某些内容的最简单方法与任何文本编辑器相同:
- 用鼠标单击并拖动(也可以在按住左键的同时用滚轮滚动);
- 按住 Shift 键,使用光标导航键(← ↑ → ↓ PgUp PgDn Home End 等)。
不过,如果您需要选择一大块列表(如几屏),这样做很快就会变得很累。在这种情况下,锚点选择功能就派上了大用场。
使用锚点选择功能
- 移动到目标选区的起点,选择编辑 > 开始选区(或使用快捷键 Alt-L)。
- 使用任何方式(光标键、跳转操作、功能窗口、导航栏等)导航到选区的另一端。
- 执行操作(通过上下文菜单、键盘快捷键或全局菜单)。该操作将应用于从锚点到当前位置的选区。
例子
使用选择功能的部分操作
- Commands in the File > Produce file submenu (create .ASM, .LST, HTML or .C file) // "文件中的命令" > "创建文件子菜单 " (创建 .ASM、.LST、HTML 或 .C 文件)
- Edit > Export data (Shift + E) //编辑 > 导出数据
一些更复杂的需要选择功能的操作将在接下来的文章中讨论。保持关注,我们下周五再见!
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)