CVE-2026-11893 in Zephyr정보

요약

\~에 의해 VulDB • 2026. 08. 11.

Bouffalo Lab의 온칩 BLE 컨트롤러(BL60x/BL70x/BL61x)용 Bluetooth HCI 드라이버에서 `drivers/bluetooth/hci/hci_bflb.c` 내의 `bt_bflb_send()` 함수는 `bt_hci_driver_api.send()` 버퍼 소유권 계약(contract)을 위반합니다. 해당 계약(《include/zephyr/drivers/bluetooth.h》에 문서화됨)은 성공 시에만 버퍼 참조를 소비해야 하며, 오류 발생 시 호출자가 여전히 참조를 소유하고 이를 해제(unref)해야 한다고 요구합니다. 그러나 이 드라이버는 모든 오류 경로를 공유 레이블로 라우팅하여 에러 코드를 반환하기 전에 `net_buf_unref(buf)`을 무조건적으로 호출함으로써 실패 시에도 버퍼를 소비했습니다.

`send()`가 오류를 반환할 때, 호스트 TX 경로(《subsys/bluetooth/host/conn.c》의 `send_buf()`)는 여전히 자신이 소유하고 있다고 믿고 동일한 버퍼에 대해 다시 unref합니다. 이로 인해 net_buf 참조 카운트가 과감소됩니다. 해당 버퍼는 destroy 콜백이 아직 큐에 남아 있는 부모 버퍼의 참조 수도 감소시키는 TX 조각(fragment)이기 때문에, 이 오류로 인해 연결 TX 큐에서 접근 가능한 상태에서 부모 버퍼가 조기에 해제되어 use-after-free 및 공유 net_buf 풀(pool)의 손상(corrption)을 초래하며, 이는 단순한 누수(leak)보다 더 심각한 문제입니다.

이러한 오류 조건은 호스트에서 컨트롤러로의 전송 경로(controller 전송 실패 또는 지원되지 않는 H:4 패킷 타입 발생 시)에 위치하므로, 공격자가 직접 제공한 무선(Radio) 바이트에 의해 유발되지는 않습니다. 원격/인접 피어는 예를 들어 높은 링크 부하 하에서 컨트롤러 TX 오류를 유도하는 등 간접적으로만 이러한 조건에 영향을 줄 수 있습니다. 도달 가능한 경우 그 결과는 Bouffalo Lab 온칩 컨트롤러 중 하나를 사용하는 장치로 한정된 BLE 스택의 서비스 거부(크래시/풀 손상)이며, 추가적인 메모리 손상이 발생할 가능성이 있습니다.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

책임이 있는

Zephyr

예약하다

2026. 06. 10.

모더레이션

수락

항목

VDB-387990

EPSS

0.00000

활동

낮음

출처

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!