一.xserver准备
项目地址
https://github.com/monkeylord/XServer
安装包
https://github.com/monkeylord/XServer/releases/tag/0.7.1
二.使用
通过Xposed启动
- 确保Xposed框架已经正确安装
- 安装XServer并确保在Xposed中启用XServer
- 在XServer应用选择器中选中目标应用
-
启动目标应用
- 如果XServer没有启动,可能是目标应用早已启动,然后才选择的目标应用,已错过目标应用判断时机。此时,可以关闭目标应用重新打开。
- 如果切换目标应用,原目标应用中的XServer依然在工作和占用端口。可以关掉原目标应用再启动新目标应用。
- 选择应用后直接重启设备最简单,如果你使用模拟器的话。
-
通过ADB转发XServer端口:
adb forward tcp:8000 tcp:8000
-
目标应用可能存在多个进程,针对这种情况,XServer在进程PID对应的端口也打开了监听。若8000端口对应的进程不是目标应用主进程,可以使用另一个命令修正:
adb forward tcp:8000 tcp:[目标进程PID]
-
目标应用可能存在多个进程,针对这种情况,XServer在进程PID对应的端口也打开了监听。若8000端口对应的进程不是目标应用主进程,可以使用另一个命令修正:
- 通过http://127.0.0.1:8000/ 访问XServer
通过Frida启动
- 确保Frida-Server已经启动
-
确保XServer已在设备中
- 在目标设备中安装XServer(无需Xposed框架)
-
将XServer对应APK放置在
/data/local/tmp/xserver.apk
-
使用Frida加载XServer.js以启动XServer:
frida -U [目标应用包名或进程PID] -l XServer.js
-
通过ADB转发XServer端口:
adb forward tcp:8000 tcp:8000
- 通过http://127.0.0.1:8000/ 访问XServer