IDA 动态调试 ELF 文件
01 IDA 远程调试配置
- Windows 下的 IDA
- 在 IDA 的安装目录/dbgsrc/找到 linux_server 和 linux_serverx64 拷贝到 linux 虚拟机中
- 在 linux 中运行 linux_server 并在 linux 中运行要调试的 demo
- Debugger -- Attach -- Remote Linux debbuger
- Linux 下的 IDA
配置方法和 Windows 相同
#!/bin/bash
cd /home/ubuntu/IDA/dbgsrv/ && ./linux_server & cd /home/ubuntu/re_tools/IDA/ && ./idaq
运行 ./demo
[Debugger] -> [Attach] -> [Remote Linux debugger]
02 IDA 动态调试
- 调试指令
单步步入(F7) | 遇到函数,将进入函数代码内部 |
单步步过(F8) | 执行下一条指令 |
运行到光标处(F4) | |
断点(F2) | 可以通过 [Debugger]-[Breakpoints]-[Breakpoint list] 查看断点,右键 [Edit] 可以设置断点 |
继续运行(F9) | |
终止(CTRL-F2) | 终止一个正在运行的调试进程 |
运行至返回(CTRL-F7) | 一直在函数代码内部运行,直到遇到RETN(或断点)时才停止. |
- 添加寄存器监视
[Debugger] -> [Debugger windows] -> [Watch view]
可以添加的类型有
(Object*)v0
(String)v0
(char*)v0
(int)v0
03 参考链接
http://blog.csdn.net/txx_683/article/details/53454139
http://www.freebuf.com/articles/system/67927.html
There is no end to learning.
--Hx--