First published: Fri Dec 27 2024(Updated: )
In the Linux kernel, the following vulnerability has been resolved: nfsd: make sure exp active before svc_export_show The function `e_show` was called with protection from RCU. This only ensures that `exp` will not be freed. Therefore, the reference count for `exp` can drop to zero, which will trigger a refcount use-after-free warning when `exp_get` is called. To resolve this issue, use `cache_get_rcu` to ensure that `exp` remains active. ------------[ cut here ]------------ refcount_t: addition on 0; use-after-free. WARNING: CPU: 3 PID: 819 at lib/refcount.c:25 refcount_warn_saturate+0xb1/0x120 CPU: 3 UID: 0 PID: 819 Comm: cat Not tainted 6.12.0-rc3+ #1 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.1-2.fc37 04/01/2014 RIP: 0010:refcount_warn_saturate+0xb1/0x120 ... Call Trace: <TASK> e_show+0x20b/0x230 [nfsd] seq_read_iter+0x589/0x770 seq_read+0x1e5/0x270 vfs_read+0x125/0x530 ksys_read+0xc1/0x160 do_syscall_64+0x5f/0x170 entry_SYSCALL_64_after_hwframe+0x76/0x7e
Credit: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Software | Affected Version | How to fix |
---|---|---|
Linux Kernel | ||
Linux Kernel | >=3.17<5.4.287 | |
Linux Kernel | >=5.5<5.10.231 | |
Linux Kernel | >=5.11<5.15.174 | |
Linux Kernel | >=5.16<6.1.120 | |
Linux Kernel | >=6.2<6.6.64 | |
Linux Kernel | >=6.7<6.12.4 | |
debian/linux | <=5.10.223-1 | 5.10.234-1 6.1.129-1 6.1.133-1 6.12.22-1 |
debian/linux-6.1 | 6.1.129-1~deb11u1 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2024-56558 is considered to have a high severity due to potential exploitation leading to denial of service.
To fix CVE-2024-56558, upgrade to the latest version of the Linux Kernel that addresses this vulnerability.
CVE-2024-56558 affects multiple versions of the Linux Kernel, specifically those from 3.17 through 6.12.4.
Potentially, CVE-2024-56558 could lead to data loss if exploited, as it may allow denial of service conditions.
CVE-2024-56558 is caused by an insufficient reference count management within the `e_show` function in the Linux Kernel.