嗅探/记录您自己的Android蓝牙流量

时间:2014-05-26 21:09:51

标签: android bluetooth reverse-engineering

我最近购买了通过蓝牙与Android手机/平板电脑连接的中文设备。由于没有适用于windows / linux的应用程序,我想创建一个供个人使用的应用程序。

通常手机连接到设备并交换一些数据。我将PC连接到设备并查看串行调试器并进行管理以发现协议(仅限一种方式)。电话仅向设备发送一个命令。但这一次我无法找出它所包含的内容。

是否有任何软件可以让我查看通过蓝牙发送的数据?我试过反编译应用程序,但它看起来真的很不友好。

感谢。

3 个答案:

答案 0 :(得分:75)

Android 4.4(Kit Kat)确实为蓝牙提供了新的嗅探功能。你应该试一试。

  

如果你没有嗅探装置,你不一定是外出的   好运在许多情况下,我们可以用新的方法获得积极的结果   Android 4.4中引入的功能:捕获所有功能   蓝牙HCI数据包并将其保存到文件中。

     

当Analyst通过运行完成填充捕获文件时   正在测试的应用程序,他可以拉出生成的文件   Android进入设备的外部存储并进行分析(用   例如Wireshark

     

激活此设置后,Android将保存数据包捕获   将/sdcard/btsnoop_hci.log提交给分析师并进行检查。

如果/sdcard/不是您特定设备上的正确路径,请键入以下内容:

adb shell echo \$EXTERNAL_STORAGE
  

然后我们可以打开一个shell并拉出文件:$ adb pull   /sdcard/btsnoop_hci.log并使用Wireshark进行检查,就像PCAP一样   例如,通过嗅探WiFi流量来收集,所以它非常简单   并得到很好的支持:

     

screenshot of wireshark capture using Android HCI Snoop

     

[source]

您可以转到设置 - >开发者选项,然后选中“蓝牙HCI Snoop日志”旁边的框来启用此功能。

答案 1 :(得分:5)

此外,这可能有助于找到保存btsnoop_hci.log的实际位置:

adb shell "cat /etc/bluetooth/bt_stack.conf | grep FileName"

答案 2 :(得分:0)

小米红米 Note 9s 这个配置文件也可以在/storage/emulated/0/MIUI/debug_log/common 命名为 hci_snoop20210210214303.cfa hci_snoop20210211095126.cfa

启用“设置”->“开发者选项”,然后选中“蓝牙 HCI 监听日志”旁边的框。 '

我使用 Total Commander 从内部存储中获取文件