Ubertooth One是一款开源蓝牙扫描嗅探器,当然了,也可以扫描嗅探 低功耗蓝牙 ,Ubertooth One是适用于蓝牙实验的开源2.4 GHz无线开发平台。
蓝牙低能耗(Bluetooth Low Energy,或称Bluetooth LE、BLE,旧商标Bluetooth Smart)也称低功耗蓝牙,是蓝牙技术联盟设计和销售的一种个人局域网技术,旨在用于医疗保健、运动健身、信标、安防、家庭娱乐等领域的新兴应用。相较经典蓝牙,低功耗蓝牙旨在保持同等通信范围的同时显著降低功耗和成本。
由于我个人对硬件无线网这方面比较感兴趣,今年1月份我也入手了一个"Ubertooth one"硬件,按照freebuf和github的教程,搞了很长一段时间依然没有搞明白,没有成功,我还以为是我购买的硬件有问题。
时隔多月,终于:今天,在高手的指导下,我总算研究明白了,Ubertooth one搞成功了,具体的操作过程如下:
一、先决条件
在操作之前,确保我们的操作系统满足这些条件,请根据个人的系统来执行相应的命令,具体如下:
Debian / Ubuntu
sudo apt-get
install
cmake libusb
-1.0
-0
-dev make gcc
g
++ libbluetooth-dev \
pkg-config libpcap-dev python-numpy python-pyside python-qt4
Fedora / Red Hat
su
-c
"yum install libusb1-devel make gcc wget tar bluez-libs-devel"
如果你是其它的操作系统,请参考官方文档:
https://github.com/greatscottgadgets/ubertooth/wiki/Build-Guide
二、安装 libbtbb 库
wget https://github.com/greatscottgadgets/libbtbb/archive/2018-12-R1.tar.gz -O libbtbb-2018-12-R1.tar.gz
tar -xf libbtbb-2018-12-R1.tar.gz
<span class="hljs-built_in">
cd
</span>
libbtbb-2018-12-R1
mkdir build
<span class="hljs-built_in">
cd
</span>
build
`cmake ..
make
sudo make install
`
三、安装 Ubertooth 工具
Ubertooth存储库包含用于嗅探蓝牙数据包,配置Ubertooth和更新固件的主机代码。所有这三个都是默认使用以下方法构建和安装的:
wget
https:
/
/github.com/greatscottgadgets
/ubertooth/releases
/download/
2018
-
12
-R1/ubertooth-
2018
-
12
-R1.tar.xz
tar xf ubertooth-
2018
-
12
-R1.tar.xz
cd ubertooth-
2018
-
12
-R1/host
mkdir build
cd build
cmake ..
make
sudo make install
四、Ubertooth one 刷新固件
由于我是新购买的 Ubertooth one ,固件是需要自己刷的,如果你也是新手的话,很容易踩这个坑。以我自己购买的这个硬件为例子,Ubertooth one刷新固件具体操作步骤如下:
1、进入DFU模式
如果不进入DFU模式是刷新不了固件的,我们常 说的手机刷系统一般进入的是fastboot模式,这个原理有点类似。
如何进入Ubertooth one的DFU模式?这里我要重点说一下:
我放大一下,大家再仔细看一下这两个连接的孔:
其次:再插入USB,看见LED灯和之前的闪烁方式不一样了,就说明进入DFU模式了。
2、刷新固件
关于Ubertooth one刷新固件知识可以参考:https://github.com/greatscottgadgets/ubertooth/wiki/Firmware
我的操作具体步骤命令如下:
首先:获取最新的固件版本
$ wget https://github.com/greatscottgadgets/ubertooth/releases/download/2018-12-R1/ubertooth-2018-12-R1.tar.xz
其次:解压缩
$ tar xf ubertooth-
2018
-
12
-R1.tar.xz
再次:进入ubertooth-one-firmware-bin目录
$ cd ubertooth-2018-12-R1/ubertooth-one-firmware-bin
`最后:执行更新固件命令
$ ubertooth-dfu -d bluetooth_rxtx.dfu -r
`
查看自己的固件版本命令:
$ ubertooth-util -v
Firmware version: 2018-12-R1 (API:1.05)
五、开始使用 Ubertooth one 扫描或嗅探蓝牙
由于Ubertooth one是一款蓝牙硬件,我们只需要用相应的扫描或嗅探蓝牙软件搭配起来就可以直接使用了。
以下都是一些扫描或嗅探蓝牙的工具,也可以称为Linux命令,如果有不会用任何一个工具的?完全可以用 --help 查看具体的用法以及各个功能是什么?
1、 hcitool{#32-hcitool}
hcitool scan:扫描附近蓝牙设备
hcitool lescan:扫描附近低功耗蓝牙设备
2、ubertooth-scan
3、ubertooth-specan-ui
4、spectool
5、gatttool{#33-gatttool}