CVE-2024-26870: NFSv4.2: fix nfs4_listxattr kernel BUG at mm/usercopy.c:102
In the Linux kernel, the following vulnerability has been resolved:
NFSv4.2: fix nfs4_listxattr kernel BUG at mm/usercopy.c:102
A call to listxattr() with a buffer size = 0 returns the actual
size of the buffer needed for a subsequent call. When size > 0,
nfs4_listxattr() does not return an error because either
generic_listxattr() or nfs4_listxattr_nfs4_label() consumes
exactly all the bytes then size is 0 when calling
nfs4_listxattr_nfs4_user() which then triggers the following
kernel BUG:
[ 99.403778] kernel BUG at mm/usercopy.c:102!
[ 99.404063] Internal error: Oops - BUG: 00000000f2000800 [#1] SMP
[ 99.408463] CPU: 0 PID: 3310 Comm: python3 Not tainted 6.6.0-61.fc40.aarch64 #1
[ 99.415827] Call trace:
[ 99.415985] usercopy_abort+0x70/0xa0
[ 99.416227] __check_heap_object+0x134/0x158
[ 99.416505] check_heap_object+0x150/0x188
[ 99.416696] __check_object_size.part.0+0x78/0x168
[ 99.416886] __check_object_size+0x28/0x40
[ 99.417078] listxattr+0x8c/0x120
[ 99.417252] path_listxattr+0x78/0xe0
[ 99.417476] __arm64_sys_listxattr+0x28/0x40
[ 99.417723] invoke_syscall+0x78/0x100
[ 99.417929] el0_svc_common.constprop.0+0x48/0xf0
[ 99.418186] do_el0_svc+0x24/0x38
[ 99.418376] el0_svc+0x3c/0x110
[ 99.418554] el0t_64_sync_handler+0x120/0x130
[ 99.418788] el0t_64_sync+0x194/0x198
[ 99.418994] Code: aa0003e3 d000a3e0 91310000 97f49bdb (d4210000)
Issue is reproduced when generic_listxattr() returns 'system.nfs4_acl',
thus calling lisxattr() with size = 16 will trigger the bug.
Add check on nfs4_listxattr() to return ERANGE error when it is
called with size > 0 and the return value is greater than size.
Security readout for executives and security teams
Plain-English summary
A flaw in Linux NFSv4.2 extended-attribute handling can trigger a kernel BUG when a local user requests an attribute list using a precisely sized buffer. This may crash or destabilize an affected system. The supplied CVSS score is 7.8, but the sources do not demonstrate data theft, privilege escalation, or remote exploitation.
Executive priority
Treat as a high-priority kernel maintenance issue on exposed multi-user or NFS-dependent systems. Expedite patching where untrusted local accounts exist. Routine prioritization may be appropriate for isolated systems without NFSv4.2 use, subject to vendor confirmation. No active exploitation is established by the supplied evidence.
Technical view
nfs4_listxattr() could exhaust the caller’s buffer in earlier processing and still call nfs4_listxattr_nfs4_user() with zero remaining space, triggering hardened user-copy checks at mm/usercopy.c:102. The kernel fix returns ERANGE when the generated attribute-list length exceeds the supplied nonzero buffer.
Likely exposure
Exposure requires an affected Linux kernel, NFSv4.2-related extended attributes, and local low-privileged access capable of invoking listxattr(). The supplied version data identifies affected kernel lines from 5.9 through listed 5.10, 5.15, 6.1, 6.6, 6.7, 6.8, and 6.9 points, but exact distribution package status requires vendor confirmation.
Exploitation context
The CVSS vector describes local, low-complexity exploitation requiring low privileges and no user interaction. The source bundle marks this CVE as absent from KEV and provides no evidence of active exploitation or a public weaponized exploit. The documented reproduction demonstrates a kernel BUG, not confirmed privilege escalation.
Researcher notes
The stated trigger involves system.nfs4_acl and a 16-byte listxattr buffer. The remediation adds a bounds check returning ERANGE. Researchers should distinguish the demonstrated user-copy BUG from the CVSS confidentiality and integrity impacts, which are not substantiated in the supplied narrative. Exact vulnerable and fixed package boundaries are distribution-specific.
Mitigation direction
Install a vendor-supported kernel containing the linked NFSv4.2 fix or an equivalent backport.
Reboot affected systems into the updated kernel after installation.
Consult distribution and appliance advisories to confirm fixed package versions.
Prioritize multi-user systems where untrusted local users can access NFSv4.2 filesystems.
Validation and detection
Inventory running kernel versions and systems using NFSv4.2 mounts.
Confirm the installed kernel includes the upstream fix or a documented vendor backport.
Verify systems are running the updated kernel after reboot.
Review kernel logs for usercopy_abort, mm/usercopy.c:102, or nfs4_listxattr-related crashes.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2024-26870 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.