CVE-2026-74729
soc: aspeed: lpc-snoop: Fix usercopy overflow in snoop_file_read
Description
In the Linux kernel, the following vulnerability has been resolved: soc: aspeed: lpc-snoop: Fix usercopy overflow in snoop_file_read put_fifo_with_discard() acts as both producer and consumer on the kfifo: it calls kfifo_skip() (advances out) and kfifo_put() (advances in) from the IRQ handler without synchronizing with snoop_file_read(), which also consumes via kfifo_to_user(). On SMP systems this concurrent access can leave (in - out) larger than the ring buffer, so __kfifo_to_user()'s clamp to (in - out) is ineffective and kfifo_copy_to_user() can attempt a copy_to_user() past the kmalloc-2k backing store: usercopy: Kernel memory exposure attempt detected from SLUB object 'kmalloc-2k' (offset 0, size 2049)! kernel BUG at mm/usercopy.c! Call trace: usercopy_abort __check_heap_object __check_object_size kfifo_copy_to_user __kfifo_to_user snoop_file_read vfs_read Serialize kfifo access with a per-channel spinlock shared between the IRQ handler (producer) and the file reader (consumer). Annotate @fifo with __guarded_by(&lock) and opt the driver into context analysis so the compiler enforces that all fifo access holds the lock.
INFO
Published Date :
Aug. 22, 2026, 4:16 p.m.
Last Modified :
Oct. 30, 2026, 1:20 p.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Solution
- Apply the patch resolving the usercopy overflow.
- Ensure kfifo access is synchronized with a spinlock.
- Annotate @fifo with __guarded_by(&lock).
- Enable context analysis for the driver.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-74729.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-74729 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-74729
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-74729 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-74729 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Oct. 30, 2026
Action Type Old Value New Value Added Affected Affected value modified. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/74xxx/CVE-2026-74729.json">CVE-2026-74729</a> Added Reference https://git.kernel.org/stable/c/f62afe827c52c300c64715631e6ac9e576c5112d -
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Oct. 21, 2026
Action Type Old Value New Value Added Affected Affected value modified. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/74xxx/CVE-2026-74729.json">CVE-2026-74729</a> Added Reference https://git.kernel.org/stable/c/afe2527eae0b51d5e8ddd77293afab3a5a1311a4 Added Reference https://git.kernel.org/stable/c/b87c0d24386ed5106feac12034fe09d893ccb469 -
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Oct. 15, 2026
Action Type Old Value New Value Added Affected Affected value modified. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/74xxx/CVE-2026-74729.json">CVE-2026-74729</a> Added Reference https://git.kernel.org/stable/c/131ab677b03349a5ae48da8722ec7075b37ec66e Added Reference https://git.kernel.org/stable/c/1acef6d85bfd98bd9dfe1f08bffa397a4dda8a6f Added Reference https://git.kernel.org/stable/c/868c478abce858135db3eb65548a577e4b6747ac Removed Reference https://git.kernel.org/stable/c/131ab677b03349a5ae48da8722ec7075b37ec66e Removed Reference https://git.kernel.org/stable/c/1acef6d85bfd98bd9dfe1f08bffa397a4dda8a6f -
CVE Translated by [email protected]
Oct. 14, 2026
Action Type Old Value New Value Added Translation Title: Linux, Description: En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: soc: aspeed: lpc-snoop: Corrección de desbordamiento de usercopy en snoop_file_read put_fifo_with_discard() actúa como productor y consumidor en el kfifo: llama a kfifo_skip() (avanza hacia afuera) y kfifo_put() (avanza hacia adentro) desde el gestor IRQ sin sincronizarse con snoop_file_read(), que también consume a través de kfifo_to_user(). En sistemas SMP, este acceso concurrente puede dejar (in - out) mayor que el búfer de anillo, por lo que la limitación de __kfifo_to_user() a (in - out) es ineficaz y kfifo_copy_to_user() puede intentar un copy_to_user() más allá del almacenamiento de respaldo kmalloc-2k: usercopy: Intento de exposición de memoria del kernel detectado desde el objeto SLUB 'kmalloc-2k' (desplazamiento 0, tamaño 2049)! BUG del kernel en mm/usercopy.c! Traza de llamada: usercopy_abort __check_heap_object __check_object_size kfifo_copy_to_user __kfifo_to_user snoop_file_read vfs_read Serializar el acceso al kfifo con un spinlock por canal compartido entre el gestor IRQ (productor) y el lector de archivos (consumidor). Anotar @fifo con __guarded_by(&lock) y optar por incluir el controlador en el análisis de contexto para que el compilador imponga que todo acceso al fifo mantenga el bloqueo. -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Aug. 22, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '3772e5da445420543b25825ac2b5971f3743f6e8', 'lessThan': '131ab677b03349a5ae48da8722ec7075b37ec66e', 'versionType': 'git'}, {'status': 'affected', 'version': '3772e5da445420543b25825ac2b5971f3743f6e8', 'lessThan': '1acef6d85bfd98bd9dfe1f08bffa397a4dda8a6f', 'versionType': 'git'}], 'programFiles': ['drivers/soc/aspeed/Makefile', 'drivers/soc/aspeed/aspeed-lpc-snoop.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '4.19'}, {'status': 'unaffected', 'version': '0', 'lessThan': '4.19', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '7.1.9', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/soc/aspeed/Makefile', 'drivers/soc/aspeed/aspeed-lpc-snoop.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: soc: aspeed: lpc-snoop: Fix usercopy overflow in snoop_file_read put_fifo_with_discard() acts as both producer and consumer on the kfifo: it calls kfifo_skip() (advances out) and kfifo_put() (advances in) from the IRQ handler without synchronizing with snoop_file_read(), which also consumes via kfifo_to_user(). On SMP systems this concurrent access can leave (in - out) larger than the ring buffer, so __kfifo_to_user()'s clamp to (in - out) is ineffective and kfifo_copy_to_user() can attempt a copy_to_user() past the kmalloc-2k backing store: usercopy: Kernel memory exposure attempt detected from SLUB object 'kmalloc-2k' (offset 0, size 2049)! kernel BUG at mm/usercopy.c! Call trace: usercopy_abort __check_heap_object __check_object_size kfifo_copy_to_user __kfifo_to_user snoop_file_read vfs_read Serialize kfifo access with a per-channel spinlock shared between the IRQ handler (producer) and the file reader (consumer). Annotate @fifo with __guarded_by(&lock) and opt the driver into context analysis so the compiler enforces that all fifo access holds the lock. Added Reference https://git.kernel.org/stable/c/131ab677b03349a5ae48da8722ec7075b37ec66e Added Reference https://git.kernel.org/stable/c/1acef6d85bfd98bd9dfe1f08bffa397a4dda8a6f