https://github.com/fgsect/scat ( Signaling Collection and Analysis Tool)
安装pyUSB和pySerial
apt install python3-usb python3-serial
在手机上暴露diag端口(跟使用qxdm一样)
setprop sys.usb.config diag,adb
建议直接使用usb接口来使用SCAT
lsusb ... Bus 001 Device 033: ID 05c6:901d Qualcomm, Inc. ...
可以看到 总线1,设备33是 我们开了diag端口的手机
安装和运行
git clone https://github.com/fgsect/scat cd scat ./scat.py -t qc -u -a 001:033 -i 0
参数解释:
-t qc 高通芯片的手机
-u 直接使用usb协议,而不是串口
-a 001:033 指定usb设备地址,1号总线,33号设备,用lsusb命令可以看到这些信息
-i 0 因为是usb复合设备,根据我们上面的设置,0是diag, 1是adb. 这个应该根据不同手机开启diag的情况调整
默认情况下,SCAT将手机到的包发给127.0.0.1 (可以通过 -H 指定发送的地址)
控制平面的包,以GAMTAP协议,发送到UDP端口4729
用户平面的包,以IP协议,发送到UDP端口47290
wireshark选中 loopback设备, 过滤条件 为 port 4729 and udp