CVE-2026-64439
CriticalCVSS 9.8Exploitation Probability (EPSS)
Low risk35th percentile - higher than 35% of all known CVEs
Summary
In the Linux kernel's crypto: krb5 module, a use-after-free occurs when using async AEAD implementations. Cryptographic functions set a NULL callback and treat any negative return as an error, freeing the buffer. When the implementation is async, it returns -EINPROGRESS and the buffer is freed while the backend still uses it.
Risk Assessment
Use-after-free can lead to system crashes, data corruption, or potential arbitrary code execution. The vulnerability is reachable via net/rxrpc, fs/afs, and net/ceph.
Recommendation
Apply the Linux kernel patch that filters out async AEAD implementations at allocation time instead of reworking all call sites.
Original NVD description (English source)
In the Linux kernel, the following vulnerability has been resolved: crypto: krb5 - filter out async aead implementations at alloc krb5_aead_encrypt(), krb5_aead_decrypt() in rfc3961_simplified.c and rfc8009_encrypt(), rfc8009_decrypt() in rfc8009_aes2.c set a NULL completion callback and treat any negative return from crypto_aead_{encrypt,decrypt}() as terminal, falling through to kfree_sensitive(buffer). When the encrypt_name resolves to an async AEAD instance the request returns -EINPROGRESS, the buffer is freed while the backend's worker still holds a pointer, and the worker dereferences the freed slab on completion. KASAN report under UML+SLUB with a synthetic async aead backend bound to krb5->encrypt_name: BUG: KASAN: slab-use-after-free in t5_stub_complete+0x7d/0xc7 The helpers were written synchronously, so filter the async instances out at allocation time instead of plumbing crypto_wait_req() through every call site. Reachable via net/rxrpc/rxgk.c, fs/afs/cm_security.c and net/ceph/crypto.c on systems with an async AEAD provider bound to the krb5 enctype name.

