{"id":"CVE-2026-53046","summary":"ksmbd: fix use-after-free from async crypto on Qualcomm crypto engine","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: fix use-after-free from async crypto on Qualcomm crypto engine\n\nksmbd_crypt_message() sets a NULL completion callback on AEAD requests\nand does not handle the -EINPROGRESS return code from async hardware\ncrypto engines like the Qualcomm Crypto Engine (QCE). When QCE returns\n-EINPROGRESS, ksmbd treats it as an error and immediately frees the\nrequest while the hardware DMA operation is still in flight. The DMA\ncompletion callback then dereferences freed memory, causing a NULL\npointer crash:\n\n  pc : qce_skcipher_done+0x24/0x174\n  lr : vchan_complete+0x230/0x27c\n  ...\n  el1h_64_irq+0x68/0x6c\n  ksmbd_free_work_struct+0x20/0x118 [ksmbd]\n  ksmbd_exit_file_cache+0x694/0xa4c [ksmbd]\n\nUse the standard crypto_wait_req() pattern with crypto_req_done() as\nthe completion callback, matching the approach used by the SMB client\nin fs/smb/client/smb2ops.c. This properly handles both synchronous\nengines (immediate return) and async engines (-EINPROGRESS followed\nby callback notification).","modified":"2026-07-16T03:32:43.919613959Z","published":"2026-06-24T16:29:52.676Z","database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53046.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/3e298897f41c61450c2e7a4f457e8b2485eb35b3"},{"type":"WEB","url":"https://git.kernel.org/stable/c/57b47231055b431ed0a1a55f33cac32981564405"},{"type":"WEB","url":"https://git.kernel.org/stable/c/7164b3953cefd540e7ebca828c793bc6869cfbc4"},{"type":"WEB","url":"https://git.kernel.org/stable/c/8ef183216feaa24b66b940510d8b68f680eb56e9"},{"type":"WEB","url":"https://git.kernel.org/stable/c/8fcefe840fa8c14ce667768e5b043286ac3bbcbe"},{"type":"WEB","url":"https://git.kernel.org/stable/c/b46aa129fa2807bfe1545fe74d9295d53c51520b"},{"type":"WEB","url":"https://git.kernel.org/stable/c/cc2da381875d4a67026e4c8feb3dba51a2a2d1bc"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53046.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-53046"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9"},{"fixed":"57b47231055b431ed0a1a55f33cac32981564405"},{"fixed":"cc2da381875d4a67026e4c8feb3dba51a2a2d1bc"},{"fixed":"8fcefe840fa8c14ce667768e5b043286ac3bbcbe"},{"fixed":"8ef183216feaa24b66b940510d8b68f680eb56e9"},{"fixed":"7164b3953cefd540e7ebca828c793bc6869cfbc4"},{"fixed":"b46aa129fa2807bfe1545fe74d9295d53c51520b"},{"fixed":"3e298897f41c61450c2e7a4f457e8b2485eb35b3"}]}],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-53046.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"5.15.0"},{"fixed":"5.15.209"}]},{"type":"ECOSYSTEM","events":[{"introduced":"5.16.0"},{"fixed":"6.1.175"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.2.0"},{"fixed":"6.6.141"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.7.0"},{"fixed":"6.12.91"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.33"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.0.10"}]}],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-53046.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"}]}