Bootstrap

使用Ubuntu虚拟机抓Bluetooth报文

环境准备

可以用VirtualBox安装Ubuntu虚拟机,把Windows下的Bluetooth设备禁用(设备管理器,Bluetooth目录下)。

运行Ubuntu虚拟机,在VirtualBox菜单上加入Bluetooth设备到虚拟机。

或者在虚拟机的设置里面永久加入Bluetooth设备:

安装Wireshark

  • 在Ubuntu桌面的terminal内输入:sudo apt install wireshark
    • 但问到是否打开non-superusers用户的抓包权限时,选'Yes'
  • 把用户加入wireshark组
    • sudo usermod -aG wireshark $(whoami)
  • 重启,以便配置生效。
  • 运行Wireshark: 在terminal内输入wireshark,或者从GUI中,在搜索栏上搜索Wireshark应用程序,然后按Enter。
  • 此时可以看到bluetooth0的设备在wireshark界面中

  • 如果没有,请用lsusb命令, hcitool dev命令看看是否有蓝牙设备
$ hcitool dev
Devices:
hci0 CC:C6:C0:C3:C7:CC
$ lsusb

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0cf3:e300 Qualcomm Atheros Communications
Bus 002 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

 

抓蓝牙包

  • Wireshark只能抓到本机和其他设备的蓝牙通信报文,无法抓取其他设备之间的蓝牙报文。
  • 在Wireshark中双击bluetooth0接口启动抓包
  • 打开Ubuntu设置界面的Bluetooth,此时系统会扫描蓝牙设备,可以看到Wireshark已经抓到这些报文。

参考

 

;