CVE-2026-72178 in Linuxinformación

Resumen

por VulDB • 2026-08-16

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:

mm/damon/core: liberar siempre los PIDs objetivo no comprometidos con éxito

damon_commit_target() libera y obtiene los PIDs objetivo de destino y origen. Libera el PID del objetivo de destino porque será sobrescrito por el PID del objetivo de origen. Obtiene el PID de origen porque se supone que la función llamadora liberará eventualmente los PIDs. En más detalle, la llamada a damon_destroy_ctx() después de damon_commit_ctx() destruirá todo el contexto de origen. Y en este caso, la devolución de callback cleanup_target() del conjunto de operaciones [f]vaddr liberará los PIDs.

La operación de compromiso se realiza a nivel de contexto. La operación puede fallar en múltiples lugares, incluyendo durante y después de las operaciones de compromiso de objetivos. Para cualquier fallo de este tipo, el error se devuelve inmediatamente al llamador de damon_commit_ctx(). Si algunos o todos los PIDs objetivo de origen fueron comprometidos con destino durante un intento de compromiso de contexto no exitoso, esos PIDs deben liberarse dos veces.

El contexto de origen realizará las operaciones de liberación utilizando la rutina explicada anteriormente. Sin embargo, supongamos que el contexto de destino originalmente no estaba usando el conjunto de operaciones [f]vaddr y el compromiso falló antes de comprometerse las ops del contexto de origen. El destino no tiene la devolución de callback cleanup_target() ops, por lo que no puede liberar los PIDs a través de damon_destroy_ctx().

Como resultado, se filtran (leak) los PIDs. El problema en el mundo real no sería muy común. La función de compromiso es para cambiar parámetros del contexto DAMON en ejecución mientras se hereda el estado interno como los resultados de monitoreo. Los resultados de monitoreo de un rango de direcciones físicas no tienen cosas que sean beneficiosas para ser heredadas al monitoreo de rangos de direcciones virtuales. Por lo tanto, el control DAMON causante del problema no sería muy común en el mundo real. Dicho esto, es una función admitida. Y la falla de damon_commit_target() debido a la asignación de memoria es relativamente realista [1] si hay un gran número de regiones objetivo.

Solución: liberar los PIDs durante la operación de compromiso en caso de fallos.

El problema fue descubierto [2] por Sashiko.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Responsable

Linux

Reservar

2026-08-09

Divulgación

2026-08-15

Moderación

aceptado

Artículo

VDB-390536

CPE

listo

EPSS

0.00209

KEV

no

Actividades

muy bajo

Fuentes

Do you want to use VulDB in your project?

Use the official API to access entries easily!