CVE Catalog

CVE-2025-40139

HighCVSS 7.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.14%

4th percentile - higher than 4% of all known CVEs

Summary

In the SMC subsystem of the Linux kernel, the function smc_clc_prfx_set() uses sk_dst_get(sk)->dev without RCU or RTNL protection, which can lead to a use-after-free (UAF) during connect() calls.

Risk Assessment

An attacker could potentially exploit this vulnerability to access already freed memory, leading to system crashes or privilege escalation.

Recommendation

Update the Linux kernel to a version containing the fix that uses __sk_dst_get() and dst_dev_rcu() under rcu_read_lock().

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: smc: Use __sk_dst_get() and dst_dev_rcu() in in smc_clc_prfx_set(). smc_clc_prfx_set() is called during connect() and not under RCU nor RTNL. Using sk_dst_get(sk)->dev could trigger UAF. Let's use __sk_dst_get() and dev_dst_rcu() under rcu_read_lock() after kernel_getsockname(). Note that the returned value of smc_clc_prfx_set() is not used in the caller. While at it, we change the 1st arg of smc_clc_prfx_set[46]_rcu() not to touch dst there.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS