Skip to main content

Linux Kernel CVE-2025-40176

CRITICAL
2025-11-12 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Critical
Disputed · 9.8 Vendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Share

Severity by source

Sources disagree (Medium–Critical)
Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67) PRIMARY
9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
8.1 HIGH

Triggering data arrives over the network (AV:N) but success needs kTLS async config plus an atomic allocation failure race, forcing AC:H; UAF/stray-write gives full C/I/A impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE
7.0 HIGH
AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Red Hat
7.3 MEDIUM
qualitative

vuln.today treats the vendor’s rating as authoritative. A higher third-party CVSS (e.g. CISA-ADP) is shown for transparency but does not drive the headline severity.

CVSS VectorVendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

6
Analysis Updated
Jul 30, 2026 - 06:52 vuln.today
v2 (cvss_changed)
Re-analysis Queued
Jul 30, 2026 - 06:37 vuln.today
cvss_changed
CVSS changed
Jul 30, 2026 - 06:37 NVD
9.8 (CRITICAL)
Patch released
Mar 28, 2026 - 19:31 nvd
Patch available
Analysis Generated
Mar 28, 2026 - 19:21 vuln.today
CVE Published
Nov 12, 2025 - 11:15 nvd
N/A

DescriptionCVE.org

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

tls: wait for pending async decryptions if tls_strp_msg_hold fails

Async decryption calls tls_strp_msg_hold to create a clone of the input skb to hold references to the memory it uses. If we fail to allocate that clone, proceeding with async decryption can lead to various issues (UAF on the skb, writing into userspace memory after the recv() call has returned).

In this case, wait for all pending decryption requests.

AnalysisAI

Memory-safety fault in the Linux kernel's kTLS (kernel TLS) receive path allows use-after-free on socket buffers and stray writes into userspace memory after recv() has returned when async record decryption is used and an atomic skb clone allocation fails. Affected systems are those whose applications enable in-kernel TLS with asynchronous decryption; an attacker able to induce memory pressure while TLS records are inflight can corrupt kernel/user memory or leak data. Tagged as Information Disclosure, EPSS is negligible (0.03%), no public exploit is identified, and the issue is fixed upstream and shipped by distributions (Ubuntu USN-8125-1/USN-8126-1).

Technical ContextAI

The flaw lives in the kernel's TLS ULP (upstream tls subsystem), specifically the async decrypt path. When a socket uses kTLS with asynchronous crypto offload, tls_strp_msg_hold() clones the input skb to hold references to the buffers backing an in-flight decryption request so they survive until the async operation completes. That clone is an atomic-context allocation and can fail under memory pressure. Before the fix the code proceeded with async decryption anyway, so the referenced skb could be freed and reused (use-after-free), and the decrypt completion could write plaintext into a userspace buffer whose recv() call had already returned. The root cause is an unchecked/mishandled allocation-failure path leading to a lifetime/ownership bug - effectively CWE-416 (Use After Free) combined with CWE-787 (out-of-bounds/stale write); NVD lists CWE as N/A. The fix instead waits for all pending async decryptions to drain when the hold clone cannot be allocated.

Affected ProductsAI

The affected product is the mainline and stable Linux kernel's TLS subsystem (kTLS). Exact vulnerable version ranges are not enumerated in the provided data; the fix is distributed across multiple stable-tree commits (git.kernel.org commits 39dec4ea3daf, 4fc109d0ab19, 9f83fd0c179e, b8a6ff84abbc, and c61d4368197d), indicating backports to several supported stable branches. No CPE strings were provided in the input, so precise per-version applicability should be confirmed against each branch. Distribution-level exposure is confirmed for Ubuntu, which addressed it in advisories USN-8125-1 (https://ubuntu.com/security/notices/USN-8125-1) and USN-8126-1 (https://ubuntu.com/security/notices/USN-8126-1). Only kernels built with TLS ULP support and workloads that actually use kernel TLS with async decryption are exposed in practice.

RemediationAI

Upstream fix available (multiple stable commits); update to the patched kernel build for your branch as the primary remediation - Ubuntu users should apply the kernels in USN-8125-1 (https://ubuntu.com/security/notices/USN-8125-1) and USN-8126-1 (https://ubuntu.com/security/notices/USN-8126-1) and reboot, and other distributions should pull the corresponding backport of git.kernel.org commits 39dec4ea3daf/4fc109d0ab19/9f83fd0c179e/b8a6ff84abbc/c61d4368197d. Because no isolated fix version tag is provided in the input, cite your distribution's exact patched package rather than an upstream version number. If immediate patching is not possible, the practical compensating control is to avoid kernel-TLS async decryption for exposed services - disable kTLS offload in the affected application (fall back to userspace TLS in the library, e.g. OpenSSL without KTLS) so the vulnerable async-hold path is never exercised; the trade-off is loss of the kTLS performance/zero-copy benefit. Reducing memory pressure and OOM conditions on TLS-terminating hosts lowers the chance of the triggering allocation failure but is a mitigation, not a fix.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
Container suse/hpc/warewulf4-x86_64/sle-hpc-node:latest Image SLES15-SP6 Image SLES15-SP6-BYOS Image SLES15-SP6-BYOS-Azure Image SLES15-SP6-BYOS-EC2 Image SLES15-SP6-BYOS-GCE Image SLES15-SP6-CHOST-BYOS Image SLES15-SP6-CHOST-BYOS-Aliyun Image SLES15-SP6-CHOST-BYOS-Azure Image SLES15-SP6-CHOST-BYOS-EC2 Image SLES15-SP6-CHOST-BYOS-GCE Image SLES15-SP6-CHOST-BYOS-GDC Image SLES15-SP6-CHOST-BYOS-SAP-CCloud Image SLES15-SP6-EC2 Image SLES15-SP6-EC2-ECS-HVM Image SLES15-SP6-GCE Image SLES15-SP6-HPC-BYOS Image SLES15-SP6-HPC-BYOS-Azure Image SLES15-SP6-HPC-BYOS-EC2 Image SLES15-SP6-HPC-BYOS-GCE Image SLES15-SP6-HPC-EC2 Image SLES15-SP6-HPC-GCE Image SLES15-SP6-Hardened-BYOS Image SLES15-SP6-Hardened-BYOS-Azure Image SLES15-SP6-Hardened-BYOS-EC2 Image SLES15-SP6-Hardened-BYOS-GCE Image SLES15-SP6-SAP Image SLES15-SP6-SAP-Azure Image SLES15-SP6-SAP-EC2 Image SLES15-SP6-SAP-GCE Image SLES15-SP6-SAPCAL Image SLES15-SP6-SAPCAL-Azure Image SLES15-SP6-SAPCAL-EC2 Image SLES15-SP6-SAPCAL-GCE Affected
Container suse/sl-micro/6.0/baremetal-os-container:latest Container suse/sl-micro/6.1/baremetal-os-container:latest Affected
Container suse/sl-micro/6.0/base-os-container:2.1.3-7.95 Container suse/sl-micro/6.1/base-os-container:2.2.1-5.80 Affected
Container suse/sl-micro/6.0/kvm-os-container:2.1.3-6.114 Container suse/sl-micro/6.1/kvm-os-container:2.2.1-5.82 Affected
Container suse/sl-micro/6.0/rt-os-container:2.1.3-7.116 Container suse/sl-micro/6.1/rt-os-container:2.2.1-5.55 Affected

Share

CVE-2025-40176 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy