CVE-2026-46028 Overview
CVE-2026-46028 is a Linux kernel vulnerability in the algif_aead component of the AF_ALG cryptographic user-space API. Asynchronous Authenticated Encryption with Associated Data (AEAD) requests submitted through AF_ALG previously relied on a socket-wide initialization vector (IV) buffer during request processing. Subsequent socket activity could mutate that shared state before an in-flight asynchronous request completed, producing inconsistent IV handling across concurrent operations. The fix snapshots the IV into per-request storage when the AEAD request is prepared, decoupling active operations from mutable socket state.
Critical Impact
Concurrent AF_ALG AEAD AIO requests can produce inconsistent cryptographic IV state, undermining the integrity of asynchronous encryption and decryption operations performed through the kernel crypto user-space interface.
Affected Products
- Linux kernel (mainline) versions exposing algif_aead with asynchronous AEAD support
- Linux stable trees receiving the backported fixes referenced in the upstream commits
- Linux distributions shipping kernels with AF_ALG enabled prior to the patch
Discovery Timeline
- 2026-05-27 - CVE-2026-46028 published to NVD
- 2026-05-27 - Last updated in NVD database
Technical Details for CVE-2026-46028
Vulnerability Analysis
The issue lives in the algif_aead module, which exposes kernel AEAD transforms to user space through the AF_ALG socket family. When user space submits asynchronous I/O (AIO) AEAD requests, the kernel previously referenced the IV stored on the AF_ALG socket context throughout request processing. Because the IV buffer is socket-wide, any later sendmsg, setsockopt(ALG_SET_IV), or follow-on operation on the same socket could rewrite the IV while an earlier asynchronous request was still executing. The result is a race condition between request submission and completion that leads to inconsistent IV usage in cryptographic transforms.
Root Cause
The root cause is shared mutable state. The per-socket IV buffer was treated as stable for the lifetime of a request, but the AF_ALG interface allows callers to update that buffer at any time. Asynchronous AEAD operations therefore observed IV mutations that should have been isolated from in-flight work, a classic concurrency flaw in kernel cryptographic plumbing.
Attack Vector
A local process with permission to open AF_ALG sockets can issue overlapping asynchronous AEAD operations and modify the socket IV between submission and completion. This does not require elevated privileges beyond the ability to use the kernel crypto API. The mitigation snapshots the IV into per-request storage when the AEAD request is prepared, so completion paths use the IV that was valid at submission time. The upstream fix is distributed across multiple stable backports, including commits 08ea39a, 3d72f8c, 46fdb39, 5aa58c3, a920cab, c2138c9, ebc2356, and fa0fcec.
No verified proof-of-concept code is available. The vulnerability mechanism is described in prose: race between AF_ALG socket IV mutation and asynchronous AEAD request completion.
Detection Methods for CVE-2026-46028
Indicators of Compromise
- Unexpected cryptographic failures or authentication tag mismatches in workloads using the kernel crypto user-space API
- Anomalous use of AF_ALG sockets by non-cryptographic processes, particularly those issuing many concurrent AIO submissions
- Repeated setsockopt calls with ALG_SET_IV interleaved with io_submit operations on the same socket
Detection Strategies
- Audit running kernels with uname -r and compare against vendor advisories listing the patched stable releases
- Monitor syscall telemetry for processes opening sockets of family AF_ALG followed by high-frequency asynchronous I/O patterns
- Apply Linux audit rules to log socket() calls with the AF_ALG family and correlate with subsequent io_submit activity
Monitoring Recommendations
- Track kernel package versions across the fleet and flag hosts running pre-patch builds for prioritized remediation
- Alert on user-space binaries that newly begin using AF_ALG when they have no historical baseline of doing so
- Capture and review kernel dmesg output for cryptographic subsystem warnings on systems that handle sensitive AEAD workloads
How to Mitigate CVE-2026-46028
Immediate Actions Required
- Update affected Linux kernels to a stable release containing the algif_aead IV snapshot fix referenced in the upstream commits
- Inventory hosts exposing AF_ALG to untrusted local users and prioritize them for patching
- Restrict local access on systems where the kernel cannot be updated immediately
Patch Information
The fix is applied across multiple stable branches. Reference the upstream commits 08ea39a, 3d72f8c, 46fdb39, 5aa58c3, a920cab, c2138c9, ebc2356, and fa0fcec. Consult your Linux distribution's security advisories to identify the specific package version containing the backport for your kernel branch.
Workarounds
- Disable or blacklist the algif_aead kernel module on systems that do not require user-space AEAD acceleration
- Limit access to AF_ALG sockets through SELinux, AppArmor, or seccomp policies that block unauthorized processes from creating them
- Constrain container workloads with seccomp profiles that disallow the socket(AF_ALG, ...) syscall pattern where it is not needed
# Configuration example: blacklist algif_aead until patched kernel is deployed
echo "blacklist algif_aead" | sudo tee /etc/modprobe.d/blacklist-algif_aead.conf
sudo rmmod algif_aead 2>/dev/null || true
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

