USBPcap is an open-source USB Packet Capture tool for Windows that can be used together with Wireshark in order to analyse USB traffic without using a Virtual Machine.
Currently, the live capture can be done on “standard input” capture basis: you write a magic command in cmd.exe and you get the Wireshark to capture raw USB traffic on Windows.
USBPcapDriver has three “hats”:
- Root Hub (USBPCAP_MAGIC_ROOTHUB)
- Control (USBPCAP_MAGIC_CONTROL)
- Device (USBPCAP_MAGIC_DEVICE)
What you won’t see using USBPcap
As USBPcap captures URBs passed between functional device object (FDO) and physical device object (PDO) there are some USB communications elements that you will notice only in hardware USB sniffer.
- Bus states (Suspended, Power ON, Power OFF, Reset, High Speed Detection Handshake)
- Packet ID (PID)
- Split transactions (CSPLIT, SSPLIT)
- Duration of bus state and time used to transfer packet over the wire
- Transfer speed (Low Speed, Full Speed, High Speed)
Moreover, you won’t see complete USB enumeration. You will only see the USB control transfer send to device after the device has been assigned its address.
There is also this to check out:
You can download USBPcap here:
Or read more here.