CVE-2026-89537

CVE-2026-89537

Critical · published September 12, 2026

CVSS v3.1
9.1
EPSS
1%
Percentile
50.7
In the wild
Unconfirmed
What it is

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

SUNRPC: Reject short RFC 4121 MIC tokens in gss_krb5_verify_mic_v2

gss_krb5_verify_mic_v2() reads the token ID at ptr[0..1], the flags

byte at ptr[2], and padding at ptr[3..7], then passes

ptr + GSS_KRB5_TOK_HDR_LEN and cksum_len to gss_krb5_mic_build_sg().

None of these accesses check read_token->len first.

The minimum safe token size is GSS_KRB5_TOK_HDR_LEN (16) plus

ctx->krb5e->cksum_len (12-24, depending on the enctype). All callers

accept shorter tokens from the wire:

- gss_unwrap_resp_integ() enforces only an upper bound

(offset + len <= rcv_buf->len) before allocating

mic.data = kmalloc(len) and passing it to gss_verify_mic().

A malicious NFS server can therefore supply a short checksum

opaque, producing a small slab allocation that the Kerberos MIC

verifier reads past.

- gss_validate() enforces only len <= RPC_MAX_AUTH_SIZE (400)

before passing the wire-supplied length to

gss_validate_seqno_mic(), which constructs a mic xdr_netobj

and calls gss_verify_mic().

- svcauth_gss_verify_header() enforces only

checksum.len >= XDR_UNIT (4 bytes) before dispatching to

gss_verify_mic().

- svcauth_gss_unwrap_integ() checks only that the checksum fits

in gsd->gsd_scratch.

Add a length guard at the top of gss_krb5_verify_mic_v2(), before any

ptr[] access or scatterlist construction. Well-formed MIC tokens from

gss_krb5_get_mic_v2() already have exactly GSS_KRB5_TOK_HDR_LEN +

cksum_len bytes, so valid traffic is unaffected.

The record
Technical detail
CVSS v3.1
9.1 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00653 · 50.7th percentile
Published
2026-09-12T00:19Z
References (5)
EPSS history
Timeline
  • 13 SEP 03:23Z
    EPSS moved — → 0%
    epss
  • 11 SEP 19:44Z
    SUNRPC: Reject short RFC 4121 MIC tokens in gss_krb5_verify_mic_v2
    cvelistv5