Skip to content

-H / -host:连接远程 frida-server ​

🌐 当 frida-server 监听在非标准端口或远程设备上时,用 -H ip:port 连接。

为什么需要 ​

默认 -U(USB)模式下,frida 走标准 adb 转发到设备端的 frida-server。但有两种情况 -U 不适用:

  1. frida-server 开在非标准端口:有些 App 会检测 frida 的标准端口 27042,把它开在别的端口可以绕过检测
  2. 远程设备:frida-server 跑在另一台机器上(如云服务器、网络 adb 设备),需要显式指定 ip:port

用法 ​

bash
# 连接远程 frida-server(IP:端口)
python3 r0capture.py -H 192.168.1.100:27042 -v 酷安 -p out.pcap

# 配合 spawn
python3 r0capture.py -H 192.168.1.100:27042 -f com.app.package -v

内部实现 ​

对应 r0capture.py 中的代码:

python
if host:
    manager = frida.get_device_manager()
    device = manager.add_remote_device(host)

add_remote_device 会与指定 ip:port 上的 frida-server 建立 RPC 通道,之后所有 spawn / attach / resume 都走这个通道。

与 -U 的区别 ​

维度-U(USB)-H host(远程)
设备发现get_usb_device()add_remote_device(ip:port)
典型场景USB 真机、redroid 云手机经 adbfrida-server 在非标准端口、远程机器
端口检测规避否(走标准端口)是(端口自选)
网络要求USB 线 / 本机 adb网络可达 frida-server 端口

USB 模式的容错

-U 内部先试 get_usb_device(),失败时自动退回 get_remote_device(),以兼容某些 redroid / 网络 adb 场景。

相关文档 ​

基于 VitePress 构建 · 教学用途