Productos FTTH

Tienda FFTH desde 2004

Entradas Mensuales

Síguenos en:

Canal Oficial Telegram de elhacker.NET Grupo Facebook elhacker.NET Twitter elhacker.NET Canal Youtube elhacker.NET Comunidad Steam: Grupo elhacker.NET Mastodon

Entradas populares

PostHeaderIcon Publicado PoC para vulnerabilidad Use-After-Free en puente de kernel Linux


Se ha publicado una prueba de concepto (PoC) pública sobre una vulnerabilidad de use-after-free que afecta al subsistema de puente del núcleo de Linux, específicamente en su implementación del Protocolo de Árbol de Expansión (STP). Este fallo permite que los temporizadores de STP permanezcan activos tras eliminar el dispositivo de red, generando una condición peligrosa de seguridad de memoria en la caché slab kmalloc-cg-8k.





Se ha publicado una prueba de concepto (PoC) pública para un fallo de uso posterior a la liberación (use-after-free) que afecta al subsistema de puente del kernel de Linux, específicamente a su implementación del Protocolo de Árbol de Expansión (Spanning Tree Protocol) en net/bridge.

El problema puede dejar activos los temporizadores STP después de que el dispositivo de red de puente que los posee haya sido eliminado, creando una condición peligrosa de seguridad de memoria en el caché de slab kmalloc-cg-8k.

La vulnerabilidad de use-after-free ocurre cuando el STP del kernel está habilitado en un puente administrativamente desactivado y un puerto de puente transiciona al estado LEARNING.

En esta condición, el kernel puede armar temporizadores STP periódicos sin comprobar la bandera de interfaz IFF_UP. Estos temporizadores dan soporte a la máquina de estados de STP, que evita bucles de Capa 2 gestionando los estados de los puertos del puente y los cambios en la topología de la red.

Linux almacena temporizadores como hello_timer, tcn_timer, topology_change_timer y temporizadores específicos de puerto dentro de struct net_bridge. Esa estructura se encuentra en el área de datos privados del net_device del puente.

Como resultado, los temporizadores deben eliminarse antes de que el dispositivo de red subyacente sea liberado. Si permanecen en cola después de que la memoria sea liberada, el kernel puede intentar más tarde ejecutar una llamada al temporizador a través de una referencia de memoria obsoleta.

Vulnerabilidad de Use-After-Free en el Bridge del Kernel de Linux

Según SSD Disclosure, el error surge de un comportamiento de limpieza diferente entre el cierre normal de la interfaz y la eliminación directa del puente.

Durante una transición estándar de UP a DOWN, la ruta ndo_stop llega a br_stp_disable_bridge(), que cancela sincrónicamente los temporizadores STP a través de del_timer_sync(). Esto evita que las llamadas pendientes accedan a los datos del puente ya liberados.

Sin embargo, eliminar un puente a través de la ruta de desvinculación (delink) invoca br_dev_delete() y no activa la misma rutina de limpieza de STP. Si la interfaz ya está desactivada, el proceso de anulación del registro del dispositivo también puede omitir ndo_stop.

Esto deja temporizadores armados adjuntos a una base de temporizador por CPU, a pesar de que el net_device asociado se libera posteriormente. Cuando la rutina de procesamiento de temporizadores del kernel maneja más tarde el temporizador colgante en el contexto de softirq, puede desreferenciar memoria liberada.

Los investigadores señalaron que la reasignación controlada del objeto slab liberado podría potencialmente convertir el error en una primitiva de secuestro del flujo de control, elevando el impacto más allá de un cierre inesperado o un escenario de denegación de servicio.

La PoC pública demuestra el ciclo de vida afectado y subraya la importancia de una remediación oportuna en entornos que permitan cambios en la configuración del puente.

Se ha introducido un parche para el kernel de Linux en el commit 2a00517db8de4be7df3d483b215c5544fb30a191. Debes tratar como afectados a los sistemas que ejecuten kernels anteriores a ese cambio y actualizarlos a través de los paquetes de kernel compatibles de tu distribución.

Hasta que se desplieguen los kernels parcheados, debes restringir la capacidad de los usuarios no confiables para crear, modificar o eliminar interfaces de puente y revisar las cargas de trabajo que utilicen STP del kernel.



Fuentes:
https://cybersecuritynews.com/linux-kernel-bridge-use-after-free-vulnerability/

0 comentarios :

Publicar un comentario

Los comentarios pueden ser revisados en cualquier momento por los moderadores.

Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.

Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.