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 dtb-exynosUpgrade kernel-default-livepatch-develUpgrade kernel-default-base-rebuildUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-rt_debugUpgrade kernel-azure-extraUpgrade kernel-rt-vdsoUpgrade kernel-rt-extraUpgrade kernel-rt-optionalUpgrade kernel-sourceUpgrade kernel-default-vdsoUpgrade dtb-freescaleUpgrade kernel-docs-htmlUpgrade dtb-amazonUpgrade kernel-azure-develUpgrade dlm-kmp-64kbUpgrade kernel-default-livepatchUpgrade kernel-source-azureUpgrade dtb-appleUpgrade dtb-nvidiaUpgrade dtb-broadcomUpgrade kernel-azureUpgrade kselftests-kmp-azureUpgrade dtb-caviumUpgrade dtb-allwinnerUpgrade ocfs2-kmp-64kbUpgrade kernel-64kbUpgrade dtb-marvellUpgrade kernel-azure-optionalUpgrade dtb-alteraUpgrade kernel-source-rtUpgrade dtb-sprdUpgrade dtb-renesasUpgrade reiserfs-kmp-64kbUpgrade kernel-rt_debug-livepatch-develUpgrade cluster-md-kmp-64kbUpgrade dtb-lgUpgrade gfs2-kmp-azureUpgrade kernel-default-develUpgrade kernel-64kb-extraUpgrade kernel-kvmsmall-vdsoUpgrade dlm-kmp-rtUpgrade ocfs2-kmp-defaultUpgrade cluster-md-kmp-rtUpgrade kernel-rtUpgrade kernel-obs-buildUpgrade kernel-default-baseUpgrade kernel-rt_debug-develUpgrade kernel-debug-vdsoUpgrade gfs2-kmp-defaultUpgrade kernel-source-vanillaUpgrade kselftests-kmp-64kbUpgrade ocfs2-kmp-azureUpgrade kernel-rt_debug-vdsoUpgrade kernel-rt-livepatchUpgrade kernel-default-optionalUpgrade kernel-defaultUpgrade dtb-amdUpgrade reiserfs-kmp-azureUpgrade dtb-armUpgrade kernel-azure-vdsoUpgrade dtb-qcomUpgrade gfs2-kmp-rtUpgrade kernel-symsUpgrade kernel-rt-develUpgrade reiserfs-kmp-rtUpgrade kernel-debug-livepatch-develUpgrade reiserfs-kmp-defaultUpgrade kernel-azure-livepatch-develUpgrade kernel-64kb-livepatch-develUpgrade cluster-md-kmp-defaultUpgrade dtb-xilinxUpgrade gfs2-kmp-64kbUpgrade dlm-kmp-defaultUpgrade kselftests-kmp-rtUpgrade kernel-kvmsmall-develUpgrade dtb-amlogicUpgrade kernel-64kb-optionalUpgrade kernel-obs-qaUpgrade kernel-debug-develUpgrade kernel-default-extraUpgrade dtb-rockchipUpgrade kernel-zfcpdumpUpgrade kernel-docsUpgrade dtb-apmUpgrade kernel-devel-azureUpgrade kernel-rt-livepatch-develUpgrade ocfs2-kmp-rtUpgrade kselftests-kmp-defaultUpgrade cluster-md-kmp-azureUpgrade dtb-hisiliconUpgrade kernel-debugUpgrade dtb-mediatekUpgrade dlm-kmp-azureUpgrade dtb-socionextUpgrade kernel-devel-rtUpgrade kernel-syms-rtUpgrade kernel-kvmsmallUpgrade kernel-syms-azureUpgrade kernel-develUpgrade kernel-64kb-develUpgrade kernel-macros | 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