Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en Linux (CVE-2026-23393)

Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
25/03/2026
Última modificación:
25/03/2026

Descripción

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:<br /> <br /> bridge: cfm: Corrección de condición de carrera en la eliminación de peer_mep<br /> <br /> Cuando se está eliminando un MEP par, se llama a cancel_delayed_work_sync() en ccm_rx_dwork antes de la liberación. Sin embargo, br_cfm_frame_rx() se ejecuta en contexto de softirq bajo rcu_read_lock (sin RTNL) y puede reprogramar ccm_rx_dwork a través de ccm_rx_timer_start() entre el retorno de cancel_delayed_work_sync() y la llamada a kfree_rcu().<br /> <br /> El siguiente es un escenario de condición de carrera simple:<br /> <br /> cpu0 cpu1<br /> <br /> mep_delete_implementation()<br /> cancel_delayed_work_sync(ccm_rx_dwork);<br /> br_cfm_frame_rx()<br /> // peer_mep todavía en hlist<br /> if (peer_mep-&amp;gt;ccm_defect)<br /> ccm_rx_timer_start()<br /> queue_delayed_work(ccm_rx_dwork)<br /> hlist_del_rcu(&amp;amp;peer_mep-&amp;gt;head);<br /> kfree_rcu(peer_mep, rcu);<br /> ccm_rx_work_expired()<br /> // en peer_mep liberado<br /> <br /> Para evitar esto, cancel_delayed_work_sync() se reemplaza por disable_delayed_work_sync() en ambas rutas de eliminación de MEP par, de modo que las llamadas posteriores a queue_delayed_work() desde br_cfm_frame_rx() sean rechazadas silenciosamente.<br /> <br /> La función auxiliar cc_peer_disable() mantiene cancel_delayed_work_sync() porque también se utiliza para la ruta de alternancia de habilitación/deshabilitación de CC donde el trabajo debe permanecer reprogramable.

Impacto