{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-64312","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-07-19T15:36:31.779Z","datePublished":"2026-07-25T08:49:43.940Z","dateUpdated":"2026-08-17T04:53:12.187Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-17T04:53:12.187Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ncrypto: pcrypt - restore callback for non-parallel fallback\n\npcrypt installs pcrypt_aead_done() on the child AEAD request before\ntrying to submit it through padata.  If padata_do_parallel() returns\n-EBUSY, pcrypt falls back to calling the child AEAD directly.\n\nThat fallback must not keep the padata completion callback.  Otherwise\nan asynchronous completion runs pcrypt_aead_done() even though the\nrequest was never enrolled in padata.\n\nRestore the original request callback and callback data before calling\nthe child AEAD directly.  This keeps the fallback path aligned with a\ndirect AEAD request while leaving the parallel path unchanged."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","baseScore":7.5,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:N - pcrypt is designed for network-facing IPsec use, and an inbound ESP packet can traverse xfrm_input(), esp_input(), crypto_aead_decrypt(), and pcrypt_aead_decrypt().\nAC:L - In load-responsive CPU-hotplug deployments, an attacker can flood qualifying ESP requests across repeated PADATA_RESET windows without precise timing or an uncontrollable memory-layout condition.\nPR:N - The ESP SPI is transmitted in clear, and the faulty path is reached before the child AEAD validates the integrity tag, so an unauthenticated on-path attacker needs no target-system privileges.\nUI:N - Packet delivery and asynchronous completion require no victim action.\nS:U - The failure affects the same kernel security authority processing the request and does not cross a VM, IOMMU, or sandbox boundary.\nC:N - The rejected request retains a zero padata->pd pointer, producing a NULL dereference without an out-of-bounds read or information disclosure.\nI:N - The callback writes only the completion status into its valid request context before dereferencing NULL; it provides no attacker-directed corruption or write primitive.\nA:H - padata_do_serial() dereferences the uninitialized padata->pd pointer, causing a kernel oops or panic that can terminate the system and can be retriggered."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["crypto/pcrypt.c"],"versions":[{"version":"a92ccd3618e42333ac6f150ecdac14dca298bc7a","lessThan":"81ce16d938db9b88cdc231522c0358395ae8c6b5","status":"affected","versionType":"git"},{"version":"96001f52ae8c70e2c736d3e1e5dc53d5b521e5ca","lessThan":"3920c5f6edc341729d20d0507e466c6d3b11f372","status":"affected","versionType":"git"},{"version":"92834692a539b5b7f409e467a14667d64713b732","lessThan":"ae93c5b3e2a2968b56d772ca1d06615927b7cc36","status":"affected","versionType":"git"},{"version":"5edae7a9a35606017ee6e05911c290acee9fee5a","lessThan":"82789a44415e3e31168229421b138278dfb16412","status":"affected","versionType":"git"},{"version":"7ddab756f2de5b7b43c122ebebdf37f400fb2b6f","lessThan":"4711ca06bd169a2cbc9cc59a6de2ed512c41a880","status":"affected","versionType":"git"},{"version":"662f2f13e66d3883b9238b0b96b17886179e60e2","lessThan":"c4bd2f4c35b0e15b6040c2f7e7e7986780c066cf","status":"affected","versionType":"git"},{"version":"662f2f13e66d3883b9238b0b96b17886179e60e2","lessThan":"83fa1397d5853de1e27dd52ec44b068ff358ca18","status":"affected","versionType":"git"},{"version":"662f2f13e66d3883b9238b0b96b17886179e60e2","lessThan":"ed459fe319376e876de433d12b6c6772e612ca36","status":"affected","versionType":"git"},{"version":"dd8bf8eb5beba1e7c3b11a9a5a58ccbf345a69e6","status":"affected","versionType":"git"},{"version":"fca8aed12218f96b38e374ff264d78ea1fbd23cc","status":"affected","versionType":"git"},{"version":"a8e0074ffb38c9a5964a221bb998034d016c93a2","status":"affected","versionType":"git"},{"version":"5.10.231","lessThan":"5.10.261","status":"affected","versionType":"semver"},{"version":"5.15.174","lessThan":"5.15.212","status":"affected","versionType":"semver"},{"version":"6.1.120","lessThan":"6.1.178","status":"affected","versionType":"semver"},{"version":"6.6.64","lessThan":"6.6.145","status":"affected","versionType":"semver"},{"version":"6.12.2","lessThan":"6.12.96","status":"affected","versionType":"semver"},{"version":"4.19.325","lessThan":"4.20","status":"affected","versionType":"semver"},{"version":"5.4.287","lessThan":"5.5","status":"affected","versionType":"semver"},{"version":"6.11.11","lessThan":"6.12","status":"affected","versionType":"semver"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["crypto/pcrypt.c"],"versions":[{"version":"6.13","status":"affected"},{"version":"0","lessThan":"6.13","status":"unaffected","versionType":"semver"},{"version":"5.10.261","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.212","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.178","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.145","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.96","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.39","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.1.4","lessThanOrEqual":"7.1.*","status":"unaffected","versionType":"semver"},{"version":"7.2","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.10.231","versionEndExcluding":"5.10.261"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15.174","versionEndExcluding":"5.15.212"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1.120","versionEndExcluding":"6.1.178"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.6.64","versionEndExcluding":"6.6.145"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.12.2","versionEndExcluding":"6.12.96"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.13","versionEndExcluding":"6.18.39"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.13","versionEndExcluding":"7.1.4"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.13","versionEndExcluding":"7.2"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.19.325"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.287"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.11.11"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/81ce16d938db9b88cdc231522c0358395ae8c6b5"},{"url":"https://git.kernel.org/stable/c/3920c5f6edc341729d20d0507e466c6d3b11f372"},{"url":"https://git.kernel.org/stable/c/ae93c5b3e2a2968b56d772ca1d06615927b7cc36"},{"url":"https://git.kernel.org/stable/c/82789a44415e3e31168229421b138278dfb16412"},{"url":"https://git.kernel.org/stable/c/4711ca06bd169a2cbc9cc59a6de2ed512c41a880"},{"url":"https://git.kernel.org/stable/c/c4bd2f4c35b0e15b6040c2f7e7e7986780c066cf"},{"url":"https://git.kernel.org/stable/c/83fa1397d5853de1e27dd52ec44b068ff358ca18"},{"url":"https://git.kernel.org/stable/c/ed459fe319376e876de433d12b6c6772e612ca36"}],"title":"crypto: pcrypt - restore callback for non-parallel fallback","x_generator":{"engine":"bippy-1.2.0"}}}}