Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2024-50121— nfsd: cancel nfsd_shrinker_work using sync mode in nfs4_state_shutdown_net

EPSS 0.02% · P5
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2024-50121

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
nfsd: cancel nfsd_shrinker_work using sync mode in nfs4_state_shutdown_net
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: nfsd: cancel nfsd_shrinker_work using sync mode in nfs4_state_shutdown_net In the normal case, when we excute `echo 0 > /proc/fs/nfsd/threads`, the function `nfs4_state_destroy_net` in `nfs4_state_shutdown_net` will release all resources related to the hashed `nfs4_client`. If the `nfsd_client_shrinker` is running concurrently, the `expire_client` function will first unhash this client and then destroy it. This can lead to the following warning. Additionally, numerous use-after-free errors may occur as well. nfsd_client_shrinker echo 0 > /proc/fs/nfsd/threads expire_client nfsd_shutdown_net unhash_client ... nfs4_state_shutdown_net /* won't wait shrinker exit */ /* cancel_work(&nn->nfsd_shrinker_work) * nfsd_file for this /* won't destroy unhashed client1 */ * client1 still alive nfs4_state_destroy_net */ nfsd_file_cache_shutdown /* trigger warning */ kmem_cache_destroy(nfsd_file_slab) kmem_cache_destroy(nfsd_file_mark_slab) /* release nfsd_file and mark */ __destroy_client ==================================================================== BUG nfsd_file (Not tainted): Objects remaining in nfsd_file on __kmem_cache_shutdown() -------------------------------------------------------------------- CPU: 4 UID: 0 PID: 764 Comm: sh Not tainted 6.12.0-rc3+ #1 dump_stack_lvl+0x53/0x70 slab_err+0xb0/0xf0 __kmem_cache_shutdown+0x15c/0x310 kmem_cache_destroy+0x66/0x160 nfsd_file_cache_shutdown+0xac/0x210 [nfsd] nfsd_destroy_serv+0x251/0x2a0 [nfsd] nfsd_svc+0x125/0x1e0 [nfsd] write_threads+0x16a/0x2a0 [nfsd] nfsctl_transaction_write+0x74/0xa0 [nfsd] vfs_write+0x1a5/0x6d0 ksys_write+0xc1/0x160 do_syscall_64+0x5f/0x170 entry_SYSCALL_64_after_hwframe+0x76/0x7e ==================================================================== BUG nfsd_file_mark (Tainted: G B W ): Objects remaining nfsd_file_mark on __kmem_cache_shutdown() -------------------------------------------------------------------- dump_stack_lvl+0x53/0x70 slab_err+0xb0/0xf0 __kmem_cache_shutdown+0x15c/0x310 kmem_cache_destroy+0x66/0x160 nfsd_file_cache_shutdown+0xc8/0x210 [nfsd] nfsd_destroy_serv+0x251/0x2a0 [nfsd] nfsd_svc+0x125/0x1e0 [nfsd] write_threads+0x16a/0x2a0 [nfsd] nfsctl_transaction_write+0x74/0xa0 [nfsd] vfs_write+0x1a5/0x6d0 ksys_write+0xc1/0x160 do_syscall_64+0x5f/0x170 entry_SYSCALL_64_after_hwframe+0x76/0x7e To resolve this issue, cancel `nfsd_shrinker_work` using synchronous mode in nfs4_state_shutdown_net.
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于nfsd模块中,取消nfsd_shrinker_work时未使用同步模式,可能导致资源释放不当。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 2bbf10861d51dae76c6da7113516d0071c782653 ~ f67138dd338cb564ade7d3755c8cd4f68b46d397 -
LinuxLinux 6.2 -

II. Public POCs for CVE-2024-50121

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-50121

登录查看更多情报信息。

Same Patch Batch · Linux · 2024-11-05 · 50 CVEs total

CVE-2024-50123bpf: Add the missing BPF_LINK_TYPE invocation for sockmap
CVE-2024-50129net: pse-pd: Fix out of bound for loop
CVE-2024-50134drm/vboxvideo: Replace fake VLA at end of vbva_mouse_pointer_shape with real VLA
CVE-2024-50136net/mlx5: Unregister notifier on eswitch init failure
CVE-2024-50135nvme-pci: fix race condition between reset and nvme_dev_disable()
CVE-2024-50137reset: starfive: jh71x0: Fix accessing the empty member on JH7110 SoC
CVE-2024-50138bpf: Use raw_spinlock_t in ringbuf
CVE-2024-50132tracing/probes: Fix MAX_TRACE_ARGS limit handling
CVE-2024-50127net: sched: fix use-after-free in taprio_change()
CVE-2024-50125Bluetooth: SCO: Fix UAF on sco_sock_timeout
CVE-2024-50126net: sched: use RCU read-side critical section in taprio_dump()
CVE-2024-50124Bluetooth: ISO: Fix UAF on iso_sock_timeout
CVE-2024-50122PCI: Hold rescan lock while adding devices during host probe
CVE-2024-50120smb: client: Handle kstrdup failures for passwords
CVE-2024-50119cifs: fix warning when destroy 'cifs_io_request_pool'
CVE-2024-50118btrfs: reject ro->rw reconfiguration if there are hard ro requirements
CVE-2024-50117drm/amd: Guard against bad data for ATIF ACPI method
CVE-2024-50116nilfs2: fix kernel bug due to missing clearing of buffer delay flag
CVE-2024-50115KVM: nSVM: Ignore nCR3[4:0] when loading PDPTEs from memory
CVE-2024-50114KVM: arm64: Unregister redistributor for failed vCPU creation

Showing top 20 of 50 CVEs. View all on vendor page → →

IV. Related Vulnerabilities

V. Comments for CVE-2024-50121

No comments yet


Leave a comment