Vulnerabilidad en kernel de Linux (CVE-2023-52835)
Gravedad CVSS v3.1:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
21/05/2024
Última modificación:
23/09/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: perf/core: rescate anticipado si el área AUX de la solicitud está fuera de los límites. Cuando perf-record con un área AUX grande, por ejemplo, 4 GB, falla con: #perf record -C 0 -m, 4G -e arm_spe_0// -- el sueño 1 no pudo mapear con 12 (no se puede asignar memoria) y revela una ADVERTENCIA con __alloc_pages(): ------------[ cortar aquí ] ------------ ADVERTENCIA: CPU: 44 PID: 17573 en mm/page_alloc.c:5568 __alloc_pages+0x1ec/0x248 Rastreo de llamadas: __alloc_pages+0x1ec/0x248 __kmalloc_large_node+0xc0/0x1f8 __kmalloc_node+0x134/ 0x1e8 rb_alloc_aux+0xe0/0x298 perf_mmap+0x440/0x660 mmap_region+0x308/0x8a8 do_mmap+0x3c0/0x528 vm_mmap_pgoff+0xf4/0x1b8 ksys_mmap_pgoff+0x18c/0x218 sys_mmap+0x38/0x58 invoke_syscall+0x50/0x128 el0_svc_common.constprop.0+0x58/0x188 do_el0_svc+0x34/0x50 el0_svc+0x34/0x108 el0t_64_sync_handler+0xb8/0xc0 el0t_64_sync+0x1a4/0x1a8 'rb->aux_pages' asignado por kcalloc() es una matriz de punteros que se utiliza para mantener páginas de seguimiento AUX. La página asignada para esta matriz es físicamente contigua (y virtualmente contigua) con un orden de 0..MAX_ORDER. Si el tamaño de la matriz de punteros cruza la limitación establecida por MAX_ORDER, se revela una ADVERTENCIA. Por lo tanto, salve pronto con -ENOMEM si el área AUX de la solicitud está fuera de los límites, por ejemplo: #perf record -C 0 -m ,4G -e arm_spe_0// -- el sueño 1 no pudo asignar mm con 12 (no se puede asignar memoria)
Impacto
Puntuación base 3.x
7.80
Gravedad 3.x
ALTA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.19.300 (excluyendo) | |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (incluyendo) | 5.4.262 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (incluyendo) | 5.10.202 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (incluyendo) | 5.15.140 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (incluyendo) | 6.1.64 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (incluyendo) | 6.5.13 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.6 (incluyendo) | 6.6.3 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/1a2a4202c60fcdffbf04f259002ce9bff39edece
- https://git.kernel.org/stable/c/2424410f94a94d91230ced094062d859714c984a
- https://git.kernel.org/stable/c/2e905e608e38cf7f8dcddcf8a6036e91a78444cb
- https://git.kernel.org/stable/c/54aee5f15b83437f23b2b2469bcf21bdd9823916
- https://git.kernel.org/stable/c/788c0b3442ead737008934947730a6d1ff703734
- https://git.kernel.org/stable/c/8c504f615d7ed60ae035c51d0c789137ced6797f
- https://git.kernel.org/stable/c/9ce4e87a8efd37c85766ec08b15e885cab08553a
- https://git.kernel.org/stable/c/fd0df3f8719201dbe61a4d39083d5aecd705399a
- https://git.kernel.org/stable/c/1a2a4202c60fcdffbf04f259002ce9bff39edece
- https://git.kernel.org/stable/c/2424410f94a94d91230ced094062d859714c984a
- https://git.kernel.org/stable/c/2e905e608e38cf7f8dcddcf8a6036e91a78444cb
- https://git.kernel.org/stable/c/54aee5f15b83437f23b2b2469bcf21bdd9823916
- https://git.kernel.org/stable/c/788c0b3442ead737008934947730a6d1ff703734
- https://git.kernel.org/stable/c/8c504f615d7ed60ae035c51d0c789137ced6797f
- https://git.kernel.org/stable/c/9ce4e87a8efd37c85766ec08b15e885cab08553a
- https://git.kernel.org/stable/c/fd0df3f8719201dbe61a4d39083d5aecd705399a



