CVEvulnerability
CVE-2026-89673
- Status
- Received
- Published
- 2026-09-11
- Last modified
- 2026-10-24
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
nfsd: fix XDR padding calculation in ff_encode_getdeviceinfo
nfsd4_ff_encode_getdeviceinfo() computes the da_addr_body reservation
as 16 + netid_len + addr_len, but the subsequent xdr_encode_opaque()
calls emit 8 + round_up(netid_len, 4) + round_up(addr_len, 4) bytes.
The mismatch means the declared da_addr_body length exceeds the actual
encoded data by 2-8 bytes on every flexfile GETDEVICEINFO reply,
leaking stale reply-page content to the client and mis-aligning the
subsequent version list decode.
Use xdr_align_size() for each string length to match what
xdr_encode_opaque() actually writes.
References
- https://git.kernel.org/stable/c/15460c8e6c9bc92cda8f68bc419ac082300ab3d6 git.kernel.org
- https://git.kernel.org/stable/c/356decf074b82bac5564568203c12426dcea3470 git.kernel.org
- https://git.kernel.org/stable/c/41ebca28e17f84293650598f86bd69532ec1a8e0 git.kernel.org
- https://git.kernel.org/stable/c/62e5949f0dd5ec837af144860ff908369df4c7c9 git.kernel.org
- https://git.kernel.org/stable/c/74015b7be806ad9e21d46f7bd2831df280c6c783 git.kernel.org
- https://git.kernel.org/stable/c/88bce7e326c368d7df15126ccac537e54bebd467 git.kernel.org
- https://git.kernel.org/stable/c/8b989aaec85e1293a871d602590c951fe44b8647 git.kernel.org
- https://git.kernel.org/stable/c/9be67a6be48ddf2ebaa98c0df671690b8f9666e7 git.kernel.org