CVE-2026-99233 Uso después de liberar en el refcount de synth_event en histogramas de tracing
En el kernel de Linux, find_synth_event() compara solo el nombre base del evento, por lo que registrar o quitar un histograma en un evento no sintético con el mismo nombre base modifica erróneamente el refcount del evento sintético. Esto permite liberar el evento sintético mientras una acción de histograma activa aún lo referencia.
CVSS 3.1
- Probabilidad de explotación · EPSS del 09/110,1 % · percentil 1
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
Linux
desde 4b147936fa509650beaf638b331573c23ba4d609 hasta antes de 381f543ed35c434d5b707369aa5dcd69ecf440afdesde 4b147936fa509650beaf638b331573c23ba4d609 hasta antes de 4472579bd1c83708b6fe623c870cdf728e947205desde 4b147936fa509650beaf638b331573c23ba4d609 hasta antes de 23b4106e8b35823acc79e206c7745f55b9cfd78bdesde 4b147936fa509650beaf638b331573c23ba4d609 hasta antes de 06e816bed499fe47f39f12044382cc5d064485fbdesde 4b147936fa509650beaf638b331573c23ba4d609 hasta antes de 5597bb8db6855fcb97a67196d227fea359bcd81cdesde 4b147936fa509650beaf638b331573c23ba4d609 hasta antes de cf4e31d5da80fae4c9cdbe7af55b7c3ad213f0e4desde 4b147936fa509650beaf638b331573c23ba4d609 hasta antes de 3403d9bb27ebc3572bd048620746b4414e073bf9
Linux
4.17
Qué hacer
- Verificá si usás Linux y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 3.1 · 7.8 ALTA
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Vector de ataqueLocal
- Complejidad del ataqueBaja
- Privilegios requeridosBajos
- Interacción del usuarioNinguna
- AlcanceSin cambio
- ConfidencialidadAlta
- IntegridadAlta
- DisponibilidadAlta
Descripción original
In the Linux kernel, the following vulnerability has been resolved:
tracing/histograms: Verify event_call identity when updating synth_event refcount
In event_hist_trigger_parse() and hist_unreg_all(), the histogram
registration and unregistration paths look up find_synth_event() using
trace_event_name(file->event_call) and adjust se->ref if a match is
found.
Because find_synth_event() only compares the event basename, registering
or removing a histogram on a non-synthetic trace event whose basename
matches a synthetic event erroneously modifies the synthetic event's
reference count. If a histogram is registered on the non-synthetic
event before the synthetic event is created and removed afterwards,
se->ref is decremented without a matching increment, allowing the
synthetic event to be freed while an active histogram action still holds
a pointer to it.
Introduce find_synth_event_call() to verify that &se->call matches
file->event_call before adjusting se->ref.
Referencias (7)
- git.kernel.org/stable/c/381f543ed35c434d5b707369aa5dcd69ecf440af
- git.kernel.org/stable/c/4472579bd1c83708b6fe623c870cdf728e947205
- git.kernel.org/stable/c/23b4106e8b35823acc79e206c7745f55b9cfd78b
- git.kernel.org/stable/c/06e816bed499fe47f39f12044382cc5d064485fb
- git.kernel.org/stable/c/5597bb8db6855fcb97a67196d227fea359bcd81c
- git.kernel.org/stable/c/cf4e31d5da80fae4c9cdbe7af55b7c3ad213f0e4
- git.kernel.org/stable/c/3403d9bb27ebc3572bd048620746b4414e073bf9
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.