CVE Catalog

CVE-2026-89699

Unknown
Published: Translated: NVD NIST

Summary

In the Linux kernel, nfsd4_decode_create() accepted an unbounded cr_datalen from the wire for NF4LNK symlink targets, allowing a client to force a kmalloc of up to the maximum RPC payload size (several MiB) per COMPOUND op. The VFS rejected oversized targets with ENAMETOOLONG, but the allocation had already occurred.

Risk Assessment

A potential kernel memory exhaustion (DoS) via repeated COMPOUND requests with large cr_datalen values. The vulnerability affects CREATE operation decoding in NFSv4.

Recommendation

Update the Linux kernel to a version with the fix rejecting cr_datalen == 0 (nfserr_inval) and cr_datalen greater than NFS4_MAXPATHLEN (nfserr_nametoolong) to bound the allocation.

Other vulnerabilities in Linux kernel (nfsd)

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: nfsd: validate symlink target length in NFSv4 CREATE nfsd4_decode_create() accepts an unbounded cr_datalen from the wire for NF4LNK symlink targets, allowing a client to force a kmalloc of up to the maximum RPC payload size (several MiB) per COMPOUND op that persists until compound teardown. The VFS rejects oversized targets with ENAMETOOLONG, but the allocation has already occurred. Reject cr_datalen == 0 early with nfserr_inval and cr_datalen greater than NFS4_MAXPATHLEN (PATH_MAX) with nfserr_nametoolong to bound the allocation.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS