首先,要在Windows上安装一个工具:Bluetooth Virtual Sniffer (btvs.exe)。
Microsoft Bluetooth Test Platform - BTVS - Windows drivers | Microsoft Learn
这是个嗅探蓝牙数据的工具,集成在Bluetooth Test Platform(BTP)里面,所以要先安装这个蓝牙测试平台。
下载路径:
访问:Get the Microsoft Bluetooth Test Platform software package - Windows drivers | Microsoft Learn
在安装完以后,找到btvs.exe文件,位于路径:C:\BTP\v1.14.0\x86下,这个视安装版本不同路径名不同。
安装BTP成功。
下一步安装WireShark,访问连接:Wireshark · Go Deep
点击下载:Wireshark · Download
选择Windows Instarller(64-bit),最好不要选择PortableApps版,因为后面需要通过btvs.exe来启动Wireshark,如果是绿色可移植版,会启动失败。
下载完成后,安装Wireshark。
准备工作OK。
打开Command Prompt工具,即Windows下的命令行,也就是运行了%windir%\system32\cmd.exe。
在命令行终端里,运行btvs.exe程序。
c:\BTP\v1.14.0\x86>btvs.exe -Mode Wireshark
然后就会启动Wireshark,开始抓取蓝牙数据。要抓取成功,要打开电脑的蓝牙功能,才会有数据出现。
当连上蓝牙设备后,传输的数据就会被抓取。比如我连接了一个蓝牙HID键盘设备,输入了"ABCDE12345",则log显示如下:
======== 分割线 ========
btvs.exe命令介绍
Bluetooth Virtual Sniffer工具搭配其他软件,用来查看实时的HCI操作记录。可以搭配的软件是Frontline Protocol Analysis System,Ellisys Blutooth Analyzer或Wireshark。推荐使用Wireshark,这个是开源免费的,用的人也挺多。
命令行选项
btvs.exe [-Address 127.0.0.1] [-Mode Frontline|Ellisys|Wireshark] [-Port 24352] [-Remote off|on] [-Service 1|2|3]
Address (Ellisys mode only) Specifies the IP address of the machine
running Ellisys Bluetooth Analyzer. (Default: 127.0.0.1)
Mode Optionally specify whether btvs.exe should generate traces
for Frontline, Ellisys, or Wireshark.
Port (Ellisys or Wireshark only) Specifies the UDP listen port of the
Ellisys Bluetooth Analyzer injection API\Specifies the TCP port
for Wireshark. (Default: 24352)
Remote (Wireshark only) Specifies whether Wireshark will be on the same machine
or run remotely. Off will try to start Wireshark on the same machine. (Default: off)
Service (Ellisys mode only) Specifies the HCI Injection Service.
1: Primary. 2: Secondary. 3: Tertiary. (Default: 1)
使用方式是打开命令提示行,或Powershell控制台,在BTP安装文件夹里找到并运行btvs应用程序。
操作界面
蓝牙虚拟嗅探器窗口上有两个按钮:
- 完整的数据包记录 / Full Packet Logging
按下这个按钮,HCI log中本来会被丢弃的数据也会被收集。比如,大型ACL数据包,敏感数据包括加密密钥和HID reports。
导致在HCI日志中收集通常会被放弃的数据。例如,大型ACL数据包,敏感数据包括加密密钥和HID报告。
- 设置或扩展调试模式 / Set or Extend Debug Mode
在一定时间内,启用SSP调试模式。发送和接受SMP调试密钥。再次点击可以延长时间。
使用方式 - Wireshark
1,同一机器上,Wireshark安装后,会自动直接启动,如上面使用方式一样。
btvs.exe -Mode Wireshark
2,如果启动失败,也可以手动启动Wireshark,提供一个默认的TCP pipe作为interface:
wireshark -k -i TCP@127.0.0.1:24352
3,不在同一台机器上。
在第一台机器上启动btvs.exe,第二台机器上手动启动wireshark,并将第一台机器的IP地址作为参数。
btvs.exe -Mode Wireshark -Remote on
wireshark -k -i TCP@<ip address>:<port>
注:默认的port是24352
使用方式 - Ellisys Bluetooth Analyzer + Frontline Protocol Analysis System
如果安装这两款软件,也可以配合使用来完成蓝牙数据抓包。这两款软件是业界比较有名的公司的产品。
一般是配套相关的硬件一起使用,也就是需要购买他们家的硬件,很贵。
具体使用请看参考链接。
参考:
Microsoft Bluetooth Test Platform - BTVS - Windows drivers | Microsoft Learn
版权归原作者 夜流冰 所有, 如有侵权,请联系我们删除。