CVE-2025-39917CWE-787

CVE-2025-39917

High · published October 1, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
4.2
In the wild
Unconfirmed
What it is

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 record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00154 · 4.2th percentile
Weakness
CWE-787 · Out-of-bounds Write
Published
2025-10-01T12:15Z
Affected products (7)
ProductVersionsFixed in
linux/linux_kernel≥ 6.10, < 6.12.486.12.48
linux/linux_kernel≥ 6.13, < 6.16.86.16.8
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (3)
EPSS history
Timeline
  • 01 OCT 07:44Z
    bpf: Fix out-of-bounds dynptr write in bpf_crypto_crypt
    cvelistv5