智能锁蓝牙BLE分析

Posted bl8ck

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了智能锁蓝牙BLE分析相关的知识,希望对你有一定的参考价值。

kali使用btproxy

apt-get install bluetooth bluez blueman

git clone https://github.com/conorpp/btproxy 

cd btproxy

sudo python setup.py install

service dbus start

service bluetooth start

hciconfig

技术分享图片

hciconfig hci0 up

hcitool scan

 技术分享图片

我的mac地址为94:87:E0:C0:62:29,智能锁的地址为D2:57:CE:36:6C:E5

btproxy 94:87:E0:C0:62:29 D2:57:CE:36:6C:E5

 

在手机sdcard中查找btsnoop_hci.log

/sdcard/MIUI/debug_log/common/btsnoop_hci.log

 

蓝牙系统核心架构可分为三层:

User Application(Host) 应用层API

HCI(Host Controller Interface) 中间层

Controller 底层蓝牙芯片

技术分享图片

在抓到的btsnoop_hci.log中有几种数据包:

在host与controller传递消息时,每个HCL包的前面会有一个indicator来指定数据包的类型,常见的有

HCI Command Packet:host发给controller,主要是HCI 命令, 注意是命令,不是数据。

HCI Event Packet:controller发给host。对应于command packet。

HCI ACL Data Packet: host发给controller或者相反。主要是L2CAP发送和接收的数据。

HCI Synchronous Data Packet:用来传输语音(SCO)数据的。注意一般都会通过PCM接口来传输SCO数据。

技术分享图片

技术分享图片

HOST层的三个部分

L2CAP(Logic Link Control and Adaptation Protocol)

ATT(Attribute Protocol)

GATT(Generic Attribute Profile)

 

 

 

 

 

 

 

 

 

参考文章

使用btproxy对蓝牙设备进行安全分析

http://www.freebuf.com/articles/wireless/77389.html

https://github.com/conorpp/btproxy

(但后来发现不支持BLE)

 

以上是关于智能锁蓝牙BLE分析的主要内容,如果未能解决你的问题,请参考以下文章

蓝牙BLE如何连接连接多台设备

蓝牙 4.0+ BLE 吗?

Android BLE蓝牙详细解读

如何自动连接 CBPeripheral(带有 iBeacon + 蓝牙芯片的 BLE 设备)并且应用程序未运行

应用案例蓝牙BLE实现防丢器的方法

BLE4.0教程一 蓝牙协议连接过程与广播分析