Skip to content

多进程限制 ​

⚠️ r0capture 暂未支持子进程(:service/:push)。

现状 ​

来自 README

暂未添加多进程支持,比如:service或:push等子进程,可以使用Frida的Child-gating来支持一下。支持多进程之后要考虑pcap文件的写入锁问题,可以用frida-tool的Reactor线程锁来支持一下。

很多 App 有多个进程:

com.app              # 主进程
com.app:service      # 服务进程
com.app:push         # 推送进程

主进程的流量 r0capture 能抓,但 :service/:push 子进程的流量抓不到——因为 r0capture 只 attach 主进程。

为什么难 ​

  • 子进程独立,需 Frida 的 Child-gating 才能跟随 fork
  • 多进程并发写同一 pcap 文件需写入锁(frida-tools 的 Reactor 线程锁)
  • seq/ack 的 ssl_sessions 字典需跨进程共享

应对 ​

  • 把目标 App 名改成子进程名 attach(如 酷安:push),单独抓子进程
  • 多开 r0capture 实例分别抓不同进程,输出不同 pcap
  • 等待官方多进程支持

相关文档 ​

基于 VitePress 构建 · 教学用途