CVE-2026-46033 Overview
CVE-2026-46033 is a Linux kernel vulnerability in the crypto/authencesn module. The flaw allows an out-of-bounds memory access when an authencesn instance is created with an ahash whose digest size falls in the invalid 1-to-3 byte range. The function crypto_authenc_esn_create() copied auth->digestsize into inst->alg.maxauthsize without validating it, leaving the AEAD core to initialize a tfm default authsize that crypto_authenc_esn_setauthsize() would otherwise reject. Userspace can reach this path through AF_ALG, triggering ESN tail handling with a too-short tag.
Critical Impact
Local users can trigger an out-of-bounds access in kernel crypto code by requesting an authencesn instance built on a short-digest ahash such as cbcmac(cipher_null).
Affected Products
- Linux kernel (upstream crypto/authencesn subsystem)
- Stable kernel branches receiving the referenced backport commits
- Distributions shipping kernels with the unpatched crypto_authenc_esn_create() path
Discovery Timeline
- 2026-05-27 - CVE-2026-46033 published to NVD
- 2026-05-27 - Last updated in NVD database
Technical Details for CVE-2026-46033
Vulnerability Analysis
The authencesn template implements Authenticated Encryption with Extended Sequence Number (ESN) for IPsec. The ESN encrypt and decrypt paths always relocate 4 bytes of high-order sequence number data at the end of the authenticated data. As a result, authencesn requires either a zero authsize or an authsize of at least 4 bytes.
The explicit setter crypto_authenc_esn_setauthsize() correctly rejects non-zero authsizes in the 1-to-3 byte range. However, crypto_authenc_esn_create() copied the inner ahash's digestsize directly into inst->alg.maxauthsize with no validation. The AEAD core then used that value to initialize the tfm's default authsize.
Root Cause
The root cause is a missing input validation check during instance creation [CWE-20]. The construction path trusted the underlying ahash's digest size to fall within a supported range, while the runtime setter enforced a stricter invariant. This mismatch allowed an instance to expose a default authsize that the setter would have rejected.
Attack Vector
A local attacker uses the AF_ALG socket interface to instantiate authencesn over an ahash with a 1-to-3 byte digest, such as cbcmac(cipher_null). The resulting tfm inherits an invalid default authsize. Submitting data through this transform causes the ESN tail handling to operate on a buffer that is too short for the 4-byte sequence number copy, producing an out-of-bounds access in kernel memory.
The fix rejects authencesn instance creation when the ahash digest size is in the invalid non-zero 1-to-3 range, ensuring no tfm can inherit an unsupported default authsize. See the patch in Kernel Commit b69933e9 and its stable backports for details.
Detection Methods for CVE-2026-46033
Indicators of Compromise
- Kernel oops, KASAN reports, or panic traces referencing crypto_authenc_esn_* functions
- Processes opening AF_ALG sockets and binding to authencesn(...) templates with unusual inner hashes such as cbcmac(cipher_null)
- Unexpected kernel log entries from the crypto subsystem on systems that do not normally use IPsec ESN
Detection Strategies
- Audit auditd or eBPF telemetry for socket(AF_ALG, ...) calls followed by bind() payloads naming authencesn templates
- Correlate KASAN or dmesg out-of-bounds reports in the crypto path with the originating user process and UID
- Inventory running kernel versions against the fixed commits referenced in the stable tree
Monitoring Recommendations
- Forward kernel logs and crash telemetry to a centralized analytics platform for review
- Alert on userspace binaries that load uncommon crypto algorithm strings through AF_ALG
- Track patch deployment status across Linux fleets to confirm vulnerable kernels are replaced
How to Mitigate CVE-2026-46033
Immediate Actions Required
- Apply the upstream fix or the corresponding distribution kernel update that includes the validation in crypto_authenc_esn_create()
- Reboot affected hosts after installing the patched kernel package to ensure the fixed code is active
- Restrict use of the AF_ALG interface to trusted users where it is not required by workloads
Patch Information
The fix adds validation so that authencesn instances with an ahash digest size in the invalid 1-to-3 range are rejected at creation time. Upstream and stable patches are available at Kernel Commit b69933e9, Kernel Commit 9aff81e8, Kernel Commit 67f1f09, Kernel Commit 5db6ef9, and Kernel Commit b42821c1.
Workarounds
- Disable the algif_aead module if AF_ALG AEAD access is not needed: modprobe -r algif_aead
- Blocklist loading of authencesn and algif_aead via /etc/modprobe.d/ on systems that do not require IPsec ESN userspace crypto
- Limit local user access on multi-tenant systems until the patched kernel is deployed
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

