CVEvulnerability

CVE-2026-53046

9.8 CRITICAL Published 2026-06-24 Modified 2026-07-21 Official page ↗
Status
Analyzed
Published
2026-06-24
Last modified
2026-07-21
Assigner
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS 3.1 (416baaa9-dc9f-4396-8d5f-8c081fb06d67)
9.8 CRITICAL — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-416

Description

In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix use-after-free from async crypto on Qualcomm crypto engine ksmbd_crypt_message() sets a NULL completion callback on AEAD requests and does not handle the -EINPROGRESS return code from async hardware crypto engines like the Qualcomm Crypto Engine (QCE). When QCE returns -EINPROGRESS, ksmbd treats it as an error and immediately frees the request while the hardware DMA operation is still in flight. The DMA completion callback then dereferences freed memory, causing a NULL pointer crash: pc : qce_skcipher_done+0x24/0x174 lr : vchan_complete+0x230/0x27c ... el1h_64_irq+0x68/0x6c ksmbd_free_work_struct+0x20/0x118 [ksmbd] ksmbd_exit_file_cache+0x694/0xa4c [ksmbd] Use the standard crypto_wait_req() pattern with crypto_req_done() as the completion callback, matching the approach used by the SMB client in fs/smb/client/smb2ops.c. This properly handles both synchronous engines (immediate return) and async engines (-EINPROGRESS followed by callback notification).

Affected configurations

• linux linux kernel (>= 5.15 < 5.15.209) • linux linux kernel (>= 5.16 < 6.1.175) • linux linux kernel (>= 6.2 < 6.6.141) • linux linux kernel (>= 6.7 < 6.12.91) • linux linux kernel (>= 6.13 < 6.18.33) • linux linux kernel (>= 6.19 < 7.0.10)

Related

Weakness · CWE (1)

References