首页 文章

WinUSB应用程序或用户模式驱动程序作为USB分析/嗅探器/趋势的过滤器驱动程序

提问于
浏览
4

可能是一些与WinUSB API或用户模式USB驱动程序广泛合作的问题 - 可以将WinUSB API或用户模式驱动程序用作USB连接的被动观察者,捕获中断通知,控制请求,数据传输等 . 在不干扰其他应用程序(例如iTunes)的情况下,显然需要同时访问设备,同时我的应用程序正在监视连接并在其上显示数据?

或者您是否必须编写内核模式过滤器驱动程序并将自己注入USB堆栈以实现这一目标?

在过去,有一些可靠的选项(libusb-win32和usbsnoop是具体的)虽然两者都围绕旧的DDK而不是Windows Driver Foundation构建,并且不再定期支持 . 因此,我犹豫是否要围绕他们 Build 一些重要的东西 .

3 回答

  • 0

    您必须编写过滤器驱动程序 . 没有其他方法可以拦截其他设备生成的流量 . 您可以使用较新版本的DDK,即KMDF来执行此任务 . 它会让你的生活更轻松 . 但我认为只需要一台硬件总线分析仪就会更便宜,更有效 .

    a good overview by OSR . 您必须登录才能阅读此内容,但如果您要进行任何内核模式开发,我强烈建议您先登录 .

  • 4

    Windows 7中的核心USB驱动程序具有ETW跟踪点,因此您可以通过这种方式嗅探流量(博客文章ETW in the Windows 7 USB core stack),但它有点笨拙并且有一些限制,例如仅跟踪每个数据包的前32个字节 .

    我制作了一个非常好用的USB过滤驱动程序(KMDF)(恕我直言):http://code.google.com/p/busdog/

  • 2

    USB Sniffer允许您显示,记录和分析连接到PC和应用程序的任何USB设备之间传输的所有数据 . 您还可以恢复传输的数据(对于某些文件类型) .

    结果项目包括以下组件:驱动程序,公共库,GUI . http://tellmeword.com/5zu2z5

相关问题