Średni Odebrany

CVE-2026-78117

opublikowano:
modyfikacja:
Ocena CVSS
4.2
Średni · v3.1
wektor: CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

Sterownik Infineon PSOC 6 BLESS HCI w sterownikach/bluetooth/hci/hci_infineon_psoc6_bless.c zapisał wychodzący deskryptor pakietu HCI w zmiennej o zasięgu pliku, statycznej cy_stc_ble_hci_tx_packet_info_t hci_tx_pkt. psoc6_bless_send() wyczyściła i wypełniła pola typu packageType, dataLength i danych tego deskryptora przed pobraniem psoc6_bless_operative_sem, więc semafor serializujący sterownika chronił tylko wywołanie Cy_BLE_SoftHciSendAppPkt(), a nie współdzielony stan, który odczytuje to wywołanie.

Host Bluetooth nie gwarantuje pojedynczego nadawcy HCI. Większość transmisji jest kierowana przez kolejkę roboczą współpracującego procesora TX, ale bt_hci_cmd_send() celowo omija bt_dev.cmd_tx_queue dla BT_HCI_OP_HOST_NUM_COMPLETED_PACKETS i wywołuje bt_send() bezpośrednio z wątku wywołującego; tym wywołującym jest bt_hci_host_num_completed_packets(), wywołanie zwrotne niszczące acl_in_pool, które działa w dowolnym wątku, który usuwa ostatnie odwołanie do odebranego bufora ACL. CONFIG_BT_HCI_ACL_FLOW_Control domyślnie ma wartość y na płytach tego sterownika, a aplikacja, która zwraca -EINPROGRESS z wywołania zwrotnego L2CAP recv i później wywołuje bt_l2cap_chan_recv_complete() wykonuje to odwołanie z własnego wątku, który można wywłaszczyć. Zdalny peer, który generuje ruch Bluetooth jednocześnie z własnymi transmisjami urządzenia, zwiększa współczynnik kolizji.

Kiedy dwóch nadawców dokonuje przeplatania, posiadacz semafora może przekazać kontrolerowi deskryptor, którego dataLength pochodzi z jednego net_buf i którego wskaźnik danych pochodzi z innego — lub taki, którego bufor został już zwrócony do jego puli. Następnie kontroler kopiuje i przesyła aż do pełnego ładunku HCI/ACL, zaczynając od krótszego lub odzyskanego bufora, ujawniając zawartość sąsiedniej pamięci RAM podłączonemu partnerowi; inne przeploty duplikują jeden pakiet HCI i cicho odrzucają inny, zakłócając łącze. Sterownik odczytuje jedynie udostępniony deskryptor, więc nie dochodzi do uszkodzenia pamięci ani zapisu pierwotnych wyników, a ujawnione bajty nie są wybierane przez atakującego. Poprawka sprawia, że ​​deskryptor staje się zmienną lokalną w psoc6_bless_send(), usuwając stan współdzielony; Cy_BLE_SoftHciSendAppPkt() kopiuje pakiet przed zwróceniem, więc nie musi on przetrwać wywołania.

>_ Słabości (CWE)

>_ Referencje

Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.

This product uses the NVD API but is not endorsed or certified by the NVD.

Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.

CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.

NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org