飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 212|回复: 0

[其它] [IDA使用技巧]#017: 交叉引用 2

[复制链接]
  • TA的每日心情
    开心
    2019-3-15 11:00
  • 签到天数: 262 天

    [LV.8]以坛为家I

    发表于 2024-4-15 13:35:28 | 显示全部楼层 |阅读模式
    翻译:梦幻的彼岸
    交叉引用视图
    当你只有少量交叉引用时,跳转到 xref操作已经足够好了,但如果你有成百上千个交叉引用呢?在这种情况下,交叉引用视图可能会很有用。您可以使用 "视图">"打开子视图 "菜单中的相应项目打开它。IDA 将收集当前拆解地址的交叉引用,并在单独的选项卡中显示。甚至可以同时打开多个此类视图(针对不同的地址)。
    添加交叉引用
    在某些情况下,您可能需要手动添加交叉引用,例如修复被混淆函数的控制流图,或添加调试时发现的间接调用指令的调用交叉引用。有几种方法可以做到这一点。
    • 在交叉引用视图中,从上下文菜单中选择 "添加交叉引用... "或按 Ins 键。 在对话框中输入源地址和目标地址以及 xref 类型。
    • 对于PC(x86/x64)、ARM 或MIPS处理器二进制文件中的间接调用,可以使用 "Edit > Plugins > Set callee address"(Alt + F11)。
    • 要以编程方式添加交叉引用,请使用 IDC 或 IDAPython 函数 add_cref和add_dref。使用XREF_USER标志和 xref 类型可确保 IDA 在重新分析时不会删除交叉引用:
      add_cref(0x100897E8, 0x100907C0, fl_CN|XREF_USER)
      add_dref(0x100A65CC, 0x100897E0, dr_O|XREF_USER)

    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表