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

Nic*_*las 6 android bluetooth hci wireshark btsnoop

我正在尝试实时捕获从 Android 10 上的三星 A51 发送的蓝牙流量:

  1. 手机上启用了蓝牙 HCI 监听日志,启用后我切换了蓝牙。我可以通过手机下载错误报告,其中包括 btsnoop_hci 文件
    >adb bugreport
Run Code Online (Sandbox Code Playgroud)
  1. adb已连接:
    >adb devices
    List of devices attached
    R58N427J7TD     device
Run Code Online (Sandbox Code Playgroud)
  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}
Run Code Online (Sandbox Code Playgroud)

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

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

ray*_*imi 5

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

不幸的是,当启用开发人员选项蓝牙 HCI 监听日志时,wireshark/tshark extcap > androiddump > android-bluetooth-btsnoop-net 只是从 data/misc/bluetooth/logs/btsnoop_hci.log 到 tcp 端口 8872 的实时输出(位于一个根目录。如果您的设备已取得 root 权限,则可以访问它,如果没有,则无法访问。安卓源码参考

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