CVE-2026-80924 PUBLISHED

crypto: krb5 - use kfree_sensitive() for derived key buffers

Assigner: Linux
Reserved: 26.08.2026 Published: 09.09.2026 Updated: 10.09.2026

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

crypto: krb5 - use kfree_sensitive() for derived key buffers

crypto_krb5_prepare_encryption() and crypto_krb5_prepare_checksum() free the buffer holding the freshly derived keys with plain kfree(), leaving the key material behind in the freed slab object.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS Score: 7.5

AV:N - crypto_krb5_prepare_encryption() and crypto_krb5_prepare_checksum() run from nfsd RPCSEC_GSS on TCP/2049, from in-kernel RxGK handshake processing of remote RESPONSE packets (rxgk_extract_token/rxgk_set_up_token_cipher), and from Ceph/AFS network-filesystem security, so a remote peer can cause derived Kerberos keys to be left in freed slab. AC:L - Each prepare path derives Ke/Ki/Kc into a kmalloc buffer then frees it with plain kfree(); the leftover is deterministic on every GSS/RxGK/Ceph context setup, with no race or attacker-uncontrollable memory layout required to leave the keys in the slab. PR:N - RxGK token-cipher setup runs while decrypting the authentication token, before the token or authenticator is verified, and nfsd RPCSEC_GSS INIT is the authentication handshake; a network peer needs no local Linux account or capability to drive these pre-auth paths. UI:N - A Kerberos NFS server or RxRPC/AFS endpoint automatically processes incoming GSS/RxGK handshake packets; no victim mount, click, or other interactive action is required at exploit time. S:U - Leftover keys remain in host-kernel slab; this is ordinary kernel information disclosure within the same security authority, not a VM escape, IOMMU bypass, or sandbox breakout. C:H - The freed buffers hold complete derived Kerberos encryption and integrity keys (Ke/Ki/Kc, up to 32-byte AES-256 material). Recovering them from reused slab yields full session-key disclosure for NFS, AFS, Ceph, or RxGK traffic. I:N - The bug only fails to wipe key material before kfree(); it does not corrupt kernel memory, provide a write primitive, or hijack control flow. A:N - Replacing kfree() with kfree_sensitive() does not affect control flow; the plain kfree() path does not oops, deadlock, leak allocator objects, or otherwise impact availability.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 3936f02bf2d3308a7359dd37dd96cd60603d8170 to 731a5b6fb4c1705f9405d9029dd64ea81e336207 (excl.)
  • affected from 3936f02bf2d3308a7359dd37dd96cd60603d8170 to 91b96dc9cc250cd16751f53de525cf3442ca0962 (excl.)
  • affected from 3936f02bf2d3308a7359dd37dd96cd60603d8170 to a1bf79365794783b19f5b09e8a23f7ee311e8931 (excl.)
  • affected from 3936f02bf2d3308a7359dd37dd96cd60603d8170 to f7d53dd3f267e46a784f219a75072f2f400d42b9 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.15 is affected
  • unaffected from 0 to 6.15 (excl.)
  • unaffected from 6.18.49 to 6.18.* (incl.)
  • unaffected from 7.1.13 to 7.1.* (incl.)
  • unaffected from 7.2.3 to 7.2.* (incl.)
  • unaffected from 7.3-rc1 to * (incl.)

References