{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-64485","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-07-19T15:36:31.791Z","datePublished":"2026-07-25T08:51:45.301Z","dateUpdated":"2026-08-17T04:56:32.502Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-17T04:56:32.502Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: compress: Fix task creation error unwind\n\nsnd_compr_task_new() allocates the driver task before validating the\nreturned DMA buffers and reserving file descriptors. When either of\nthose later steps fails, the core frees its task wrapper and DMA-buffer\nreferences without calling the driver's task_free() callback. Any\ndriver resources allocated by task_create() are therefore leaked.\n\nThe dual-fd allocation path also jumps to cleanup without storing the\nnegative get_unused_fd_flags() result in retval. Since retval still\ncontains the successful task_create() return value, TASK_CREATE can\nincorrectly report success although the task was discarded.\n\nPreserve the fd allocation errors and call task_free() when failure\noccurs after a successful task_create() callback."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The vulnerable path requires opening the local ALSA compress accelerator device and issuing SET_PARAMS and TASK_CREATE ioctls; no network or physical-input path reaches it.\nAC:L - The attacker can deterministically exhaust its own file-descriptor table so descriptor allocation fails after task_create succeeds. No race or condition outside the attacker’s control is required.\nPR:L - There are no capable(), ns_capable(), or authentication checks in this path, so an unprivileged user with ordinary access to the ASRC device node can trigger it.\nUI:N - The attacker alone can configure the stream, exhaust descriptors, issue TASK_CREATE, and close the stream. No separate victim action is required.\nS:U - The vulnerable ALSA driver and the affected kernel resources share the same security authority; kernel compromise is a conventional local privilege escalation.\nC:H - Skipping task_free leaves asrc->pair[] referencing a driver object that stream close subsequently frees, producing an attacker-reclaimable UAF in interrupt and power-management paths. Reclaimed DMA-channel pointers can influence kernel control flow and expose arbitrary kernel data.\nI:H - The stale pair is used for writes through completion handling and for an indirect device_terminate_all call through its DMA-channel pointer. Heap reclamation can therefore provide memory-corruption and control-flow-hijacking primitives.\nA:H - The leak exhausts the finite ASRC contexts and exclusive DMA channels, persistently disabling the device. Dereferencing the stale pair during interrupt or suspend/resume handling can also cause a kernel oops, panic, or hang."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["sound/core/compress_offload.c"],"versions":[{"version":"04177158cf98a79744937893b100020d77e6f9ac","lessThan":"b27a75d42044d9d4709095617730b91b1c4af423","status":"affected","versionType":"git"},{"version":"04177158cf98a79744937893b100020d77e6f9ac","lessThan":"426a9947a38d272d0e19c031658da68e31128667","status":"affected","versionType":"git"},{"version":"04177158cf98a79744937893b100020d77e6f9ac","lessThan":"4a60127debb9e370d6c0e22a307326b624a141f3","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["sound/core/compress_offload.c"],"versions":[{"version":"6.13","status":"affected"},{"version":"0","lessThan":"6.13","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":"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"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/b27a75d42044d9d4709095617730b91b1c4af423"},{"url":"https://git.kernel.org/stable/c/426a9947a38d272d0e19c031658da68e31128667"},{"url":"https://git.kernel.org/stable/c/4a60127debb9e370d6c0e22a307326b624a141f3"}],"title":"ALSA: compress: Fix task creation error unwind","x_generator":{"engine":"bippy-1.2.0"}}}}