CVE-2024-26800

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

HIGH
7.8
CVSS Score
Published: April 4, 2024 at 08:20 AM UTC
Updated: August 4, 2026 at 04:05 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.8
Exploit prediction
EPSS 0.7%
SSVC
No known exploit

Description

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.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v ≥ 5.15.1605.15.160 ≤ v < 5.166.6.18 ≤ v < 6.6.216.7.6 ≤ v < 6.7.913eca403876bbea3716e82cdfe6f1e6febb387543ade391adc584f17b5570fd205de3ad0290903685.15.1606.6.186.7.66.8 rc16.8 rc26.8 rc36.8 rc46.8 rc56.8 rc68590541473188741055d27b955db0777569438e3ab6397f072e5097f267abf5cb08a8004e6b17694cd1bbca03f3c1d845ce274c0d0a66de8e5929f72
Vendor states this is fixed in 13114dc5543069f7b97991e3b79937b6da05f5b0 (fixed)
Vendor states this is fixed in 1ac9fb84bc7ecd4bc6428118301d9d864d2a58d1 (fixed)
Vendor states this is fixed in 81be85353b0f5a7b660635634b655329b429eefe (fixed)
Vendor states this is fixed in f2b85a4cc763841843de693bbd7308fe9a2c4c89 (fixed)
Affected range stops below 5.16, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.6.21, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.7.9, so it looks safe — our inference, not a vendor statement

References (4)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/13114dc5543069f7b97991e3b79937b6da05f5b0
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/1ac9fb84bc7ecd4bc6428118301d9d864d2a58d1
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/81be85353b0f5a7b660635634b655329b429eefe
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/f2b85a4cc763841843de693bbd7308fe9a2c4c89

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-416

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card