CVE-2026-64312: crypto: pcrypt - restore callback for non-parallel fallback
Greg Kroah-Hartman <[email protected]> Sat, 25 Jul 2026 10:48:49 +0200
| Newsgroups | org.kernel.vger.linux-cve-announce |
|---|---|
| Message-ID | <2026072509-CVE-2026-64312-2566@gregkh> |
From: Greg Kroah-Hartman <[email protected]> Description =========== In the Linux kernel, the following vulnerability has been resolved: crypto: pcrypt - restore callback for non-parallel fallback pcrypt installs pcrypt_aead_done() on the child AEAD request before trying to submit it through padata. If padata_do_parallel() returns -EBUSY, pcrypt falls back to calling the child AEAD directly. That fallback must not keep the padata completion callback. Otherwise an asynchronous completion runs pcrypt_aead_done() even though the request was never enrolled in padata. Restore the original request callback and callback data before calling the child AEAD directly. This keeps the fallback path aligned with a direct AEAD request while leaving the parallel path unchanged. The Linux kernel CVE team has assigned CVE-2026-64312 to this issue. Affected and fixed versions =========================== Issue introduced in 5.10.231 with commit a92ccd3618e42333ac6f150ecdac14dca298bc7a and fixed in 5.10.261 with commit 81ce16d938db9b88cdc231522c0358395ae8c6b5 Issue introduced in 5.15.174 with commit 96001f52ae8c70e2c736d3e1e5dc53d5b521e5ca and fixed in 5.15.212 with commit 3920c5f6edc341729d20d0507e466c6d3b11f372 Issue introduced in 6.1.120 with commit 92834692a539b5b7f409e467a14667d64713b732 and fixed in 6.1.178 with commit ae93c5b3e2a2968b56d772ca1d06615927b7cc36 Issue introduced in 6.6.64 with commit 5edae7a9a35606017ee6e05911c290acee9fee5a and fixed in 6.6.145 with commit 82789a44415e3e31168229421b138278dfb16412 Issue introduced in 6.12.2 with commit 7ddab756f2de5b7b43c122ebebdf37f400fb2b6f and fixed in 6.12.96 with commit 4711ca06bd169a2cbc9cc59a6de2ed512c41a880 Issue introduced in 6.13 with commit 662f2f13e66d3883b9238b0b96b17886179e60e2 and fixed in 6.18.39 with commit c4bd2f4c35b0e15b6040c2f7e7e7986780c066cf Issue introduced in 6.13 with commit 662f2f13e66d3883b9238b0b96b17886179e60e2 and fixed in 7.1.4 with commit 83fa1397d5853de1e27dd52ec44b068ff358ca18 Issue introduced in 6.13 with commit 662f2f13e66d3883b9238b0b96b17886179e60e2 and fixed in 7.2-rc1 with commit ed459fe319376e876de433d12b6c6772e612ca36 Issue introduced in 4.19.325 with commit dd8bf8eb5beba1e7c3b11a9a5a58ccbf345a69e6 Issue introduced in 5.4.287 with commit fca8aed12218f96b38e374ff264d78ea1fbd23cc Issue introduced in 6.11.11 with commit a8e0074ffb38c9a5964a221bb998034d016c93a2 Please see https://www.kernel.org for a full list of currently supported kernel versions by the kernel community. Unaffected versions might change over time as fixes are backported to older supported kernel versions. The official CVE entry at https://cve.org/CVERecord/?id=CVE-2026-64312 will be updated if fixes are backported, please check that for the most up to date information about this issue. Affected files ============== The file(s) affected by this issue are: crypto/pcrypt.c Mitigation ========== The Linux kernel CVE team recommends that you update to the latest stable kernel version for this, and many other bugfixes. Individual changes are never tested alone, but rather are part of a larger kernel release. Cherry-picking individual commits is not recommended or supported by the Linux kernel community at all. If however, updating to the latest release is impossible, the individual changes to resolve this issue can be found at these commits: https://git.kernel.org/stable/c/81ce16d938db9b88cdc231522c0358395ae8c6b5 https://git.kernel.org/stable/c/3920c5f6edc341729d20d0507e466c6d3b11f372 https://git.kernel.org/stable/c/ae93c5b3e2a2968b56d772ca1d06615927b7cc36 https://git.kernel.org/stable/c/82789a44415e3e31168229421b138278dfb16412 https://git.kernel.org/stable/c/4711ca06bd169a2cbc9cc59a6de2ed512c41a880 https://git.kernel.org/stable/c/c4bd2f4c35b0e15b6040c2f7e7e7986780c066cf https://git.kernel.org/stable/c/83fa1397d5853de1e27dd52ec44b068ff358ca18 https://git.kernel.org/stable/c/ed459fe319376e876de433d12b6c6772e612ca36