Katalog CVE

CVE-2024-49881

ŚrednieCVSS 5.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.25%

Percentyl 15 - wyżej niż 15% wszystkich znanych CVE

Streszczenie

W jądrze Linux funkcja ext4_find_extent() nie aktualizuje *orig_path po ponownej alokacji i inicjalizacji ścieżki, co może prowadzić do dereferencji NULL pointera lub wycieku pamięci. Może to spowodować awarię systemu.

Ocena ryzyka

Może wystąpić awaria jądra (kernel panic) lub zawieszenie systemu, powodując niedostępność usług i potencjalną utratę danych.

Rekomendacja

Zaktualizuj jądro Linux do wersji z poprawką, która aktualizuje *orig_path po udanym wyszukaniu extentu.

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: ext4: update orig_path in ext4_find_extent() In ext4_find_extent(), if the path is not big enough, we free it and set *orig_path to NULL. But after reallocating and successfully initializing the path, we don't update *orig_path, in which case the caller gets a valid path but a NULL ppath, and this may cause a NULL pointer dereference or a path memory leak. For example: ext4_split_extent path = *ppath = 2000 ext4_find_extent if (depth > path[0].p_maxdepth) kfree(path = 2000); *orig_path = path = NULL; path = kcalloc() = 3000 ext4_split_extent_at(*ppath = NULL) path = *ppath; ex = path[depth].p_ext; // NULL pointer dereference! ================================================================== BUG: kernel NULL pointer dereference, address: 0000000000000010 CPU: 6 UID: 0 PID: 576 Comm: fsstress Not tainted 6.11.0-rc2-dirty #847 RIP: 0010:ext4_split_extent_at+0x6d/0x560 Call Trace: <TASK> ext4_split_extent.isra.0+0xcb/0x1b0 ext4_ext_convert_to_initialized+0x168/0x6c0 ext4_ext_handle_unwritten_extents+0x325/0x4d0 ext4_ext_map_blocks+0x520/0xdb0 ext4_map_blocks+0x2b0/0x690 ext4_iomap_begin+0x20e/0x2c0 [...] ================================================================== Therefore, *orig_path is updated when the extent lookup succeeds, so that the caller can safely use path or *ppath.

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