In the Linux kernel, the following vulnerability has been resolved: dmaengine: idxd: fix possible wrong descriptor completion in llist_abort_desc() At the end of this function, d is the traversal cursor of flist, but the code completes found instead. This can lead to issues such as NULL pointer dereferences, double completion, or descriptor leaks. Fix this by completing d instead of found in the final list_for_each_entry_safe() loop.
In the llist_abort_desc() function, the variable d serves as a cursor for iterating through the flist, however the code incorrectly calls completion on the variable found instead of on d. In the final list_for_each_entry_safe() loop, this causes an incorrect descriptor to be completed. This results in an inconsistent internal state of the DMA driver.
An attacker or malfunctioning code can lead to NULL pointer dereference, double completion of a descriptor, or resource leak, which in practice can result in system crash (kernel panic) or instability.
Apply patches available from the vendor according to the references — specific fix commits are available at the addresses provided in the references section (git.kernel.org)
Linux kernel with dmaengine/idxd subsystem — versions indicated in the vendor references (commits in stable branches of the kernel.org repository)
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux Kernel
OSLinux7.06.8 – 6.12.80 (bez)6.13 – 6.18.21 (bez)6.19 – 6.19.11 (bez)
Related vulnerabilities
Type confusion w V8 (Google Chrome) — zdalne uszkodzenie sterty
Commvault Command Center – nieuwierzytelniony RCE przez path traversal w ZIP
IBM Aspera Faspex 4.4.2 Patch Level 1 and earlier could allow a remote attacker to execute arbitrary code on t...
VMware Workspace ONE Access and Identity Manager contain a remote code execution vulnerability due to server-s...
VMware Workspace One Access, Access Connector, Identity Manager, and Identity Manager Connector address have a...