USBQ is a Python-based programming framework for monitoring and modifying USB communications. Uses the kernel module from USBiquitous to implement the MITM part in the USB stack. Really does need an external device to actually sit in between the device and the system to sniff the data. Hmm.