#蓝牙 #Wireshark #命令行 #extcap #btsnoop

app btsnoop-extcap

在Wireshark中查看Android的btsnoop日志(蓝牙HCI日志)

7个版本

0.1.6 2024年2月6日
0.1.5 2023年11月9日
0.1.4 2023年8月8日
0.1.2 2023年5月5日
0.1.0 2023年2月10日

#1457 in 解析实现

MIT许可证

27KB
492

用于从Android设备捕获蓝牙数据包的Extcap二进制文件

Build status Crates.io

安装

$ cargo install btsnoop-extcap

# Running btsnoop-extcap from command line is not part of the normal workflow,
# but it will print out installation instructions. For example:
$ btsnoop-extcap
Unknown extcap phase. This is an extcap plugin meant to be used with Wireshark or tshark.
To install this plugin for use with Wireshark, symlink or copy this executable
to your Wireshark extcap directory

# Run the symlink command in the error message (for Wireshark 4.1 or later)
$ mkdir -p "$HOME/.local/lib/wireshark/extcap/" && \
  ln -s "$HOME/.cargo/bin/btsnoop-extcap" "$HOME/.local/lib/wireshark/extcap/btsnoop-extcap"

# or for Wireshark 4.0 or before
$ mkdir -p "$HOME/.cargo/wireshark/extcap/" && \
  ln -s "$HOME/.cargo/bin/btsnoop-extcap" "$HOME/.cargo/wireshark/extcap/btsnoop-extcap"

所选Android设备需要root权限。

此extcap插件旨在与Wireshark或tshark一起使用,并将显示所选设备的实时蓝牙HCI事件流。

检测到的设备显示在Wireshark的“捕获”接口列表中。

wireshark

开启btsnoop日志捕获说明

  1. 在设备上开启“开发者选项”。
  2. 在“开发者选项”菜单中,激活“开启蓝牙HCI snoop日志”开关。
  3. 重启蓝牙以使日志生效。
  4. 运行adb root

androiddump的关系

Wireshark将androiddump作为包含的extcap实现之一。它基于Android的一个旧配置,将btsnoop日志转发到端口号8872,该端口在2015年被禁用。虽然可以通过更改源代码将其重新启用,但在某些情况下重新编译Android并不方便。

同时,Android继续提供将HCI日志写入本地日志文件(在/system分区中,因此需要root权限才能读取)的选项,这正是此extcap使用的包源。

依赖项

~9–21MB
~295K SLoC