Linux Kernel up to 6.1.153/6.6.107/6.12.48/6.16.8 tls tls_rx_msg_size allocation of resources

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 4.9 | $0-$5k | 0.00 |
Summary
A vulnerability identified as critical has been detected in Linux Kernel up to 6.1.153/6.6.107/6.12.48/6.16.8. Impacted is the function tls_rx_msg_size of the component tls. The manipulation leads to allocation of resources.
This vulnerability is referenced as CVE-2025-39946. No exploit is available.
You should upgrade the affected component.
Details
A vulnerability, which was classified as critical, has been found in Linux Kernel up to 6.1.153/6.6.107/6.12.48/6.16.8. This issue affects the function tls_rx_msg_size of the component tls. The manipulation with an unknown input leads to a allocation of resources vulnerability. Using CWE to declare the problem leads to CWE-770. The product allocates a reusable resource or group of resources on behalf of an actor without imposing any restrictions on the size or number of resources that can be allocated, in violation of the intended security policy for that actor. The impact remains unknown. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: tls: make sure to abort the stream if headers are bogus Normally we wait for the socket to buffer up the whole record before we service it. If the socket has a tiny buffer, however, we read out the data sooner, to prevent connection stalls. Make sure that we abort the connection when we find out late that the record is actually invalid. Retrying the parsing is fine in itself but since we copy some more data each time before we parse we can overflow the allocated skb space. Constructing a scenario in which we're under pressure without enough data in the socket to parse the length upfront is quite hard. syzbot figured out a way to do this by serving us the header in small OOB sends, and then filling in the recvbuf with a large normal send. Make sure that tls_rx_msg_size() aborts strp, if we reach an invalid record there's really no way to recover.
It is possible to read the advisory at git.kernel.org. The identification of this vulnerability is CVE-2025-39946 since 04/16/2025. The exploitation is known to be difficult. Technical details of the vulnerability are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 269457 (Linux Distros Unpatched Vulnerability : CVE-2025-39946), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 6.1.154, 6.6.108, 6.12.49 or 6.16.9 eliminates this vulnerability. Applying the patch b36462146d86b1f22e594fe4dae611dffacfb203/4cefe5be73886f383639fe0850bb72d5b568a7b9/208640e6225cc929a05adbf79d1df558add3e231/61ca2da5fb8f433ce8bbd1657c84a86272133e6b/0aeb54ac4cd5cf8f60131b4d9ec0b6dc9c27b20d is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (269457) and CERT Bund (WID-SEC-2025-2194). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Affected
- Google Container-Optimized OS
- Debian Linux
- Google Cloud Platform
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- SUSE openSUSE
- Open Source Linux Kernel
- RESF Rocky Linux
- IBM QRadar SIEM
Product
Type
Vendor
Name
Version
- 6.1.153
- 6.6.107
- 6.12.0
- 6.12.1
- 6.12.2
- 6.12.3
- 6.12.4
- 6.12.5
- 6.12.6
- 6.12.7
- 6.12.8
- 6.12.9
- 6.12.10
- 6.12.11
- 6.12.12
- 6.12.13
- 6.12.14
- 6.12.15
- 6.12.16
- 6.12.17
- 6.12.18
- 6.12.19
- 6.12.20
- 6.12.21
- 6.12.22
- 6.12.23
- 6.12.24
- 6.12.25
- 6.12.26
- 6.12.27
- 6.12.28
- 6.12.29
- 6.12.30
- 6.12.31
- 6.12.32
- 6.12.33
- 6.12.34
- 6.12.35
- 6.12.36
- 6.12.37
- 6.12.38
- 6.12.39
- 6.12.40
- 6.12.41
- 6.12.42
- 6.12.43
- 6.12.44
- 6.12.45
- 6.12.46
- 6.12.47
- 6.12.48
- 6.16.0
- 6.16.1
- 6.16.2
- 6.16.3
- 6.16.4
- 6.16.5
- 6.16.6
- 6.16.7
- 6.16.8
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.0VulDB Meta Temp Score: 4.9
VulDB Base Score: 4.6
VulDB Temp Score: 4.4
VulDB Vector: 🔒
VulDB Reliability: 🔍
NVD Base Score: 5.5
NVD Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Allocation of resourcesCWE: CWE-770 / CWE-400 / CWE-404
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: Partially
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 269457
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2025-39946
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 6.1.154/6.6.108/6.12.49/6.16.9
Patch: b36462146d86b1f22e594fe4dae611dffacfb203/4cefe5be73886f383639fe0850bb72d5b568a7b9/208640e6225cc929a05adbf79d1df558add3e231/61ca2da5fb8f433ce8bbd1657c84a86272133e6b/0aeb54ac4cd5cf8f60131b4d9ec0b6dc9c27b20d
Timeline
04/16/2025 CVE reserved10/04/2025 Advisory disclosed
10/04/2025 VulDB entry created
01/27/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2025-39946 (🔒)
GCVE (CVE): GCVE-0-2025-39946
GCVE (VulDB): GCVE-100-327035
CERT Bund: WID-SEC-2025-2194 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 10/04/2025 11:33Updated: 01/27/2026 21:45
Changes: 10/04/2025 11:33 (59), 10/08/2025 17:41 (2), 11/24/2025 02:44 (7), 12/27/2025 00:10 (1), 01/27/2026 21:45 (11)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.