Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-78117— Race condition on shared HCI TX descriptor in the Infineon PSOC 6 BLESS Bluetooth driver can leak adjacent memory over the air

Quick assessment

Affected
zephyrproject zephyr
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Infineon PSOC 6 BLESS HCI 驱动程序(位于 )将待发送的 HCI 数据包描述符存储在一个文件作用域的静态变量 中。 函数在获取 序列化信号量之前,就会先清空并填充该描述符的 、 和 字段。因此,该信号量仅保护了对 的调用,而未能保护该函数所读取的共享状态。 蓝牙主机并不保证仅存在一个 HCI 发送者。大多数传输会通过协作式 TX 处理器工作队列(TX-processor work queue)进行,但 会故意绕过 ,针对 操作码直接从调用者线程调用 。该调用者即为 ,它是 ACL 输入池(a

CVSS 4.2 · Medium

Possible ATT&CK Techniques 1 AI

T1069 · Permission Groups Discovery

Affected Version Matrix 1

VendorProduct Version RangeStatus
zephyrproject zephyr 3.4.0≤ 4.4.2 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-78117

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Race condition on shared HCI TX descriptor in the Infineon PSOC 6 BLESS Bluetooth driver can leak adjacent memory over the air
Source: CVE Program / CVE List V5
Vulnerability Description
The Infineon PSOC 6 BLESS HCI driver in drivers/bluetooth/hci/hci_infineon_psoc6_bless.c stored the outgoing HCI packet descriptor in a file-scope variable, static cy_stc_ble_hci_tx_packet_info_t hci_tx_pkt. psoc6_bless_send() cleared and populated that descriptor's packetType, dataLength and data fields before acquiring psoc6_bless_operation_sem, so the driver's serialising semaphore protected only the call into Cy_BLE_SoftHciSendAppPkt() and not the shared state that call reads. The Bluetooth host does not guarantee a single HCI sender. Most transmissions are funnelled through the cooperative TX-processor work queue, but bt_hci_cmd_send() deliberately bypasses bt_dev.cmd_tx_queue for BT_HCI_OP_HOST_NUM_COMPLETED_PACKETS and calls bt_send() directly from the caller's thread; that caller is bt_hci_host_num_completed_packets(), the acl_in_pool destroy callback, which runs on whichever thread drops the last reference to a received ACL buffer. CONFIG_BT_HCI_ACL_FLOW_CONTROL defaults to y on this driver's boards, and an application that returns -EINPROGRESS from its L2CAP recv callback and later calls bt_l2cap_chan_recv_complete() performs that unref from its own preemptible thread. A remote peer that generates Bluetooth traffic concurrently with the device's own transmissions raises the collision rate. When two senders interleave, the semaphore holder can hand the controller a descriptor whose dataLength comes from one net_buf and whose data pointer comes from another — or one whose buffer has already been returned to its pool. The controller then copies and transmits up to a full HCI/ACL payload starting at a shorter or recycled buffer, disclosing adjacent RAM contents to the connected peer; other interleavings duplicate one HCI packet and silently drop another, disrupting the link. The driver only reads through the shared descriptor, so no memory corruption or write primitive results, and the disclosed bytes are not attacker-chosen. The fix makes the descriptor a local variable in psoc6_bless_send(), removing the shared state; Cy_BLE_SoftHciSendAppPkt() copies the packet before returning, so it need not outlive the call.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L
Source: CVE Program / CVE List V5
Vulnerability Type
使用共享资源的并发执行不恰当同步问题(竞争条件)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
zephyrproject zephyr 3.4.0 ~ 4.4.2 -

II. Public POCs for CVE-2026-78117

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-78117

请登录查看更多情报信息。

Other References for CVE-2026-78117 (2)

Same Patch Batch · zephyrproject · 2026-10-21 · 8 CVEs total

CVE-2026-19676 7.8 HIGH PECI transfer syscall verifier does not validate embedded user buffer pointers, allowing a
CVE-2026-79976 7.1 HIGH NULL pointer dereference in the MCTP I2C+GPIO target binding triggerable by a peer I2C con
CVE-2026-78118 7.0 HIGH Race condition on kernel wait queues: unlocked z_waitq_head() read in the timer expiration
CVE-2026-78119 6.3 MEDIUM Out-of-bounds write in the Nuvoton NPCX eSPI Target-Attached-Flash receive path from an un
CVE-2026-19947 5.3 MEDIUM Missing kernel object permission check in devmux syscalls allows unprivileged user threads
CVE-2026-78116 5.2 MEDIUM Double free of an RTIO submission in the Broadcom AFBR-S50 sensor driver data-evaluation e
CVE-2026-18748 3.5 LOW Out-of-bounds read in Bluetooth Classic A2DP codec information element handling

IV. Related Vulnerabilities

V. Comments for CVE-2026-78117

No comments yet


Leave a comment