0x00 环境及此文背景

待调试ELF文件
IDA 7.0
主机:Windows 10
虚拟机:Kali Linux
达成效果:在Window上利用IDA远程动态调试linux里的ELF文件
成文背景:在做攻防世界的一道基础逆向题目时遇到了一个ELF文件想看看文件的进行流程,发现Linux里面多是有gdb,radare2等命令行神器,习惯了windows上的GUI突然要用用命令行有点不熟悉,所以就有了此文。

0x01 具体步骤

1.把idapro安装目录中dbgsrv目录下的linux_server或者linux_server64放到linux中(根据自己要调试的程序选择哪个版本的,放置的路径随意)
01.jpg
linux_server:用于调试32位Linux应用程序。
linux_server64:用于调试64位Linux应用程序。

2.打开终端,提权运行对应服务程序
使用cd命令打开服务程序所在目录,chmod a+x linux_server64 进行提权,然后运行 linux_server64。具体linux下chmod +x的意思?为什么要进行chmod +x可以看这篇文章
服务程序路径地址.jpg
03.jpg
看到箭头所指的状态即Linux配置完毕。现在到Windows界面进行配置。

下面的步骤很重要

3.在IDA中按F9选择Remote Linux debugger,然后在Debug application setup中设置相关相关参数。
04.jpg

05.jpg

3.1. Application和Input file的路径为linux中要调试程序的完整路径,Directory直接输入属性中的父文件夹(除去程序的完整路径)

3.2 Parameters和Password 放空 Hostname要回到Linux终端中使用ifconfig命令查看IP地址。
06.jpg

4.到这里就基本上完成了,在IDA下断点,然后在按开始键程序就在Linux里跑起来了,后面就可以自己调试了。
07.jpg

0x02 参考文章

ida动态调试elf(无坑详细)
IDA动态调试ELF
《IDA+Pro权威指南(第二版)》