CVE-2026-53046
CVE.org · Published
- Record status
- Published
- Identifier year (not publication year)
- 2026
- Source publication
- Source updated
- Imported by cveboard
- Source snapshot
- cve_2026-10-24_midnight_baseline ·
CNA source text (English)
ksmbd: fix use-after-free from async crypto on Qualcomm crypto engine
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).
Scoped product and version facts
Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.
Exploitation unknown; this catalogue does not assess exploitation.
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
unaffected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 | affected | git | 57b47231055b431ed0a1a55f33cac32981564405 | Unavailable | None listed |
| e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 | affected | git | cc2da381875d4a67026e4c8feb3dba51a2a2d1bc | Unavailable | None listed |
| e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 | affected | git | 8fcefe840fa8c14ce667768e5b043286ac3bbcbe | Unavailable | None listed |
| e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 | affected | git | 8ef183216feaa24b66b940510d8b68f680eb56e9 | Unavailable | None listed |
| e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 | affected | git | 7164b3953cefd540e7ebca828c793bc6869cfbc4 | Unavailable | None listed |
| e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 | affected | git | b46aa129fa2807bfe1545fe74d9295d53c51520b | Unavailable | None listed |
| e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 | affected | git | 3e298897f41c61450c2e7a4f457e8b2485eb35b3 | Unavailable | None listed |
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
affected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 5.15 | affected | Unavailable | Unavailable | Unavailable | None listed |
| 0 | unaffected | semver | 5.15 | Unavailable | None listed |
| 5.15.209 | unaffected | semver | Unavailable | 5.15.* | None listed |
| 6.1.175 | unaffected | semver | Unavailable | 6.1.* | None listed |
| 6.6.141 | unaffected | semver | Unavailable | 6.6.* | None listed |
| 6.12.91 | unaffected | semver | Unavailable | 6.12.* | None listed |
| 6.18.33 | unaffected | semver | Unavailable | 6.18.* | None listed |
| 7.0.10 | unaffected | semver | Unavailable | 7.0.* | None listed |
| 7.1 | unaffected | original_commit_for_fix | Unavailable | * | None listed |