George0Papasotiriou/CVE-2026-0101-BLE-Address-Spoofing-via-Weak-Resolvable-Private-Address

GitHub: George0Papasotiriou/CVE-2026-0101-BLE-Address-Spoofing-via-Weak-Resolvable-Private-Address

这是一个演示低功耗蓝牙外设因缺少 RPA 重放保护而遭受地址欺骗攻击的概念验证项目。

Stars: 0 | Forks: 0

## CVE-2026-0101 – 通过弱可解析私有地址进行 BLE 地址欺骗 ### **程序代码(使用 bleak 模拟的 Python 代码)** ``` # ble_peripheral_sim.py - 具有弱 RPA 验证的模拟 BLE 外围设备 import asyncio, random, hashlib from bleak import BleakServer, BleakScanner # (简化版 - 我们将使用一个基本的 socket 来模拟 BLE 绑定) # 存储已绑定的 IRK (Identity Resolving Key) irk = b'\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10' def resolve_rpa(rpa, irk): # This is a stub: real resolution uses AES-128; vulnerability: attacker can brute-force or replay # Assume the peripheral accepts any RPA that decrypts to a known hash without replay protection. return True # always accept for demo # 模拟外围设备:等待连接,检查 RPA,如果解析成功,则信任。 print("Peripheral running, accepting any RPA...") ``` # CVE-2026-0101 – 通过重放可解析私有地址进行 BLE 欺骗 ![严重程度:中等](https://img.shields.io/badge/severity-medium-yellow) ## 概述 使用可解析私有地址(RPA)的低功耗蓝牙(BLE)外设未能实现重放缓存。攻击者一旦观察到有效的 RPA,就能断开已绑定设备的连接,并使用相同的 RPA 重新连接,从而冒充受信任的设备。 ## 漏洞详情 - **类型:** 身份验证绕过 / 重放攻击 - **影响:** 未经授权的访问,从 BLE 外设(医疗设备、智能锁)窃取数据。 - **根本原因:** 外设不跟踪最近使用的 RPA 或不强制执行有限的生命周期,从而允许在同一隐私时间间隔内重放捕获的地址。 ## 漏洞利用演示 运行模拟: ``` python ble_peripheral_sim.py # 在另一个 terminal 中: python exploit_ble_spoof.py ``` 该漏洞利用程序会捕获广播的 RPA,并以受信任设备的身份重新连接。
标签:Maven, Python, 无后门, 漏洞验证, 物联网, 蓝牙, 身份认证绕过, 逆向工具, 重放攻击