IDA6.8动态调试so-windows

1.打开cmd进入IDA6.8目录的dbgsrv子目录,执行以下命令:

             adb push android_server /data/local/tmp
             adb shell
              cd /data/local/tmp
              chmod 755 android_server
              su
              ./android_server

2.IDA 设置

              菜单->Debugger->Select Debugger... 选择Remote ARM Linux/Android debugger
              菜单->Debugger->Process options... HostName填写手机IP地址
              菜单->Debugger->Attack to process.. 在显示的进程列表中选择需要调试的进程。调试器附加成功后选择对应的so模块。

使用IDA调试安卓elf程序

将dbgserver拷贝到android手机的/data/data/目录下,需要root权限

D:\ProgramFiles (x86)\IDA 6.8\dbgsrv>adb push android_server /data/data/sv

3094 KB/s (523480bytes in 0.165s)

添加执行权限

D:\ProgramFiles (x86)\IDA 6.8\dbgsrv>adb shell chmod 755 /data/data/sv

启动dbgserver

D:\ProgramFiles (x86)\IDA 6.8\dbgsrv>adb shell /data/data/sv

IDA Android 32-bitremote debug server(ST) v1.19. Hex-Rays (c) 2004-2015

Listening on port#23946...

另外启动一个命令窗口输入如下命令开启端口转发:

adb forward tcp:23946 tcp:23946

启动ida的调试器,先选择run和是attach(根据需要),调试器选择Remote ArmLinux/Android debugger

Attach方式

Hostname写localhost,port 23946

然后选择进程attach

Run方式

启动一个新进程

设置相关属性项。

注意这些路径都是是在android手机上的路径,如果程序在PC上需要先push到设备上,添加执行权限:

如果出现:

Bogus or irresponsive remote server

错误

在adb shell中执行

setenforce 0

关闭selinux安全机制(需要root权限)

你可能感兴趣的:(IDA6.8动态调试so-windows)