低功耗蓝牙数据包嗅探

时间:2024-04-05 19:21:04

低功耗蓝牙数据包嗅探

工具:

蓝牙嗅探工具:nrf51822-Dongle一个

Wireshark

安卓手机一台

 

这里使用nrf51822结合Wireshark来捕获低功耗蓝牙数据包;

nrf51822的外观:

低功耗蓝牙数据包嗅探

 

操作步骤

1.到nrf官网(https://www.nordicsemi.com)下载对应的Segger-jlink工具、Dongle工具包、Sniffer的python脚本,同样的里面也有操作文档,因为官方文档讲解很细致,此处仅介绍关键操作;

2.打开 Wireshark 软件,Go to Help > About Wireshark,点击 Folders,双击 Extcappath。

低功耗蓝牙数据包嗅探

 

3.将nrf_sniffer_(version)_(hash).zip 文件解压到这个目录下,并将extcap目录的内容复制到该目录下,如下图所示。

低功耗蓝牙数据包嗅探

 

4.打开 Wireshark 软件,Edit > Configuration Profiles,选中Profile_nRF_Sniffer-(version) ,并确认。

低功耗蓝牙数据包嗅探

 

5.用Segger-jlink对Dongle刷入对应的固件,重启wireshark,可以看到如下;

低功耗蓝牙数据包嗅探

 

此时已完成对低功耗蓝牙数据包的嗅探;

低功耗蓝牙数据包嗅探

 

思路转换--另类抓包方式

如果场景是Android手机连接蓝牙设备,存在一种方式可以捕获蓝牙通信的数据包;

1、打开手机开发者选项;

2、进入开发者选项,打开蓝牙数据包日志;(或者是启动蓝牙HCI信息收集日志等,不同手机有不同称呼,后面生成的文件也不尽相同)

低功耗蓝牙数据包嗅探

 

3、设置完成后,打开蓝牙,连接设备,操作,此时的通信数据会被记录;

4、搜索记录的文件,文件一般以这种命名:btsnoop_hciXXX;

5、最后用Wireshark打开记录的文件即可;

低功耗蓝牙数据包嗅探

 

其他

还有一种方式,用的是CC2540 USB Dongle,个人感觉没有上面两种方法好用。

抓包界面如下,没有wireshark的释义;

低功耗蓝牙数据包嗅探

 

当然工具不止以上这些,欢迎各位大神补充。