IDA远程调试ELF

方法一:Remote Linux debugger

在IDA的/dbgsrv目录下有

image-20231202162911333

将这两个文件移动到Linux环境下,然后赋予权限:

chmod 777 linux_server
chmod 777 linux_server64

启动对应文件:

./linux_server

此时Linux环境就准备好了,接下来配置IDA,选择Remote Linux debugger调试器,然后F9,此时会出现以下内容:

image-20231202163248797

其中应用程序输入文件均为调试文件在Linux下的路径(包括文件名),目录则为上面的路径去掉文件名后的路径。主机名称为Linux的IP,端口默认23946。

注意:调试的程序也需要赋予权限

chmod 777 xxx

方法二:Remote GDB debugger

GDB需要使用gdbserver来进行远程协助,首先启动服务:

gdbserver localhost:port progress_name
  • port:指定一个闲置端口

  • progress_name:这个随意取个名字即可

接下来在IDA中配置,IDA中按下F9

image-20231202164327834

应用程序输入文件均为调试文件在Linux下的路径(包括文件名),主机名称为Linux的IP,端口为启动gdbserver时指定的端口。

注意:gdb在调试完成后不能退出,需要直接kill该进程。

# 查看gdb的PID
ps -ef | grep gdb
# kill掉对应进程
kill PID