CVE-2024-26800CWE-416

CVE-2024-26800

Critical · published April 4, 2024

CVSS v3.1
9.8
EPSS
1%
Percentile
54.3
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

tls: fix use-after-free on failed backlog decryption

When the decrypt request goes to the backlog and crypto_aead_decrypt

returns -EBUSY, tls_do_decryption will wait until all async

decryptions have completed. If one of them fails, tls_do_decryption

will return -EBADMSG and tls_decrypt_sg jumps to the error path,

releasing all the pages. But the pages have been passed to the async

callback, and have already been released by tls_decrypt_done.

The only true async case is when crypto_aead_decrypt returns

-EINPROGRESS. With -EBUSY, we already waited so we can tell

tls_sw_recvmsg that the data is available for immediate copy, but we

need to notify tls_decrypt_sg (via the new ->async_done flag) that the

memory has already been released.

The record
Technical detail
CVSS v3.1
9.8 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00745 · 54.3th percentile
Weakness
CWE-416 · Use After Free
Published
2024-04-04T13:15Z
Affected products (9)
ProductVersionsFixed in
linux/linux_kernel≥ 5.15.160, < 5.165.16
linux/linux_kernel≥ 6.6.18, < 6.6.216.6.21
linux/linux_kernel≥ 6.7.6, < 6.7.96.7.9
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (8)
EPSS history
Timeline
  • 04 APR 08:20Z
    tls: fix use-after-free on failed backlog decryption
    cvelistv5