Katalog CVE

CVE-2026-90303

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux na architekturze ARM przy CONFIG_DEBUG_USER=y i parametrze "user_debug=31" błąd użytkownika może wywołać show_pte() bez blokady. Równoległe munmap() w tym samym procesie może zwolnić strony tablicy stron w trakcie ich przeglądania, powodując use-after-free, a przy CONFIG_ARM_LPAE=y nawet panikę jądra. Poprawka zakłada mmap_write_lock() wokół show_pte() dla błędów użytkownika i ogranicza jego wywołanie do adresów przestrzeni użytkownika (addr < TASK_SIZE).

Ocena ryzyka

Może prowadzić do use-after-free lub paniki jądra, powodując odmowę usługi. Dotyczy systemów ARM z włączonym CONFIG_DEBUG_USER i parametrem user_debug=31.

Rekomendacja

Zaktualizować jądro Linux do wersji zawierającej poprawkę ARM 9485/1. Rozważyć wyłączenie CONFIG_DEBUG_USER lub parametru user_debug=31, jeśli nie jest wymagany.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: ARM: 9485/1: mm: acquire mmap write lock around show_pte() for user faults When CONFIG_DEBUG_USER=y, and cmdline "user_debug=31" is set, a user fault may trigger show_pte() without any lock. If another thread in the same process concurrently calls munmap(), the page table pages may be freed while show_pte() is still traversing them, causing a use-after-free in show_pte(). If CONFIG_ARM_LPAE=y, this may cause a kernel panic if the pages table of PMD are freed when show_pte() is running. Acquire mmap_write_lock() around show_pte() for user faults to fix the contention. For user faults, additionally restrict that show_pte() is called only when the addr is a user-space address (addr < TASK_SIZE). This is because the lock of tsk->mm only protects the virtual memory of user address space, furthermore, dumping the page tables of a kernel-space address for user faults is unnecessary and may have security implications. Keep everything unchanged for kernel faults, because the kernel is already in the "oops" state, acquiring a lock may risk a deadlock.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS