我不时需要在Windows下转储USB流量,主要是为了支持Linux下的硬件,所以我的主要目标是生成用于协议分析的转储文件。

对于USB流量,似乎 SniffUsb 是明显的赢家......它可以在Windows XP下运行(但以后),并且具有比早期版本更好的GUI。它生成巨大的转储文件,但一切都在那里。

然而,我的设备实际上是一个USB串行设备,所以我转向 Portmon ,可以在没有USB开销的情况下嗅探串口流量。

有帮助吗?

解决方案

就个人而言,我会使用 QEMU KVM 并检测其USB直通代码,然后使用 libusb 在用户空间中对替换驱动程序进行原型设计(后一点我以前做过; 用Python编写USB设备驱动程序很有趣!)。

其他提示

  1. 由于人们似乎没有意识到这一点, Wireshark 会监控USB流量并有一个解析器;但问题是它只适用于Linux。 Windows上的Wireshark不会这样做。

  2. 可以插入要监控的USB设备,以及Linux机器(运行Wireshark)和Windows机器,只需使用Windows下的USB设备。

  3. 以上问题?我不知道Linux机器或Windows机器如何相互检测。

经过五年的等待,现在可以在Windows上嗅探usb数据包

请参阅 http://desowin.org/usbpcap/tour.html 进行快速浏览。它工作得很好

USBSnoop 也适用 - 并且是免费的。

或者,您可以购买 USB转以太网转换器,并使用您喜欢的任何网络嗅探器来查看数据。

Busdog,一个开源项目托管在github上,对我来说效果很好。它安装了一个驱动程序,允许它监视USB通信。配置窗口允许您随时重新安装或删除设备。

您可以从枚举列表中选择所需的USB设备。一个很好的功能是让它自动跟踪插入的新设备:

进出SWR分析仪的数据通信我是逆向工程,完美地捕获了:

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top