Odebrany

CVE-2026-98116

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ę:

ALSA: pcm: Serializuj mmap PCM z realokacją bufora, aby naprawić stronę UAF

snd_pcm_hw_params() i snd_pcm_hw_free() - realokacja bufora zabezpieczającego
z kontrolą mmap_count przeprowadzoną pod blokadą strumienia PCM, ale plik
blokada zostaje zwolniona na długo przed faktycznym zwolnieniem bufora:
snd_pcm_sync_stop(), udoskonalanie ograniczeń i do_free_pages() wszystko
wydarzyć się pomiędzy. Z drugiej strony snd_pcm_mmap_data() przyjmuje wartość nie
lock w ogóle: sprawdza stan starego bufora i
dma_bytes, ponownie mapuje swoje strony do VMA i dopiero wtedy zwiększa
mmap_count.

Dlatego współbieżna mmap() może wślizgnąć się pomiędzy sprawdzeniem a
bezpłatny. remap_pfn_range() instaluje zapisywalne PTE dla starych buforów
strony bez odniesienia do stron i kolejne
do_free_pages() zwraca te strony do modułu alokacji stron, podczas gdy
VMA nadal je mapuje. Pozostawia to nieaktualne, zapisywalne mapowanie uwolnionych
strony: możliwość wykorzystania na poziomie strony po zwolnieniu, którą można wykorzystać lokalnie
eskalacja przywilejów.

Spraw, aby snd_pcm_mmap_data() uczestniczyła w schemacie dostępu do bufora
wprowadzono dla hw_params/hw_free: pobierz środowisko wykonawcze->dostęp do bufora
przed sprawdzeniem poprawności i ponownym mapowaniem, a następnie zwolnij go. Bufor
realokacja już kończy się niepowodzeniem z -EBUSY, gdy akcesory są aktywne,
a strona mmap kończy się teraz niepowodzeniem z -EBUSY, gdy trwa realokacja
postęp, więc sekwencja sprawdzania/ponownego mapowania i sekwencja sprawdzania/uwolniania
nie można już przeplatać.

Odtwarzacz, który zamienia tę rasę w przestarzałe, zapisywalne mapowanie
zwolnione strony bufora DMA są dostępne na żądanie.

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