导航目标
在分析阶段,IDA 会通过检查二进制文件的符号表生成符号名称,或根据二进制文件引用位置的方式自动生成一个名称
反汇编窗口中显示的任何名称都是导航目标
双击任何一个符号,IDA 将跳转到相应的位置
这些是已经命名的导航目标
上面划红线的是交叉引用,也是导航目标
交叉引用通常被格式化成一个名称和一个十六进制偏移值
双击交叉引用文本,IDA 将跳转到引用位置
双击标有 1 的值,反汇编窗口将跳转到相应的位置,因为它们都属于给定二进制文件中的合法虚拟地址
双击标有 2 的值则不会有任何效果
跳转地址
如果反汇编窗口中没有可供双击导航的名称,可以使用反汇编窗口滚动条上下滚动窗口来找想要访问的地址
如果仅仅知道一个已命名的位置,如一个名为 foobar 的子程序,可以选择对函数窗口按字母排序,滚动到想要的名称,然后再双击该名称
也可以使用 IDA 的 Search 菜单的搜索功能
跳转到一个已知的反汇编位置,可以用 Jump 菜单下的 Jump to Address 选项,快捷键为 G
导航历史记录
IDA 具有前进和后退导航功能,基于浏览反汇编窗口的顺序
每次导航到反汇编窗口中的一个新位置,当前的位置就会添加到位置列表中
Jump -> Jump to Previous Position 命令使反汇编窗口跳转到当前位置的前一个位置,快捷键为 Esc
在反汇编窗口以外的其他窗口中,使用 ESC 键会关闭当前窗口,可以使用 View -> Open Subviews 命令重新打开关闭的窗口
Jump -> Jump to Next Position 命令将反汇编窗口移动到列表中的下一个位置,快捷键为 Ctrl+Enter
工具栏上有前进和后退按钮,每个按钮旁边还有一个历史记录下拉列表