In the Linux kernel, the following vulnerability has been resolved:
nfsd: Fix cred ref leak in nfsd_nl_threads_set_doit().
syzbot reported memory leak of struct cred. [0]
nfsd_nl_threads_set_doit() passes get_current_cred() to nfsd_svc(), but put_cred() is not called after that.
The cred is finally passed down to _svc_xprt_create(), which calls get_cred() with the cred for struct svc_xprt.
The ownership of the refcount by get_current_cred() is not transferred to anywhere and is just leaked.
nfsd_svc() is also called from write_threads(), but it does not bump file->f_cred there.
nfsd_nl_threads_set_doit() is called from sendmsg() and current->cred does not go away.
Let's use current_cred() in nfsd_nl_threads_set_doit().
[0]: BUG: memory leak unreferenced object 0xffff888108b89480 (size 184): comm "syz-executor", pid 5994, jiffies 4294943386 hex dump (first 32 bytes): 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace (crc 369454a7): kmemleak_alloc_recursive include/linux/kmemleak.h:44 [inline] slab_post_alloc_hook mm/slub.c:4958 [inline] slab_alloc_node mm/slub.c:5263 [inline] kmem_cache_alloc_noprof+0x412/0x580 mm/slub.c:5270 prepare_creds+0x22/0x600 kernel/cred.c:185 copy_creds+0x44/0x290 kernel/cred.c:286 copy_process+0x7a7/0x2870 kernel/fork.c:2086 kernel_clone+0xac/0x6e0 kernel/fork.c:2651 __do_sys_clone+0x7f/0xb0 kernel/fork.c:2792 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xa4/0xf80 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel6.18-libbpf-debuginfoUpgrade kernel6.18-develUpgrade kernel6.18-tools-develUpgrade kernel6.12-debuginfoUpgrade kernel6.12-headersUpgrade python3-perf6.18Upgrade perf6.12Upgrade kernel6.12-modules-extra-commonUpgrade python3-perf6.18-debuginfoUpgrade kernel6.18-tools-debuginfoUpgrade perf6.18Upgrade bpftool6.18Upgrade kernel6.18-modules-extra-commonUpgrade kernel6.18-libbpf-staticUpgrade kernel6.12-toolsUpgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.18-libbpfUpgrade kernel6.18-debuginfoUpgrade kernel-livepatch-6.18.20-20.229Upgrade bpftool6.12-debuginfoUpgrade perf6.12-debuginfoUpgrade kernel6.18-debuginfo-common-x86_64Upgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel6.18-toolsUpgrade bpftool6.12Upgrade kernel6.12-libbpf-develUpgrade kernel6.18Upgrade kernel6.12-modules-extraUpgrade kernel6.12Upgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-tools-develUpgrade kernel6.12-tools-debuginfoUpgrade kernel6.12-libbpfUpgrade python3-perf6.12-debuginfoUpgrade python3-perf6.12Upgrade kernel-livepatch-6.12.77-99.140Upgrade kernel6.12-develUpgrade kernel6.18-libbpf-develUpgrade bpftool6.18-debuginfoUpgrade kernel6.18-modules-extraUpgrade kernel6.12-libbpf-debuginfoUpgrade kernel6.12-libbpf-staticUpgrade perf6.18-debuginfoUpgrade kernel6.18-headers | Apr 9, 2026 | Mar 25, 2026 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Mar 25, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub