-v / -verbose:详细输出
🖨️ 在控制台打印每条流量的 hexdump、五元组、SSL 会话 ID、调用栈。
作用
打开后,每抓到一条流量,on_message 回调会向控制台打印:
- SSL Session ID —— 用于关联同一会话的多个包
- 五元组 ——
[函数] 源IP:源端口 --> 目的IP:目的端口 - hexdump —— 明文字节的「偏移量 + 十六进制 + ASCII」三栏渲染
- 调用栈 —— 触发本次收发的 Java 调用栈(定位收发包函数用)
用法
bash
# verbose 默认就是开启的
python3 r0capture.py -U 酷安 -v -p out.pcap
# 不加 -v 也会开(default=True),但显式写更清晰
python3 r0capture.py -U 酷安注意 default=True
源码里 -verbose 的 default=True,所以即使不写 -v,详细输出也是开的。这与其他工具"不写就不输出"的惯例不同。
输出示例
SSL Session: 59FD71B7A2C3...
[SSL_write] 192.168.1.5:54321 --> 93.184.216.34:443
GET / HTTP/1.1
Host: example.com
User-Agent: okhttp/4.9.1
...
at com.example.api.HttpClient.post(HttpClient.java:42)
at com.example.api.ApiService.login(ApiService.java:88)
...hexdump 渲染
由 myhexdump.py 的 hexdump() 完成,调用方式:
python
gen = hexdump.hexdump(data, result="generator", only_str=True)
str_gen = ''.join(gen)
logger.info(f"{str_gen}")result="generator":返回生成器,逐行惰性求值,处理大流量时省内存only_str=True:只取 ASCII 可读栏(不打印十六进制栏),适合纯文本流量