CVE-2026-45884
ŚrednieCVSS 5.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 5 - wyżej niż 5% wszystkich znanych CVE
Streszczenie
W jądrze Linux w module AppArmor wykryto podatność polegającą na niedopełnieniu licznika per-CPU w funkcji aa_get_buffer. Gdy licznik hold osiągnie zero przy niezerowym count, następuje zawinięcie do UINT_MAX, co uniemożliwia zwrot buforów do globalnej listy i prowadzi do głodu na innych CPU oraz nadmiernych alokacji pamięci.
Ocena ryzyka
Organizacja może doświadczyć znacznego spadku wydajności systemu z powodu wyczerpania buforów per-CPU, co zmusza do częstych alokacji pamięci i może prowadzić do odmowy usługi (DoS) w środowiskach z intensywnym użyciem AppArmor.
Rekomendacja
Należy niezwłocznie zaktualizować jądro Linux do wersji zawierającej poprawkę zabezpieczającą przed niedopełnieniem licznika hold w funkcji aa_get_buffer.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: apparmor: avoid per-cpu hold underflow in aa_get_buffer When aa_get_buffer() pulls from the per-cpu list it unconditionally decrements cache->hold. If hold reaches 0 while count is still non-zero, the unsigned decrement wraps to UINT_MAX. This keeps hold non-zero for a very long time, so aa_put_buffer() never returns buffers to the global list, which can starve other CPUs and force repeated kmalloc(aa_g_path_max) allocations. Guard the decrement so hold never underflows.

