Linux Kernel up to 6.12.47/6.16.7 bpf_crypto_crypt out-of-bounds write

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.7 | $0-$5k | 0.00 |
Summary
A vulnerability was found in Linux Kernel up to 6.12.47/6.16.7 and classified as critical. This issue affects the function bpf_crypto_crypt. The manipulation results in out-of-bounds write.
This vulnerability is cataloged as CVE-2025-39917. There is no exploit available.
It is suggested to upgrade the affected component.
Details
A vulnerability classified as critical has been found in Linux Kernel up to 6.12.47/6.16.7. Affected is the function bpf_crypto_crypt. The manipulation with an unknown input leads to a out-of-bounds write vulnerability. CWE is classifying the issue as CWE-787. The product writes data past the end, or before the beginning, of the intended buffer. This is going to have an impact on confidentiality, integrity, and availability. CVE summarizes:
In the Linux kernel, the following vulnerability has been resolved: bpf: Fix out-of-bounds dynptr write in bpf_crypto_crypt Stanislav reported that in bpf_crypto_crypt() the destination dynptr's size is not validated to be at least as large as the source dynptr's size before calling into the crypto backend with 'len = src_len'. This can result in an OOB write when the destination is smaller than the source. Concretely, in mentioned function, psrc and pdst are both linear buffers fetched from each dynptr: psrc = __bpf_dynptr_data(src, src_len); [...] pdst = __bpf_dynptr_data_rw(dst, dst_len); [...] err = decrypt ? ctx->type->decrypt(ctx->tfm, psrc, pdst, src_len, piv) : ctx->type->encrypt(ctx->tfm, psrc, pdst, src_len, piv); The crypto backend expects pdst to be large enough with a src_len length that can be written. Add an additional src_len > dst_len check and bail out if it's the case. Note that these kfuncs are accessible under root privileges only.
The advisory is shared for download at git.kernel.org. This vulnerability is traded as CVE-2025-39917 since 04/16/2025. The exploitability is told to be easy. There are known technical details, but no exploit is available. The current price for an exploit might be approx. USD $0-$5k (estimation calculated on 01/08/2026).
The vulnerability scanner Nessus provides a plugin with the ID 269671 (Linux Distros Unpatched Vulnerability : CVE-2025-39917), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 6.12.48 or 6.16.8 eliminates this vulnerability. Applying the patch 0126358df12d6f476f79251d9c398ac5c1b3062d/c4be24ef0510c146dca4671effb127e97631534b/f9bb6ffa7f5ad0f8ee0f53fc4a10655872ee4a14 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 (269671), EUVD (EUVD-2025-31834) and CERT Bund (WID-SEC-2025-2170). Once again VulDB remains the best source for vulnerability data.
Affected
- Debian Linux
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- SUSE openSUSE
- RESF Rocky Linux
- Open Source Linux Kernel
- Dell Secure Connect Gateway
Product
Type
Vendor
Name
Version
- 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.16.0
- 6.16.1
- 6.16.2
- 6.16.3
- 6.16.4
- 6.16.5
- 6.16.6
- 6.16.7
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.9VulDB Meta Temp Score: 7.7
VulDB Base Score: 8.0
VulDB Temp Score: 7.6
VulDB Vector: 🔒
VulDB Reliability: 🔍
NVD Base Score: 7.8
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: Out-of-bounds writeCWE: CWE-787 / CWE-119
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: 269671
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2025-39917
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 6.12.48/6.16.8
Patch: 0126358df12d6f476f79251d9c398ac5c1b3062d/c4be24ef0510c146dca4671effb127e97631534b/f9bb6ffa7f5ad0f8ee0f53fc4a10655872ee4a14
Timeline
04/16/2025 CVE reserved10/01/2025 Advisory disclosed
10/01/2025 VulDB entry created
01/08/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2025-39917 (🔒)
GCVE (CVE): GCVE-0-2025-39917
GCVE (VulDB): GCVE-100-326484
EUVD: 🔒
CERT Bund: WID-SEC-2025-2170 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 10/01/2025 10:23Updated: 01/08/2026 19:33
Changes: 10/01/2025 10:23 (58), 10/01/2025 13:49 (1), 10/01/2025 21:26 (7), 10/10/2025 00:13 (2), 11/25/2025 06:03 (1), 12/01/2025 17:45 (1), 12/12/2025 19:39 (11), 01/08/2026 19:33 (1)
Complete: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.