Executive brief
A vulnerability was identified in the Linux kernel's Netfilter component, which manages network traffic filtering and queueing. Under specific conditions, the system could experience a crash or instability when destroying network queue instances. This could allow a local user to cause a denial-of-service, potentially disrupting network operations or system availability.
Technical details
A vulnerability exists in the nfnetlink_queue component of the Linux kernel due to missing RCU (Read-Copy-Update) locking in the instance_destroy_rcu() function. Syzbot identified that nf_reinject() could be invoked without the necessary rcu_read_lock(), leading to suspicious RCU usage and potential use-after-free or null pointer dereference scenarios during the flushing of queue instances. An attacker with local access could trigger this condition to cause a kernel panic (Denial of Service). The fix involves explicitly acquiring and releasing the rcu_read_lock() during the nfqnl_flush() call within the destruction path.
Affected products
- Linux Linux Kernel 2.6.25 to 4.19.316, 4.20 to 5.4.278, 5.5 to 5.10.219, 5.11 to 5.15.161, 5.16 to 6.1.93, 6.2 to 6.6.33, 6.7 to 6.9.4
Timeline
- 2024-05-15: patched: Initial fix authored by Eric Dumazet
- 2024-06-21: advisory: CVE published in NVD
References
- https://git.kernel.org/stable/c/215df6490e208bfdd5b3012f5075e7f8736f3e7a
- https://git.kernel.org/stable/c/25ea5377e3d2921a0f96ae2551f5ab1b36825dd4
- https://git.kernel.org/stable/c/3989b817857f4890fab9379221a9d3f52bf5c256
- https://git.kernel.org/stable/c/68f40354a3851df46c27be96b84f11ae193e36c5
- https://git.kernel.org/stable/c/8658bd777cbfcb0c13df23d0ea120e70517761b9
- https://git.kernel.org/stable/c/8f365564af898819a523f1a8cf5c6ce053e9f718
- https://git.kernel.org/stable/c/dc21c6cc3d6986d938efbf95de62473982c98dec