IDA动态调试

1. 加载目标文件,选择调试器

使用IDA打开目标文件。使用菜单项上的"Debugger",单击"Select Debugger",再根据当前的文件类型选择合适的调试器。我这里调试exe文件时一般使用 Local Windows debugger 或 Remote Windows Debugger。

这里需要注意的是,在IDA7.0版本中,Local windows debugger有一些bug,导致其在调试时会报如下错误
"Oops! internal error 1491 occured."
这里为了解决上述的bug,应该按照如下操作

  1. 选择Remote Windows debugger

  2. 到IDA的安装目录下的 /dbgsrv/文件夹下,打开 win32_remote.exewin64_remote.exe,根据打开的IDA版本进行选择。
    https://ae01.alicdn.com/kf/U3a3ccc29b45b435eb2fef5c0462887b7g.jpg

  3. [Debugger] 中选择 [start process],在参数设置框中将 Hostname 设置为 127.0.0.1
    https://ae01.alicdn.com/kf/U78598cbde09249caac5e9d0e1fda9519j.jpg

  4. 执行完上述步骤以后,就可以进入调试界面啦

2. 调试界面

https://ae01.alicdn.com/kf/U684f0d5ec9444943812347f483fd1a3bH.jpg

3. 调试跟踪常用快捷键

IDA快捷键 功能
F7 单步步进,遇到call/指令跟进
F8 单步步过,遇到call指令不跟进
F4 运行到光标所在的行
Ctrl + F7 知道该函数返回时才停止
F9 运行程序
Ctrl+F2 终止一个正在运行的进程
F2 设置断点

4. 常用调试属性设置

  • 在Debugger options中设置 Suspend on process entry point
    https://ae01.alicdn.com/kf/U596aec6cd8d742f8aed12aefeaeeeb48T.jpg

参考

posted @ 2021-02-23 15:52  bunner  阅读(276)  评论(0编辑  收藏  举报