Skip to content

抓 WebSocket 流量配方 ​

🔌 抓 App 的 WebSocket(WSS)全双工通信。

思路 ​

WSS 走 SSL,r0capture 经 SSL_read/SSL_write 通杀。握手借 HTTP 升级,之后是 WebSocket 帧。

步骤 ​

1. 抓包 ​

bash
python3 r0capture.py -U -f com.app -v -p out.pcap

2. 触发 WebSocket ​

操作 App 进入需实时通信的页面(聊天、实时数据)。

3. 识别 WebSocket ​

  • 握手:SSL_write 里 GET /ws ... Upgrade: websocket,SSL_read 里 HTTP/1.1 101
  • 帧:之后 SSL_write/SSL_read 的载荷是 WebSocket 帧格式

4. Wireshark 解析 ​

r0capture 的 pcap 里,Wireshark 能自动识别 WebSocket 帧并解析 opcode(text/binary/close/ping/pong)。Follow TCP Stream 看完整对话。

5. 帧内容 ​

  • text 帧:JSON 等文本,直接读
  • binary 帧:可能 Protobuf,需解析

注意 ​

r0capture 抓到的是已解掩码的 payload(mask 由 WebSocket 库在 SSL 层之上处理)。

相关文档 ​

基于 VitePress 构建 · 教学用途