Linux: Missing Release of Memory after Effective Lifetime
CVE-2026-52974 is a high-severity missing release of memory after effective lifetime vulnerability in Linux, with a CVSS 3.1 base score of 7.5 out of 10. It can be exploited remotely over the network by an unauthenticated attacker, without any action from a user. The record lists versions 0c9f399b37ce22a5ed94cc51f03ed07ac7f38e32, 688f12aa44511dd57e448eb670075c6302ad1dc1, 3c405dfa9619e506e75b8e41f8b29a5b99731877 as the first without the flaw, so updating Linux to one of those releases or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.5% chance of exploitation within 30 days, which is low compared with other CVEs.
High severity with no evidence of exploitation so far.
What to do
- Update Linux to 0c9f399b37ce22a5ed94cc51f03ed07ac7f38e32 or 688f12aa44511dd57e448eb670075c6302ad1dc1 or 3c405dfa9619e506e75b8e41f8b29a5b99731877 or 9c54e76f8d6eb11735918777ef0e0509e089557d, whichever matches your release line, or a later version.
- Update Linux Kernel to 6.1.175 or 6.6.141 or 6.12.91 or 6.18.33, whichever matches your release line, or a later version.
- Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Linux | Linux | 84c61fe1a75b4255df1e1e7c054c9e6d048da417 up to, but not including, 0c9f399b37ce22a5ed94cc51f03ed07ac7f38e32; 84c61fe1a75b4255df1e1e7c054c9e6d048da417 up to, but not including, 688f12aa44511dd57e448eb670075c6302ad1dc1; 84c61fe1a75b4255df1e1e7c054c9e6d048da417 up to, but not including, 3c405dfa9619e506e75b8e41f8b29a5b99731877; 84c61fe1a75b4255df1e1e7c054c9e6d048da417 up to, but not including, 9c54e76f8d6eb11735918777ef0e0509e089557d; 84c61fe1a75b4255df1e1e7c054c9e6d048da417 up to, but not including, bd07fe6c38b9e44ff3fc02692a53f095c5cc9afc; 84c61fe1a75b4255df1e1e7c054c9e6d048da417 up to, but not including, 58689498ca3384851145a754dbb1d8ed1cf9fb54; 6.0 | 0c9f399b37ce22a5ed94cc51f03ed07ac7f38e32, 688f12aa44511dd57e448eb670075c6302ad1dc1, 3c405dfa9619e506e75b8e41f8b29a5b99731877, 9c54e76f8d6eb11735918777ef0e0509e089557d, bd07fe6c38b9e44ff3fc02692a53f095c5cc9afc, 58689498ca3384851145a754dbb1d8ed1cf9fb54 |
| Linux | Linux Kernel | 6.0 up to, but not including, 6.1.175; 6.2 up to, but not including, 6.6.141; 6.7 up to, but not including, 6.12.91; 6.13 up to, but not including, 6.18.33; 6.19 up to, but not including, 7.0.10; 7.1 | 6.1.175, 6.6.141, 6.12.91, 6.18.33, 7.0.10 |
Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- NetworkCan be exploited remotely over a network, including the internet.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- NoneNo account or login is needed.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- NoneNo data is disclosed.
- Integrity
- NoneNothing can be modified.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H. Scored by CNA.
Official description
In the Linux kernel, the following vulnerability has been resolved: net: tls: fix strparser anchor skb leak on offload RX setup failure When tls_set_device_offload_rx() fails at tls_dev_add(), the error path calls tls_sw_free_resources_rx() to clean up the SW context that was initialized by tls_set_sw_offload(). This function calls tls_sw_release_resources_rx() (which stops the strparser via tls_strp_stop()) and tls_sw_free_ctx_rx() (which kfrees the context), but never frees the anchor skb that was allocated by alloc_skb(0) in tls_strp_init(). Note that tls_sw_free_resources_rx() is exclusively used for this "failed to start offload" code path, there's no other caller. The leak did not exist before commit 84c61fe1a75b ("tls: rx: do not use the standard strparser"), because the standard strparser doesn't try to pre-allocate an skb. The normal close path in tls_sk_proto_close() handles cleanup by calling tls_sw_strparser_done() (which calls tls_strp_done()) after dropping the socket lock, because tls_strp_done() does cancel_work_sync() and the strparser work handler takes the socket lock.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Missing Release of Memory after Effective Lifetime
The product does not sufficiently track and release allocated memory after it has been used, making the memory unavailable for reallocation and reuse.
How developers prevent this class of flaw
- Choose a language or tool that provides automatic memory management, or makes manual memory management less error-prone. For example, glibc in Linux provides protection against free of invalid pointers. When using Xcode to target OS X or iOS, enable automatic reference counting (ARC). To help correctly and consistently manage memory when programming in C++, consider using a smart pointer class such as std
- Use an abstraction library to abstract away risky APIs. Not a complete solution.
- Consider using the Boehm-Demers-Weiser garbage collector (bdwgc), which can help avoid leaks.
More Missing Release of Memory after Effective Lifetime vulnerabilities (CWE-401)
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: yes, technical impact: partial).
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
- git.kernel.org/stable/c/0c9f399b37ce22a5ed94cc51f03ed07ac7f38e32
- git.kernel.org/stable/c/3c405dfa9619e506e75b8e41f8b29a5b99731877
- git.kernel.org/stable/c/58689498ca3384851145a754dbb1d8ed1cf9fb54
- git.kernel.org/stable/c/688f12aa44511dd57e448eb670075c6302ad1dc1
- git.kernel.org/stable/c/9c54e76f8d6eb11735918777ef0e0509e089557d
- git.kernel.org/stable/c/bd07fe6c38b9e44ff3fc02692a53f095c5cc9afc
Recent Missing Release of Memory after Effective Lifetime vulnerabilities
- 7.5 High severity
- 7.5 High severity
- 7.5 High severity
- 7.5 High severity
- 7.8 High severity
- 7.5 High severity
Spotted an error? Tell us.