FICHE CVE

CVE-2026-11893

Publiée le 2026-08-11 · Dernière modification le 2026-10-23

🇫🇷 EN BREF

Les appareils utilisant des contrôleurs BLE intégrés de Bouffalo Lab (BL60x, BL70x ou BL61x) sont sensibles à une faille de corruption de mémoire dans le pilote Bluetooth. Un attaquant à proximité pourrait potentiellement faire planter la pile BLE ou corrompre la mémoire du système en provoquant des échecs de transmission, par exemple en saturant la liaison avec un trafic important. Cette action est difficile à exécuter car elle nécessite un timing précis et des conditions réseau spécifiques, bien qu'elle ne requière ni authentification ni interaction de l'utilisateur.

CVSS 3.15.9 MOYENNE
Publiée2026-08-11
Dernière modification2026-10-23

DÉTAIL DU VECTEUR CVSS

Vecteur d'attaqueAdjacent
Complexité d'attaqueÉlevée
Privilèges requisAucun
Interaction utilisateurAucune
PortéeInchangée
Impact sur la confidentialitéAucun
Impact sur l'intégritéFaible
Impact sur la disponibilitéÉlevé

RÉFÉRENCES

Description officielle du NVD (en anglais)

The Bluetooth HCI driver for Bouffalo Lab on-chip BLE controllers (BL60x/BL70x/BL61x), bt_bflb_send() in drivers/bluetooth/hci/hci_bflb.c, violates the bt_hci_driver_api.send() buffer-ownership contract. That contract (documented at include/zephyr/drivers/bluetooth.h) requires the buffer reference to be consumed only on success; on error the caller still owns the reference and unrefs it. The driver instead routed all error paths through a shared label that unconditionally called net_buf_unref(buf) before returning the error code, consuming the buffer on failure as well. When send() returns an error, the host TX path (send_buf() in subsys/bluetooth/host/conn.c) unrefs the same buffer again, believing it still owns it. This double-unref over-decrements the net_buf reference count. Because the buffer is a TX fragment whose destroy callback also decrements its still-queued parent buffer, the parent is freed prematurely while reachable on the connection TX queue, producing a use-after-free and corruption of the shared net_buf pool rather than a benign leak. The error conditions are on the host-to-controller transmit path (controller send failure, or an unsupported H:4 packet type), so they are not driven directly by attacker-supplied radio bytes; a remote/adjacent peer can influence them only indirectly, e.g. by inducing controller TX failures under heavy link load. The consequence when reached is BLE-stack denial of service (crash / pool corruption) with possible further memory corruption, bounded to devices using one of these Bouffalo Lab on-chip controllers.