In the Linux kernel, the following vulnerability has been resolved:
NFSD: Fix READDIR buffer overflow
If a client sends a READDIR count argument that is too small (say, zero), then the buffer size calculation in the new init_dirlist helper functions results in an underflow, allowing the XDR stream functions to write beyond the actual buffer.
This calculation has always been suspect. NFSD has never sanity- checked the READDIR count argument, but the old entry encoders managed the problem correctly.
With the commits below, entry encoding changed, exposing the underflow to the pointer arithmetic in xdr_reserve_space().
Modern NFS clients attempt to retrieve as much data as possible for each READDIR request. Also, we have no unit tests that exercise the behavior of READDIR at the lower bound of @count values. Thus this case was missed during testing.
CVSS Details
- CVSS 3.1 Base Score: 9.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 30, 2024 | Mar 4, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Mar 4, 2024 |
| Suse | — | Upgrade gfs2-kmp-rtUpgrade dtb-mediatekUpgrade cluster-md-kmp-azureUpgrade dtb-hisiliconUpgrade kernel-devel-azureUpgrade kernel-devel-rtUpgrade dlm-kmp-defaultUpgrade kernel-debugUpgrade kernel-develUpgrade dtb-apmUpgrade dtb-armUpgrade kernel-kvmsmallUpgrade reiserfs-kmp-azureUpgrade kernel-syms-rtUpgrade kernel-64kb-optionalUpgrade kernel-64kb-develUpgrade kernel-defaultUpgrade kernel-obs-qaUpgrade dtb-socionextUpgrade kernel-macrosUpgrade kernel-symsUpgrade dtb-amdUpgrade gfs2-kmp-64kbUpgrade kernel-kvmsmall-develUpgrade kernel-debug-livepatch-develUpgrade kernel-rt-develUpgrade kernel-azure-livepatch-develUpgrade reiserfs-kmp-defaultUpgrade kernel-azure-vdsoUpgrade dtb-qcomUpgrade kernel-rt-livepatch-develUpgrade kernel-64kb-livepatch-develUpgrade kernel-default-extraUpgrade kernel-docsUpgrade dtb-amlogicUpgrade dtb-rockchipUpgrade kernel-rt_debug-vdsoUpgrade cluster-md-kmp-defaultUpgrade dlm-kmp-azureUpgrade kernel-syms-azureUpgrade reiserfs-kmp-rtUpgrade kernel-rt-livepatchUpgrade ocfs2-kmp-rtUpgrade kernel-default-optionalUpgrade dtb-xilinxUpgrade kselftests-kmp-defaultUpgrade kselftests-kmp-rtUpgrade kernel-zfcpdumpUpgrade kernel-debug-develUpgrade kernel-rt-extraUpgrade cluster-md-kmp-64kbUpgrade kernel-rt-vdsoUpgrade dtb-renesasUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-obs-buildUpgrade kernel-default-develUpgrade kselftests-kmp-64kbUpgrade kernel-debug-vdsoUpgrade ocfs2-kmp-azureUpgrade kernel-rt_debug-develUpgrade kernel-azure-develUpgrade ocfs2-kmp-defaultUpgrade kernel-rtUpgrade dtb-lgUpgrade kernel-docs-htmlUpgrade dtb-exynosUpgrade kernel-default-livepatch-develUpgrade kernel-azure-extraUpgrade dlm-kmp-rtUpgrade kernel-source-vanillaUpgrade kernel-source-azureUpgrade kernel-sourceUpgrade kernel-default-baseUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-64kb-extraUpgrade kselftests-kmp-azureUpgrade dtb-sprdUpgrade dtb-caviumUpgrade dtb-alteraUpgrade kernel-azureUpgrade kernel-default-livepatchUpgrade kernel-rt-optionalUpgrade gfs2-kmp-azureUpgrade kernel-default-base-rebuildUpgrade dlm-kmp-64kbUpgrade dtb-broadcomUpgrade dtb-nvidiaUpgrade kernel-64kbUpgrade kernel-source-rtUpgrade kernel-kvmsmall-vdsoUpgrade cluster-md-kmp-rtUpgrade reiserfs-kmp-64kbUpgrade dtb-marvellUpgrade kernel-azure-optionalUpgrade dtb-amazonUpgrade ocfs2-kmp-64kbUpgrade dtb-allwinnerUpgrade kernel-rt_debugUpgrade gfs2-kmp-defaultUpgrade kernel-default-vdsoUpgrade dtb-appleUpgrade dtb-freescale | Aug 9, 2024 | Mar 4, 2024 |
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