Skip to main content

Linux Kernel CVE-2026-72317

| EUVDEUVD-2026-59216 CRITICAL
2026-08-15 Linux GHSA-x2ff-m8pm-h936
Critical
Disputed · 9.8 Vendor: Linux
Share

Severity by source

Sources disagree (Medium–Critical)
Vendor (Linux) PRIMARY
9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
4.7 MEDIUM

Trigger is a local, privilege-requiring mTLS mount racing a delayed worker (AV:L, AC:H, PR:L); demonstrated impact is a kernel use-after-free crash, so A:H with no proven C/I effect.

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
4.0 AV:L/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Red Hat
7.0 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: Linux

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

Lifecycle Timeline

5
Analysis Generated
Aug 17, 2026 - 08:23 vuln.today
CVSS changed
Aug 17, 2026 - 06:22 NVD
9.8 (CRITICAL)
Patch available
Aug 15, 2026 - 07:20 EUVD
CVE Published
Aug 15, 2026 - 05:55 cve.org
CRITICAL 9.8
CVE Published
Aug 15, 2026 - 05:55 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

SUNRPC: pin upper rpc_clnt across the TLS connect_worker

The TLS connect path has a use-after-free: nothing pins the upper rpc_clnt across the delayed connect_worker. xs_connect() stores task->tk_client in sock_xprt::clnt as a raw pointer and queues the worker; for TLS-secured transports that worker is xs_tcp_tls_setup_socket(), which reads several fields out of the saved pointer (cl_timeout, cl_program, cl_prog, cl_vers, cl_cred, cl_stats) to construct the args for the inner handshake rpc_clnt.

The xprt does not reference the rpc_clnt; the rpc_clnt references the xprt. xs_destroy() does cancel the connect_worker, but it runs only when the xprt's refcount drops to zero, which cannot happen until the rpc_clnt releases its cl_xprt reference in rpc_free_client_work(). When a TLS handshake fails fatally (for example, an mTLS mount whose client cert does not match the server), the connecting task is woken with -EACCES and exits, the mount caller invokes rpc_shutdown_client(), and the upper rpc_clnt is freed before the queued connect_worker fires. xs_tcp_tls_setup_socket() then dereferences the freed clnt, producing the refcount_t underflow Michael Nemanov reported.

Take a reference on the upper rpc_clnt in xs_connect() for TLS transports via a new rpc_hold_client() helper, and drop it in the connect_worker's exit path with rpc_release_client(). The xprt_lock_connect() / xprt_unlock_connect() pairing already serialises xs_connect() with xs_tcp_tls_setup_socket(), so the take and release are balanced one-for-one.

The non-TLS connect worker (xs_tcp_setup_socket) never reads sock_xprt::clnt, so leave that path alone and avoid the clnt-holds-xprt-holds-clnt cycle that would otherwise prevent xprt destruction.

AnalysisAI

Use-after-free (refcount_t underflow) in the Linux kernel's SUNRPC TLS connect path lets a failing TLS-secured RPC transport dereference an already-freed upper rpc_clnt, corrupting kernel memory. It affects systems using RPC-with-TLS transports (notably NFS-over-TLS/mTLS mounts) where a fatal handshake failure races the delayed connect_worker. There is no public exploit identified at time of analysis and EPSS is low (0.21%, 11th percentile); the input's 9.8 CVSS reflects Linux's automated scoring rather than the local, config-dependent trigger described.

Technical ContextAI

The bug lives in SUNRPC transport socket handling (net/sunrpc/xprtsock.c). xs_connect() saves task->tk_client into sock_xprt::clnt as a raw pointer and queues a delayed connect_worker; for TLS transports that worker is xs_tcp_tls_setup_socket(), which reads cl_timeout, cl_program, cl_prog, cl_vers, cl_cred and cl_stats from that saved pointer to build the inner TLS handshake rpc_clnt. Ownership is one-directional - the rpc_clnt references the xprt, but the xprt does not hold a reference on the rpc_clnt - so the upper client can be freed by rpc_shutdown_client()/rpc_free_client_work() while the worker is still pending. This is a classic CWE-416 use-after-free (the input lists CWE as N/A), surfacing as the refcount_t underflow reported by Michael Nemanov. The fix adds rpc_hold_client() in xs_connect() for TLS transports and a matching rpc_release_client() in the worker exit path, deliberately not applied to the non-TLS xs_tcp_setup_socket() path to avoid a clnt-holds-xprt-holds-clnt reference cycle.

RemediationAI

Vendor-released patch: update to a fixed stable kernel - 6.6.145, 6.12.97, 6.18.40, 7.1.5 or later (fix also in 7.2-rc3) via your distribution's kernel update, referencing the upstream commits at https://git.kernel.org/stable/c/79cd550f8c884523b604fbfa43eb02def74d6224 and the four sibling backports. The corrected code takes a reference on the upper rpc_clnt with rpc_hold_client() in xs_connect() for TLS transports and releases it in the connect_worker exit path. Where immediate patching is not possible, the concrete compensating control is to avoid RPC-with-TLS/mTLS transports - mount NFS without the xprtsec=tls/mtls option (trade-off: loses in-transit encryption and mutual authentication, so use only on already-trusted networks) - and ensure client certificates are correctly provisioned so mTLS handshakes do not fail fatally, since the reliable trigger is a mismatched client cert. Restrict who can initiate mounts/RPC transports to trusted administrators to shrink the trigger surface.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

CVE-2026-72317 vulnerability details – vuln.today

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