Frida学习-Frida通信原理
从tcpdump开始
我们在研究Frida检测与绕过的时候,一直绕不开的几个点
扫描Frida server的默认端口27042
读/proc/self/task/检测特征线程,比如
1 | 2026-03-04 13:03:09.451 11077-11077 FridaDetect twogoat.checker2 E Thread Detection: gmain |
读/proc/self/maps,检查是否存在frida-agent.so
这些特征检测的绕过方法非常多且简单,无非就是服务开在另外的端口,把比较结果改了
那么是否有认真思考过,这个27042的端口到底是谁在用,frida-agent.so到底是怎么和server通信的,sever又是如何与主机的rpc通信的
直接尝试使用tcpdump抓一下包
1 | tcpdump -i lo -s 0 -w frida_all.pcap tcp |
在tcp流中,可以看到显示建立了一个Websocket通信,猜测是rpc与server之间的建立连接

然后就是一个超长的tcp通信记录,可以看到其中出现了/frida/repl-1.js

而/frida/repl-2.js中,就是我们注入脚本的内容

而在后面的内容中,就是我们平常所说的“Hook”的内容,返回了从内存中读取的结果,js脚本的输出等等
而这里就是server和agent之间的通信,使用了D-Bus协议

- 标题: Frida学习-Frida通信原理
- 作者: 两只羊
- 创建于 : 2026-05-04 15:54:28
- 更新于 : 2026-05-06 11:28:37
- 链接: https://twogoat.github.io/2026/05/04/Frida学习-Frida通信原理/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论