嗅探/logging您自己的Android蓝牙stream量

我最近买了中文设备,通过蓝牙与android手机/平板电脑连接。 由于没有应用程序可用于Windows / Linux我想创build一个个人使用。

通常电话连接到设备并交换一些数据。 我将PC连接到设备,并查看串行debugging器,并发现协议(仅限单向)。 电话只发送一个命令到设备。 但是这一次我无法找出它所包含的东西。

有没有什么软件可以让我查看通过蓝牙发送的数据? 我试着反编译应用程序,但看起来非常不友善。

谢谢。

Android 4.4(Kit Kat)确实具有蓝牙的新探测function。 你应该试试看。

如果你不拥有一个嗅探设备,你不一定会失败。 在很多情况下,我们可以通过Android 4.4中引入的新function获得积极的结果:捕获所有蓝牙HCI数据包并将其保存到文件的function。

当分析人员通过运行正在testing的应用程序完成捕获文件的填充时,他可以将Android生成的文件拖放到设备的外部存储器中并进行分析(例如使用Wireshark )。

一旦这个设置被激活,Android会将数据包捕获保存到/sdcard/btsnoop_hci.log,由分析人员进行检查。

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

 adb shell echo \$EXTERNAL_STORAGE 

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

使用Android HCI Snoop捕捉wireshark的截图

[资源]

您可以通过转到设置 – >开发人员选项,然后选中“Bluetooth HCI Snoop Log”旁边的框来启用此function。

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

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