Odebrany

CVE-2026-98739

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

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

W jądrze Linuksa usunięto następującą lukę:

Bluetooth: RFCOMM: Naprawiono początkowy wyścig referencyjny portu

W przypadku urządzeń RFCOMM_RELEASE_ONHUP, rfcomm_tty_install() i
Obie funkcje __rfcomm_release_dev() używają RFCOMM_TTY_OWNED do decydowania, kto porzuci
początkowe odniesienie do tty_port. Ścieżka wydania testuje bit osobno
z ustawienia ścieżki instalacji, więc oba mogą porzucić to odniesienie.

Synchroniczne rozłączenie nie zapobiega temu wyścigowi: port->tty nie
przypisany do tty_port_open(), po instalacji. Następujące
możliwe jest przeplatanie:

1. Zainstaluj i zwolnij każdy, aby uzyskać referencję za pomocą rfcomm_dev_get().
2. Wydanie stwierdza, że ​​RFCOMM_TTY_OWNED jest jasne.
3. Instalacja ustawia RFCOMM_TTY_OWNED i usuwa początkowe odniesienie.
4. Wydanie ponownie usuwa to samo początkowe odniesienie.
5. Czyszczenie TTY usuwa odniesienie i zwalnia urządzenie.
6. Release wykonuje ostateczną funkcję tty_port_put() na zwolnionym porcie.

KASAN poinformował:

BŁĄD: KASAN: użycie płyty po zwolnieniu w tty_port_put+0x22/0x190
Zapisz rozmiar 4 pod adresem ffff8881001d3d5c w zadaniu poc/92

Zadzwoń do śledzenia:
tty_port_put+0x22/0x190
rfcomm_dev_ioctl+0x1d4/0x1930
skarpetka_do_ioctl+0x110/0x260
skarpetka_ioctl+0x380/0x590
__x64_sys_ioctl+0x134/0x1c0

Przydzielone przez zadanie 88:
rfcomm_dev_ioctl+0x8f6/0x1930
skarpetka_do_ioctl+0x110/0x260
skarpetka_ioctl+0x380/0x590
__x64_sys_ioctl+0x134/0x1c0

Uwolniony przez zadanie 65:
kfree+0x131/0x3c0
rfcomm_dev_destruct+0x23b/0x2f0
release_one_tty+0xc1/0x370
proces_one_work+0x661/0x1090

Użyj test_and_set_bit() w obu ścieżkach, aby zmienił się tylko obiekt wywołujący
RFCOMM_TTY_OWNED z Clear na Set usuwa początkowe odniesienie. Każda ścieżka
zachowuje własne odniesienie do wyszukiwania aż do wydania lub oczyszczenia TTY, zachowując
istniejąca kolejność wywołań zwrotnych i obsługa błędów.

>_ 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