1. Crackle工具概述
Crackle是一款专门用于蓝牙协议安全分析的Python工具包,由安全研究员Mike Ryan开发并开源。它能够嗅探、解析和操作蓝牙低功耗(BLE)通信数据,特别针对BLE配对过程中的安全机制进行测试。我在实际渗透测试项目中多次使用该工具,发现它在识别BLE设备的安全漏洞方面表现出色。
Crackle的核心功能是破解BLE链路层加密。当两个BLE设备进行配对时,如果使用低安全性的配对方式(如Just Works或Passkey Entry),Crackle可以捕获配对过程中的关键参数并破解长期密钥(LTK)。这使攻击者能够解密设备间的通信数据。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境配置与安装
2.1 系统要求
Crackle需要Linux环境运行,推荐使用Kali Linux或Ubuntu。我在Kali 2023.2上测试最为稳定。硬件方面需要支持蓝牙4.0以上的适配器,建议使用CSR芯片的USB蓝牙适配器(如Cambridge Silicon Radio的蓝牙4.0 dongle)。
2.2 依赖安装
首先安装必要的依赖库:
bash复制sudo apt update
sudo apt install git python3-pip libpcap-dev libbluetooth-dev
2.3 获取Crackle源码
从GitHub克隆最新版本:
bash复制git clone https://github.com/mikeryan/crackle.git
cd crackle
2.4 安装Python依赖
bash复制pip3 install -r requirements.txt
注意:如果遇到权限问题,可以添加
--user参数进行用户级安装
3. 基本使用流程
3.1 设备发现
首先使用hcitool扫描周围的BLE设备:
bash复制sudo hcitool lescan
这将输出类似如下的设备列表:
code复制LE Scan ...
AA:BB:CC:DD:EE:FF (unknown)
AA:BB:CC:DD:EE:FF MySmartLock
3.2 捕获配对过程
使用Crack
