Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
sweyntooth_bluetooth_low_energy_attacks — Sweyntooth 低功耗蓝牙(BLE)漏洞的概念验证。 | Kitploit
工具/GitHubGitHub/matheus-garbelini/sweyntooth_bluetooth_low_energy_attacks
蓝牙安全Payload生成漏洞分析漏洞利用模糊测试无线安全渗透测试硬件与物联网安全

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHub
matheus-garbelini/sweyntooth_bluetooth_low_energy_attacks

sweyntooth_bluetooth_low_energy_attacks

Sweyntooth 低功耗蓝牙(BLE)漏洞的概念验证。

查看仓库
33277314年前Kitploit 审核通过

SweynTooth - 在低功耗蓝牙上制造混乱

本仓库是 ASSET Research Group 研究成果的一部分。 attack_logo

SweynTooth 涵盖六大主要片上系统(SoC)厂商的不同低功耗蓝牙(BLE)软件开发套件(SDK)中的一系列 18 个漏洞。这些漏洞暴露了特定 BLE SoC 实现中的缺陷,使无线电范围内的攻击者能够根据具体情况触发死锁、崩溃和缓冲区溢出,或完全绕过 安全防护。(更新)我们还加入了一个测试脚本,用于检查设备是否受 BLE KNOB 变体影响。

你可以在 ASSET Research Group SweynTooth 披露网站 上查看有关这些漏洞、可用补丁和受影响设备的更多信息。

Fitbit、August Smart Lock、Eve Energy、CubiTag 以及其他“智能”设备均受影响。

  • Fitbit Inspire 崩溃与 CubiTag 死锁 - https://www.youtube.com/watch?v=Iw8sIBLWE_w
  • Eve Energy 与 August Smart Lock 崩溃 - https://www.youtube.com/watch?v=rge1XeJVpag&t=6s

此 PoC 中包含的库

此 PoC 使用了维护良好的库,例如 Scapy 和 Colorama。BLE 数据包的构造与解析通过定制的 Scapy 协议层完成(bluetooth4LE 和 bluetooth.py)。目前有一个正在进行中的合并请求,旨在将我们的新增内容包含到 Scapy 的主仓库中。

开始使用(安装)

首先,你必须确保系统装有 Python2.7,并安装了 requirements.txt 文件中列出的 Python 包。 如果你使用的是 Ubuntu,请运行以下命令:

sudo apt-get install python2.7
sudo pip install -r requirements.txt

其次,SweynTooth 使用 Nordic nRF52840 Dongle 在无线链路上向易受攻击的外设发送和接收原始链路层数据包。在启动 Python 2.7 脚本之前,必须先将驱动固件烧录到开发板上。

我们固件代码的二进制文件位于 nRF52_driver_firmware.zip 文件中。你需要安装 nrfutil 工具才能将固件烧录到开发板上。请记住在烧录前将 nRF52840 置于 DFU 模式(在 USB Dongle 连接到 PC 时,按下小型重置按钮重置它)。

dongle_reset_button

你可以运行以下命令来安装 Python 依赖项并烧录固件:

python -m pip install nrfutil pyserial pycryptodome
nrfutil dfu usb-serial -p COM_PORT -pkg nRF52_driver_firmware.zip

这些脚本可在 Linux 或 Windows 上运行。你只需更改 COM_PORT 参数,使其与 nRF52840 的端口名称匹配。

(替代的 nRF52 驱动烧录方法)

如果上述烧录方法无效,你还可以使用 nRF Connect App for Desktop 来烧录固件,它提供了一个良好的界面来烧录 hex 固件(nRF52_driver_firmware.hex)。

运行概念验证脚本

安装好所需依赖项后,你可以通过执行以下命令来运行漏洞利用脚本:

python Telink_key_size_overflow.py COM7 A4:C1:38:D8:AD:A9

第一个参数是串口名称(在 Linux 上通常是 /dev/ttyACM0),第二个参数是易受攻击的 BLE 设备的地址。你可以使用任何 BLE 扫描器或 nRF Connect App 来发现该地址。

以密钥长度溢出漏洞为例,如果易受攻击的设备在崩溃后挂起,脚本将输出以下内容:

attack_logo

用于 Linux 的 Docker 镜像(可选)

如果你想通过 Docker 镜像使用 SweynTooth,从而避免安装 Python 依赖项,可以使用 docker.sh 辅助脚本来构建并运行 Docker 实例,或者从 releases 页面下载预构建的 Docker 镜像(链接)。docker.sh 的用法如下所述。

---------  HELP -------------
sudo ./docker run <script_name> <serial_port> <ble_target_address> - Start any sweyntooth script by its name (<script_name>)
sudo ./docker build                                                - Build docker container
sudo ./docker build release                                        - Build docker container and create compressed image for release
sudo ./docker shell                                                - Start docker container shell
---------- EXAMPLE ----------
./docker.sh run extras/Microchip_and_others_non_compliant_connection.py /dev/ttyACM0 f0:f8:f2:da:09:63

可用的 BLE 漏洞利用

每个漏洞利用脚本对应一个缺陷。下表总结了漏洞与在受影响 SoC 上利用漏洞的脚本之间的对应关系。

下载工具