【问题标题】:Bluetooth packet capture on AndroidAndroid上的蓝牙数据包捕获
【发布时间】:2016-11-23 21:02:45
【问题描述】:

我使用here 描述的技术来捕获我的 Android 手机和设备(一个非常简单的设备)之间交换的蓝牙数据包。

我可以捕捉到很多扫描和两个设备之间的配对,但是我看不到任何后来的交换,只有扫描。 而且,刚刚配对之后,时间上有一个巨大的差距,当我认为设备之间交换数据时,还有其他差距。 例如,时间线是这样的形式:

  • 0-8s:扫描(LE Set Scan
  • 8-15 秒:配对
  • 80-120 秒:扫描
  • 180-200s:扫描

我确定间隙与数据交换相对应,但我不知道为什么我看不到包。

我已经尝试在手机和电脑之间进行简单的文件交换,并且我已经能够看到包含该文件的包裹。

【问题讨论】:

    标签: android bluetooth wireless


    【解决方案1】:

    我假设您正在使用 BLE,并且您正在嗅探空气记录。根据您的描述,您可以扫描广告(并扫描)和配对程序(我假设配对后您什么也看不到)。 您是否输入了 LTK(长期密钥)?它就像经典蓝牙中的链接密钥一样,没有它你就无法解密加密的包。观察日志的最佳方法是检查 btsnoop.log。 你说你可以看到PC和手机之间的包,你应该是用经典的蓝牙吗?还是你没有配对?

    【讨论】:

    • 它不是 BLE,而是带有旧版 PIN 的 BT 经典(所以我什至不确定它是 BT4)。我使用文件btsnoop_hci.log。我没有进入LTK:我不知道我可以这样做,我认为没有必要,因为我认为捕获是在控制器完成解密后完成的。
    • 如果不是BLE,则不需要LTK。文件 btsnoop_hci.log 不需要链接密钥,因为它是本地堆栈的日志。因此,您可以粘贴您的 btsnoop 日志快照以查看发生了什么。
    猜你喜欢
    • 1970-01-01
    • 2021-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多