整理一下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/