RE套路 - 关于使用IDA 7.0前端进行的动态调试

整理一下IDA 7.0下几种常见文件类型的动态调试。

环境是win10+WSL2(WSL1调Linux文件一直有bug搞不定= =建议升2)。

P.S. 以下操作均在断点设置完毕以后进行,IDA动态调试开始时不会停在程序入口处,而会停在第一个断点或需要控制台进行相应操作处。

Windows

64位

选择debugger

在IDA中:Debugger -> Select debugger -> Local Windows debugger -> OK

开始调试

按F9即可开始调试。

32位

选择debugger

同Windows 64位操作。

进行设置

IDA 7.2及高版本中win32位程序可不用进行如下配置就能进行动态调试。

打开IDA目录下./dbgsrv/win32_remote.exe

图中所选的高亮部分即为ip地址,ip地址左侧0.0.0.0:23946处23946即为端口号。

在IDA中:Debugger -> Process options,打开调试配置窗口。

将ip地址填入Hostname一栏,端口号填入Port一栏,其余为默认。

开始调试

同Windows 64位操作。

Linux

64位

选择debugger

在IDA中:Debugger -> Select debugger -> Remote Linux debugger -> OK

进行设置

将IDA目录下./dbgsrv/linux_server64复制到需要调试的文件同目录下。

打开WSL2并定位至该目录。

第一次使用需给权限(偷懒直接给777),不然./linux_server64无法运行

1
chmod 777 ./linux_server64

运行./linux_server64

在IDA中:Debugger -> Process options,打开调试配置窗口。

红框处将Application和Input file均改为./文件名(例如此处文件名为linux64,则改为./linux64);Directory处清空(意思为当前目录)。

蓝框处Hostname一栏填127.0.0.1(代表本机),Port一栏填端口号(linux_server64处的23946)。

开始调试

同Windows 64位操作。

32位

其余操作均与Linux 64位同,除了要把所有的./linux_server64换成./linux_server。c10udlnk.top/

本文作者: c10udlnk
本文链接: https://c10udlnk.top/p/reSkillsOn-Debugging/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 c10udlnk_Log (https://c10udlnk.top)!