PixieFAIL: vulnerabilidades en la pila de red del firmware UEFI utilizada para el arranque PXE

Se han identificado nueve vulnerabilidades en el firmware UEFI basado en la plataforma abierta TianoCore EDK2, comúnmente utilizada en sistemas de servidores, cuyo nombre en código colectivo es PixieFAIL. Las vulnerabilidades están presentes en la pila de firmware de red utilizada para organizar el arranque de red (PXE). Las vulnerabilidades más peligrosas permiten que un atacante no autenticado ejecute código remoto a nivel de firmware en sistemas que permiten el arranque PXE a través de una red IPv9.

Los problemas menos graves provocan denegación de servicio (bloqueo de arranque), fuga de información, envenenamiento de la caché de DNS y secuestro de sesión TCP. La mayoría de las vulnerabilidades se pueden aprovechar desde la red local, pero algunas vulnerabilidades también se pueden atacar desde una red externa. Un escenario de ataque típico se reduce a monitorear el tráfico en una red local y enviar paquetes especialmente diseñados cuando se detecta actividad relacionada con el inicio del sistema a través de PXE. No se requiere acceso al servidor de descarga o al servidor DHCP. Para demostrar la técnica de ataque, se han publicado prototipos de exploits.

El firmware UEFI basado en la plataforma TianoCore EDK2 se utiliza en muchas grandes empresas, proveedores de nube, centros de datos y clústeres informáticos. En particular, el módulo vulnerable NetworkPkg con implementación de arranque PXE se utiliza en firmware desarrollado por ARM, Insyde Software (Insyde H20 UEFI BIOS), American Megatrends (AMI Aptio OpenEdition), Phoenix Technologies (SecureCore), Intel, Dell y Microsoft (Project Mu). ). También se creía que las vulnerabilidades afectaban a la plataforma ChromeOS, que tiene un paquete EDK2 en el repositorio, pero Google dijo que este paquete no se utiliza en el firmware para Chromebooks y que la plataforma ChromeOS no se ve afectada por el problema.

Vulnerabilidades identificadas:

  • CVE-2023-45230: desbordamiento del búfer en el código del cliente DHCPv6, explotado al pasar una ID de servidor demasiado larga (opción ID de servidor).
  • CVE-2023-45234: se produce un desbordamiento del búfer al procesar una opción con parámetros de servidor DNS pasados ​​en un mensaje que anuncia la presencia de un servidor DHCPv6.
  • CVE-2023-45235: Desbordamiento del búfer al procesar la opción ID del servidor en mensajes de anuncio de proxy DHCPv6.
  • CVE-2023-45229 es un desbordamiento insuficiente de enteros que se produce durante el procesamiento de las opciones IA_NA/IA_TA en mensajes DHCPv6 que anuncian un servidor DHCP.
  • CVE-2023-45231 Se produce una fuga de datos fuera del búfer al procesar mensajes de redireccionamiento ND (descubrimiento de vecinos) con valores de opción truncados.
  • CVE-2023-45232 Se produce un bucle infinito al analizar opciones desconocidas en el encabezado Opciones de destino.
  • CVE-2023-45233 Se produce un bucle infinito al analizar la opción PadN en el encabezado del paquete.
  • CVE-2023-45236: uso de semillas de secuencia TCP predecibles para permitir la conexión TCP.
  • CVE-2023-45237: uso de un generador de números pseudoaleatorios poco confiable que produce valores predecibles.

Las vulnerabilidades se presentaron al CERT/CC el 3 de agosto de 2023 y la fecha de divulgación estaba programada para el 2 de noviembre. Sin embargo, debido a la necesidad de un lanzamiento de parche coordinado entre varios proveedores, la fecha de lanzamiento se retrasó inicialmente hasta el 1 de diciembre, luego se retrasó hasta el 12 de diciembre y el 19 de diciembre de 2023, pero finalmente se reveló el 16 de enero de 2024. Al mismo tiempo, Microsoft pidió posponer la publicación de información hasta mayo.

Fuente: opennet.ru

Añadir un comentario