Katalog CVE

CVE-2024-47660

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

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.16%

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

Streszczenie

W jądrze Linux rozwiązano podatność w fsnotify dotyczącą leniwego czyszczenia flag PARENT_WATCHED. W niektórych konfiguracjach katalogi mogą mieć wiele (zwykle negatywnych) wpisów dentry, przez co funkcja __fsnotify_update_child_dentry_flags() może zajmować dużo czasu pod blokadą inode->i_lock, powodując znaczne kontencje i raporty softlockup. Poprawka polega na ustawianiu flag PARENT_WATCHED tylko gdy rodzic zaczyna obserwować dzieci, a przy zaprzestaniu obserwacji flagi są czyszczone leniwie w __fsnotify_parent().

Ocena ryzyka

Wysokie kontencje na blokadzie inode->i_lock mogą prowadzić do softlockupów i degradacji wydajności systemu. Ryzyko dotyczy systemów z intensywnym użyciem fsnotify i katalogami o wielu wpisach dentry.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę dla CVE-2024-47660. Zweryfikuj, czy dystrybucja dostarczyła odpowiedni pakiet jądra.

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: fsnotify: clear PARENT_WATCHED flags lazily In some setups directories can have many (usually negative) dentries. Hence __fsnotify_update_child_dentry_flags() function can take a significant amount of time. Since the bulk of this function happens under inode->i_lock this causes a significant contention on the lock when we remove the watch from the directory as the __fsnotify_update_child_dentry_flags() call from fsnotify_recalc_mask() races with __fsnotify_update_child_dentry_flags() calls from __fsnotify_parent() happening on children. This can lead upto softlockup reports reported by users. Fix the problem by calling fsnotify_update_children_dentry_flags() to set PARENT_WATCHED flags only when parent starts watching children. When parent stops watching children, clear false positive PARENT_WATCHED flags lazily in __fsnotify_parent() for each accessed child.

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