← All Advisories
Reported from OT-Advisories.com as of

CVE-2026-89551

Last refreshed2026-10-17

Status: UPDATED  |  Advisory ID: CVE-2026-89551

Key Details

CVECVE-2026-89551
CVSS Score / Version
9.8 (Critical) / CVSS v3.1
Updated2026-10-16
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Prose
attack vector is network; attack complexity is low; privileges required is none; user interaction is none; scope is unchanged; confidentiality impact is high; integrity impact is high; availability impact is high.
Affected products
Linux Kernel

Affected Products, Subsystems & Sectors

VendorProductAffected VersionsPatch Status
LinuxLinux Kernel
SubsystemsOT Supporting Infrastructure
SectorsAll Sectors

What to Know

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

SUNRPC: xdr_buf_trim: clamp buf->len to avoid underflow

xdr_buf_trim() trims `len` bytes from the tail of an xdr_buf by

walking the tail, pages, and head iovecs. Each per-section step

uses min_t() so it never removes more bytes than that section

holds, but the final accounting at the fix_len label subtracts the

total bytes actually consumed from buf->len without any clamp:

fix_len:

buf->len -= (len - trim);

When the caller has set buf->len to a value smaller than the sum

of the iov_lens, (len - trim) can exceed buf->len and the unsigned

subtraction wraps to near UINT_MAX. gss_krb5_unwrap_v2() reaches

xdr_buf_trim() in exactly that state:

buf->head[0].iov_len -= GSS_KRB5_TOK_HDR_LEN + headskip;

buf->len = len - (GSS_KRB5_TOK_HDR_LEN + headskip);

xdr_buf_trim(buf, ec + GSS_KRB5_TOK_HDR_LEN + tailskip);

buf->len is a small wire-derived value while the iov_lens are at

page scale, so the per-section loops legitimately consume far more

bytes than buf->len records. The wrapped buf->len then propagates

as the authoritative stream bound into every downstream XDR

decoder.

Fix by clamping the decrement so buf->len bottoms out at zero:

buf->len -= min_t(unsigned int, buf->len, len - trim);

On the normal path where the iov_lens sum to buf->len, (len - trim)

is always <= buf->len and the result is identical to before. No

callers change behavior outside the underflow case. (NVD)

What to Do

Monitor Linux's web page for any future patch releases.

References

SourceReference
NVDhttps://nvd.nist.gov/vuln/detail/CVE-2026-89551
CVEhttps://www.cve.org/CVERecord?id=CVE-2026-89551
Report compilation © 2026 OT-Advisories.com  ·  CC BY 4.0  ·  Source materials remain the property of their respective publishers as cited.