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.
Metrics
Affected Vendors & Products
| Source | ID | Title |
|---|---|---|
Debian DSA |
DSA-5658-1 | linux security update |
Ubuntu USN |
USN-7088-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-3 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-4 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7088-5 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7100-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7100-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-7119-1 | Linux kernel (IoT) vulnerabilities |
Ubuntu USN |
USN-7123-1 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-7144-1 | Linux kernel (Intel IoTG) vulnerabilities |
Ubuntu USN |
USN-7194-1 | Linux kernel (Azure) vulnerabilities |
Solution
No solution given by the vendor.
Workaround
No workaround given by the vendor.
Fri, 20 Dec 2024 16:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Linux
Linux linux Kernel |
|
| Weaknesses | CWE-416 | |
| CPEs | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.8:rc1:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.8:rc2:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.8:rc3:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.8:rc4:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.8:rc5:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.8:rc6:*:*:*:*:*:* |
|
| Vendors & Products |
Linux
Linux linux Kernel |
|
| Metrics |
cvssV3_1
|
cvssV3_1
|
Thu, 19 Dec 2024 09:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Status: PUBLISHED
Assigner: Linux
Published:
Updated: 2025-05-04T12:54:45.649Z
Reserved: 2024-02-19T14:20:24.179Z
Link: CVE-2024-26800
Updated: 2024-08-02T00:14:13.534Z
Status : Analyzed
Published: 2024-04-04T09:15:09.003
Modified: 2024-12-20T15:55:10.150
Link: CVE-2024-26800
OpenCVE Enrichment
No data.
Debian DSA
Ubuntu USN