Vulnerabilidad en Linux (CVE-2026-46272)
Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-362
Ejecución concurrente utilizando recursos compartidos con una incorrecta sincronización (Condición de carrera)
Fecha de publicación:
03/06/2026
Última modificación:
22/07/2026
Descripción
En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:<br />
<br />
coresight: tmc-etr: Soluciona condición de carrera entre el modo sysfs y perf<br />
<br />
Al intentar ejecutar los modos perf y sysfs simultáneamente, el WARN_ON() en tmc_etr_enable_hw() se activa a veces:<br />
<br />
ADVERTENCIA: CPU: 42 PID: 3911571 en drivers/hwtracing/coresight/coresight-tmc-etr.c:1060 tmc_etr_enable_hw+0xc0/0xd8 [coresight_tmc]<br />
[..recorte..]<br />
Rastro de llamada:<br />
tmc_etr_enable_hw+0xc0/0xd8 [coresight_tmc] (P)<br />
tmc_enable_etr_sink+0x11c/0x250 [coresight_tmc] (L)<br />
tmc_enable_etr_sink+0x11c/0x250 [coresight_tmc]<br />
coresight_enable_path+0x1c8/0x218 [coresight]<br />
coresight_enable_sysfs+0xa4/0x228 [coresight]<br />
enable_source_store+0x58/0xa8 [coresight]<br />
dev_attr_store+0x20/0x40<br />
sysfs_kf_write+0x4c/0x68<br />
kernfs_fop_write_iter+0x120/0x1b8<br />
vfs_write+0x2c8/0x388<br />
ksys_write+0x74/0x108<br />
__arm64_sys_write+0x24/0x38<br />
el0_svc_common.constprop.0+0x64/0x148<br />
do_el0_svc+0x24/0x38<br />
el0_svc+0x3c/0x130<br />
el0t_64_sync_handler+0xc8/0xd0<br />
el0t_64_sync+0x1ac/0x1b0<br />
---[ fin del rastro 0000000000000000 ]---<br />
<br />
Dado que la habilitación del modo sysfs está separada en dos regiones críticas, una para la asignación del búfer sysfs y otra para la habilitación del hardware, es posible que haya una condición de carrera con el modo perf. Soluciona esto verificando dos veces si el modo perf ha sido utilizado antes de habilitar el hardware en el modo sysfs.<br />
<br />
modo:<br />
[modo sysfs] [modo perf]<br />
tmc_etr_get_sysfs_buffer()<br />
spin_lock(&drvdata->spinlock)<br />
[asignación de búfer sysfs]<br />
spin_unlock(&drvdata->spinlock)<br />
spin_lock(&drvdata->spinlock)<br />
tmc_etr_enable_hw()<br />
drvdata->etr_buf = etr_perf->etr_buf<br />
spin_unlock(&drvdata->spinlock)<br />
spin_lock(&drvdata->spinlock)<br />
tmc_etr_enable_hw()<br />
WARN_ON(drvdata->etr_buf) // ADVERTENCIA ya que etr_buf inicializado en<br />
el lado perf<br />
spin_unlock(&drvdata->spinlock)<br />
<br />
Con esta solución, mantenemos la verificación de CS_MODE_PERF en get_etr_sysfs_buf. Esto asegura que verifiquemos si el modo perf ya está en ejecución antes de asignar realmente el búfer. Entonces podemos ahorrar el tiempo de asignar/liberar el búfer sysfs si hay una condición de carrera con el modo perf.
Impacto
Puntuación base 3.x
4.70
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.5 (incluyendo) | 6.18.14 (excluyendo) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.19 (incluyendo) | 6.19.4 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



