Android 使用 Wireshark 进行蓝牙侦听:androiddump 中缺少蓝牙接口

Android Bluetooth Snooping with Wireshark: Missing Bluetooth Interface in androiddump

我正在尝试在 Android 10:

上实时捕获从我的三星 A51 发送的蓝牙流量
  1. phone 上启用了蓝牙 HCI 监听日志,我在启用后切换了蓝牙。我可以通过
  2. 从 phone 下载错误报告,其中包括 btsnoop_hci 文件
    >adb bugreport
  1. adb 已连接:
    >adb devices
    List of devices attached
    R58N427J7TD     device
  1. androiddump 有效,但只显示 Logcat 界面。我缺少蓝牙接口:
    >androiddump --extcap-interfaces
    extcap {version=1.1.0}{help=file:///C:/Program%20Files/Wireshark/extcap/androiddump.html}
    interface {value=android-logcat-text-main-R58N427J7TD}{display=Android Logcat Main SM_A515F R58N427J7TD}
    interface {value=android-logcat-text-system-R58N427J7TD}{display=Android Logcat System SM_A515F R58N427J7TD}
    interface {value=android-logcat-text-radio-R58N427J7TD}{display=Android Logcat Radio SM_A515F R58N427J7TD}
    interface {value=android-logcat-text-events-R58N427J7TD}{display=Android Logcat Events SM_A515F R58N427J7TD}
    interface {value=android-logcat-text-crash-R58N427J7TD}{display=Android Logcat Crash SM_A515F R58N427J7TD}

https://www.wireshark.org/docs/man-pages/androiddump.html 上的官方文档没有帮助,但它们确实让我想知道是否需要配置蓝牙服务器端口?

为什么没有出现蓝牙接口还有其他想法吗?同样在 Wireshark 应用程序中 UI 我只能找到上面列出的接口。

你必须先enable Bluetooth HCI snoop log

  1. 设置
  2. 开发者选项
  3. 启用蓝牙 HCI 监听日志记录
  4. 重启蓝牙。如果还是不行,试试重启。

根据描述,我假设您在三星设备上使用的是库存 Android 生产版本。

不幸的是,wireshark/tshark extcap > androiddump > android-bluetooth-btsnoop-net 只是 data/misc/bluetooth/logs/btsnoop_hci 的实时输出。登录到 tcp 端口 8872当 Developer Option Bluetooth HCI snoop log 启用时,它位于根目录中。如果您的设备已获得 root 权限,则您可以访问它,否则您将无法访问。 android source reference

您能够从错误报告中看到 btsnoop_hci 文件的原因是错误报告不需要 root 权限。