工具

USBPcap Windows USB 抓包工具

Tomasz Moń 开发的开源 Windows USB 抓包工具。安装在 Windows USB 设备栈中的过滤驱动会记录各根集线器上设备收发的 USB 请求块(URB),再由 USBPcapCMD 写成 LINKTYPE_USBPCAP 格式的 pcap 文件,供 Wireshark 解析。从 1.2.0.0 版起,项目推荐把 USBPcapCMD 作为 Wireshark extcap 使用:每个根集线器会显示为一个抓包接口,可选择抓取指定设备、全部设备或新接入的设备,还能把已连接设备的描述符补进抓包数据。

目标
协议
类别
协议分析工具
关联
基础工具
来源复核于

使用条件与局限

  • 审阅时最新版本为 1.5.4.0,发布于 2020-05-22,提供经数字签名的 USBPcapSetup 安装程序(适用于 x86 和 x64 的 Windows 7、8 和 10),以及附带调试符号的源码包。所审阅的 master 提交(2025-01-25)在此基础上新增两项尚未发布的驱动修复,其中一项标为关键修复,分别涉及内核缓冲区重新分配和读取请求的完成顺序。安装程序不支持早于 Windows 7 的系统(1.5.3.0 是最后支持 XP 和 Vista 的版本),也不支持 Windows To Go;Windows 7 用户需先安装 SHA-2 更新(KB3033929 或 KB4474419),安装后须重启。
  • 抓包在分析者自己的 Windows 电脑上进行。可直接运行 USBPcapCMD.exe,选择根集线器过滤实例和输出文件;也可以把它复制到 Wireshark 的全局或个人 extcap 文件夹,Wireshark 自 1.10.0rc1 起支持 USBPcap。README 提到目前没有抓包引擎 DLL。项目教程建议抓取新接入的设备,或在开始抓包后重新插拔设备,使设备描述符进入抓包数据,供 Wireshark 解析器使用。
  • 按 README 说明,从源码构建 Windows 7 驱动需要 Windows Driver Kit 7.1.0,Windows 8 版本则需要 Visual Studio 2013 和 WDK 8.1 Update。正式发布的驱动由作者使用自己未公开的证书,经 Microsoft Hardware Dev Center 进行认证签名。自行构建的驱动使用仓库中的测试证书(certificates/USBPcapTestCert.*)签名;README 说明,在 64 位 Windows 上需开启测试签名模式才能加载。仓库中其余的二进制文件只有 NSIS 安装插件 SysRestore.dll 和两份公开的 CA 交叉证书。
  • 项目的抓包限制页面说明,USBPcap 记录的是在设备栈的功能设备对象与物理设备对象之间传递的 URB,因此看不到总线状态、包标识(PID)、拆分事务、线上时序和传输速率,也看不到设备获得地址之前的枚举过程;该页面称这些只能由硬件 USB 嗅探器看到。抓到的数据如何解读,仍需分析者在 Wireshark 或其他解析器中自行完成协议分析。
  • README 和 SPDX 文件头声明,驱动采用 GPL-2.0,USBPcapCMD 采用 BSD-2-Clause。仓库根目录没有许可证文件,许可证文本位于 nsis/ 和 wix/ 中,因此 GitHub 未识别出许可证。本次未构建或安装驱动,也未抓取任何 USB 流量。

关于此条目

说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。

报告条目过时 建议修正翻译

一手来源

  1. README GitHub · desowin/usbpcap · 修订 477b6ed
  2. USBPcapCMD/cmd.c#L1118-L1182 GitHub · desowin/usbpcap · 修订 477b6ed
  3. USBPcapDriver/USBPcap.inx GitHub · desowin/usbpcap · 修订 477b6ed
  4. USBPcapDriver/USBPcapMain.c#L1-L5 GitHub · desowin/usbpcap · 修订 477b6ed
  5. nsis/USBPcap.nsi#L84-L125 GitHub · desowin/usbpcap · 修订 477b6ed
  6. config.bat GitHub · desowin/usbpcap · 修订 477b6ed
  7. certificates GitHub · desowin/usbpcap · 修订 477b6ed
  8. nsis/gpl-2.0.txt GitHub · desowin/usbpcap · 修订 477b6ed
  9. nsis/bsd-2clause.txt GitHub · desowin/usbpcap · 修订 477b6ed
  10. https://github.com/desowin/usbpcap/releases/tag/1.5.4.0
  11. https://desowin.org/usbpcap/
  12. https://desowin.org/usbpcap/tour.html
  13. https://desowin.org/usbpcap/capture_limitations.html
  14. https://desowin.org/usbpcap/captureformat.html

同分区更多条目:协议

协议分区全部 66 项资源