app动态调试so层环境搭建
一、首先打开IDA 中dbgsrv文件夹,将里面的 android_server 传输到手机上
切换到IDA文件路径中D:\Program Files (x86)\IDA 6.8\dbgsrv
adb push android_server /data/local/tmp
二、运行android_server
复制C:\Users\cccv20>adb shell
shell@shamu:/ $ su
su
root@shamu:/ # cd /data/local/tmp
cd /data/local/tmp
1|root@shamu:/data/local/tmp # chmod 777 android_server
chmod 755 android_server
root@shamu:/data/local/tmp # ./android_server
./android_server
IDA Android 32-bit remote debug server(ST) v1.19. Hex-Rays (c) 2004-2015
Listening on port #23946...
Android_server提示端口被占用
如果Android_server提示端口被占用可以执行以下命令
root@shamu:/data/local/tmp # ps | grep android_server
root@shamu:/data/local/tmp # kill -s 9 23031
三、新打开另一个CMD窗口,端口转发
运行以下命令
adb forward tcp:23946 tcp:23946
四、运行IDA,设置Debugger
选择Remote ARMLinux/Android debugger
hostname:主机号(默认127.0.0.1)
port:端口号(之前android_server运行时的端口号或者端口转发的端口号
Debugger里面勾选三项
选择Debugger --> 点击 Debug options 按钮设置
如果是 arm linux 虚拟机和真机,选择 Remote ARM Linux/Android debugger ,如果是 x86 的虚拟机,则选择 Remote Linux Debugger
选择调试app包名
点击 OK ,就会连接到虚拟机,如果连接成功,会弹出一个窗口,上面显示了虚拟机中运行的进程
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~