本文转自公众号,欢迎关注
USB软件抓包分析工具之一:Bus Hound-逍遥派北冥神功 (qq.com)
介绍
BusHound是一款强有力的I/O捕获,底层协议,总线分析的软件工具,同时支持发送命令到设备。
【资料图】
该工具支持众多总线,USB是其支持的一种,包括以下总线:
USB 1.0 - 4.0NVMeSATA & IDESCSI& ATAPIFireWire, 1394A/BBluetoothFibre ChanneliSCSI, SASPC Card, PCMCIAserial portparallel portps/2 ports等等。
支持以下操作系统
Windows 11Windows 10Server 2022Server 2019全功能版本甚至还Win95 和NT4。
支持以下设备
Blu-ray, DVD, CDHard drives, tape drivesMemory cardsWeb Cams, CamerasMice, Keyboards, HIDPrinters, ScannersSpeakers, Modems等等等。
适用于以下场景
检测底层I/O调试设备驱动和固件逆向工程协议性能测试研究设备工作原理揭示难以查找的设备属性高级用户特征
一次采集M字节级别I/O数据实时查看IO数据条件触发构建和发送自定义命令总线和设备复位捕获系统启动过程查看日志级别协议,包括SCSI感测数据和SMART命令查看微秒分辨率计时将捕获的数据拖放到其他应用程序或将其保存到zip文件中捕获同步传输和控制传输查看irp和其他设备驱动报文官网
https://perisoft.net/bushound/
安装
从官网下载free版本,free版本和full版本功能完全一样,但是捕获的数据量少一些,不需要注册,无广告,不限期,可以体验一下。
实际使用free版本还是不行,因为限制了记录只有8字节不能捕获,可以网上搜寻和谐使用,推荐支持正版。
我这里下载的是最新版本7.04,安装文件为bh704_free.msi.
双击打开安装文件
选择安装目录
弹出用账户控制点击是
点击是重启电脑,注意先保存文件,关闭程序,再点击是。
打开软件
看到free版本只能记录8字节,不能存储,实际应用还是不行的,仅仅体验一下,所以可以自行网上搜寻资源和谐学习,建议支持正版。
抓包演示
以下以一个UVC抓包为例子演示使用。
设备
USB设备枚举成功之后,打开软件,选择设备,下面可以勾选Auto select hot plugged devices则自动选择新接入的设备。
设置
如下Capture Capacity是设置能记录的总大小即缓冲区大小,如果勾选了下面的Buffer full则记录数据大于该值则停止抓包,否则会急促抓包但是会覆盖之前的数据。
Max Recoder Length则是设置抓一次传输的数据大小,如果一次传输数据大于该值则只只记录指定的大小,多的不记录。
下面还可以设置其他停止条件,比如设置Buffer full就停止。
左下脚可以设置合并重复内容和使能声音。
右边上面是显示预览,中间是选择需要抓包的类型,下面是需要显示的内容。
捕获
点击Capture,点击Run,则开始捕获,中间实时刷新数据,如果设置了停止条件则满足条件就会停止,否则会覆盖原来的数据重复捕获。
显示内容即上一步选择的
这里还可以进行查找
左下角编辑框输入需要查找内容回车,就会自动定位到查找到的内容处
保存
点击菜单Save,选择文件类型,然后点击按钮Save
保存的内容如下,选择zip的话也是txt的压缩,内容一样
命令
Bus Hound除了抓包以外还有一个强大的功能,就是发送数据。这在调试阶段非常有用。相当于一个调试助手。
使用方法如下:
双击设备
弹出窗口,会显示端点信息,如果没有显示则说明USB没有配置好。
默认是获取字符串描述的命令,点击Lock(这一步一定要),选择控制端点,然后点击Run即可发送命令,返回的字符串描述显示在下面,如果要进行其他控制传输对应的修改即可。
发送数据,先点击对应Out端点,再点击Load加载需要发送的Bin文件,长度自动更新,再点击Run
接收数据,选择In端点,输入要读的长度,点击Run,完成后显示complete,读出的值显示在下面。
Help标签下可以查看相关帮助
文档
以上进行了一个简单的演示,更多的内容可以参考文档.
程序的Help菜单下有一些介绍,即安装目录下的文件D:ProgramFilesBus Houndhelp.rtf
总结
以上可以看出bus hound堪比逍遥派得北冥神功级别,程序只有1M多,界面简洁,操作简单,但是功能却非常强大,几乎支持所有的总线协议,抓包分析,飘逸逍遥。
标签: