我不时需要在Windows下转储USB流量,主要是为了支持Linux下的硬件,所以我的主要目标是生成用于协议分析的转储文件。
对于USB流量,SniffUsb似乎是明显的赢家......它可以在Windows XP下运行(但不以后)并且具有比早期版本更好的GUI。它生成巨大的转储文件,但一切都在那里。
但是,我的设备实际上是USB串行设备,因此我转向Portmon,它可以在没有USB开销的情况下嗅探串口流量。
答案 0 :(得分:12)
由于人们似乎没有意识到这一点,Wireshark会监控USB流量并为其提供解析器;但问题是它只适用于Linux。 Windows上的Wireshark不会这样做。
可以插入要监控的USB设备,以及Linux机器(运行Wireshark)和Windows机器,只需使用Windows下的USB设备。
以上问题?我不知道Linux机器或Windows机器如何相互检测。
答案 1 :(得分:9)
经过五年的等待,现在可以在Windows上嗅探usb数据包
请参阅http://desowin.org/usbpcap/tour.html进行快速浏览。它工作得很好
答案 2 :(得分:6)
USBSnoop也有效 - 而且是免费的。
或者,您可以购买 USB转以太网转换器,并使用您喜欢的任何网络嗅探器来查看数据。
答案 3 :(得分:4)
就个人而言,我会使用QEMU或KVM并检测其USB直通代码,然后使用libusb在用户空间中对替换驱动程序进行原型设计(后一位我是以前做过; writing USB device drivers in Python很有趣!)。
答案 4 :(得分:1)
Busdog是一个开源项目hosted on github,对我来说效果很好。它安装了一个驱动程序,允许它监视USB通信。配置窗口允许您随时重新安装或删除设备。
您可以从枚举列表中选择所需的USB设备。一个很好的功能是让它自动跟踪插入的新设备:
进出SWR分析仪的数据通信我是逆向工程,完美地捕获了:
答案 5 :(得分:0)
如果从MS:link下载Device and Log File
解析器,Microsoft Message Analyzer也可以捕获USB流量。