在windows上使用ida远程调试mac电脑上的app
文章目录
1. 以管理员权限打开ida的调试服务器
1.1 找到对应的ida调试服务器
到ida文件地址中找到dbgsrv文件夹:
C:\Program Files\IDA Pro 7.5 SP3\dbgsrv
我要远程调试的是mac64位电脑,所以选择mac_server64
,将文件放入目标mac电脑中。
1.2 以管理员权限开启服务
在mac电脑上打开终端,使用命令:
sudo mac_server64
输入密码后,显示了服务开启的端口,服务开启成功
2. ida远程连接调试服务器
2.1 mac电脑连接windows电脑的热点
即使在同一个局域网中,也可能没办法建立连接,mac可能拒绝访问,所以最稳妥的办法就是,windows开热点给mac电脑连
2.2 直接调试
打开一个新的ida窗口,
在菜单中选择:debugger->run->remote Mac OS X debugger
在弹出来的窗口中输入热点分配给mac的ip地址,端口保持默认:
其中,
application
为app在mac上的地址,比如:/user/local/X.app
directory
为app所在的目录,比如:/user/local/
parameters
为程序启动参数,没有可以不填
然后点击ok
2.3 附加调试
打开一个新的ida窗口,
在菜单中选择:debugger->attach->remote Mac OS X debugger
在弹出来的窗口中输入热点分配给mac的ip地址,端口保持默认:
然后点击ok,连接成功后表现:
mac端:
win端:
然后选择你需要附加调试的进程就OK
2.4 结束调试
在终端中使用command
+.
可以直接安全的结束服务。
如果直接关闭终端,服务可能并未关闭。
3. 遇到问题与解决方案
持续更新ing,有问题可以在评论区反馈或直接私信我。
3.1 "address already in user"
:端口已被占用
mac启动调试服务器时遇到的问题。
可能是之前进行了连接但结束之后进程并没有关闭,或者是其他进程占用了服务监听的端口。
解决方案:终止掉占用端口的进程
首先,查看端口号被占用情况
sudo lsof -i :23946
然后终止掉那个进程
sudo kill -9 {PID}