Linux 下 对USB抓包是 使用USBMON 即 usb monitor模组来进行抓包操作。需要Linux在编译时打开CONFIG_USB_MON。
挂载debugfs文件系统
sudo mount -t debugfs none_debugs /sys/kernel/debug
确认内核中是否有加载usbmon模块
lsmod | grep usbmon
或者
ls /sys/module/usbmon
如果发现没有对应的目录或者模块,则表示需要加载usbmon
modprobe usbmon
抓取USB日志
最好先用lsusb –t 查看一下需要抓哪个USB总线的数据
如果要抓所有总线的数据就指定usbmon0,其他usbmon设备一一对应USB的各个总线
采用如下命令可以抓取 usb通信过程数据
sudo tcpdump -i usbmon1 -w usbmon11.pcap
对应文件导出后用wireshark 打开就能看到数据
当然也可以直接cat usbmon1 设备,但是全是数据需要自己解析 比较繁琐。