CVE-2026-89691

nfsd: clear opcnt on compound arg release to prevent OOB read

State
Published
Severity
7.1 High
Published
Sep 11, 2026
Updated
Oct 19, 2026
Reserved
Sep 11, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

nfsd: clear opcnt on compound arg release to prevent OOB read

nfsd4_release_compoundargs() resets args->ops to the inline iops[8] array when the dynamically-allocated ops buffer is freed, but leaves args->opcnt at its original value (which can be up to 200 for NFSv4.1+ compounds).

If rq_status_counter is stuck at an odd value (which can happen when nfsd_dispatch() hits an error path after setting it odd), the RPC status dumpit handler reads min(opcnt, 16) entries from args->ops[]. Since iops only has 8 elements and is the last field in struct nfsd4_compoundargs, reading indices 8-15 accesses adjacent slab memory and leaks it to userspace via netlink.

Zero opcnt unconditionally in nfsd4_release_compoundargs() so stale compound metadata is never exposed through the status interface.

[ cel: Remove the kvfree_rcu_mightsleep() sleep from the exposure window ]

Scores

CVSSScoreVectorSource
3.17.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • bd9d6a3efa9709e653aafbeb859289feccb8e70c to before 58bcdfb2b2e412088839ae740b1a95154dc0b8d0Affected
  • bd9d6a3efa9709e653aafbeb859289feccb8e70c to before e879148867bd4c4cac42e063ffaffa187dddc6feAffected
  • bd9d6a3efa9709e653aafbeb859289feccb8e70c to before c1a4f7b1848f95302df598217e1c7a1410c2d0c5Affected
  • bd9d6a3efa9709e653aafbeb859289feccb8e70c to before ae4c38555e81563b8dc5eae55ffd70f0ea97aa5aAffected
LinuxLinux
  • 6.7Affected
  • before 6.7Not affected
  • 6.12.109 through 6.12.*Not affected
  • 6.18.50 through 6.18.*Not affected
  • 7.2.4 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.