Descubre Noticias de Ciberseguridad en nuestro TecnetBlog

Falla crítica en Shim afecta grandes distribuciones Linux

Escrito por Gustavo Sánchez | Feb 8, 2024 11:00:00 PM

La seguridad es un pilar fundamental que sostiene la confianza de los usuarios y garantiza la integridad de los sistemas. Recientemente, se ha descubierto una vulnerabilidad crítica en el cargador de arranque Shim, un componente esencial para el arranque seguro de los sistemas operativos Linux. Este descubrimiento ha puesto en alerta a la comunidad tecnológica, dado que impacta a varias de las principales distribuciones de Linux, una plataforma conocida por su robustez y seguridad.

 

¿Qué es Shim?

 

Para entender la gravedad de esta situación, primero es necesario comprender qué es Shim. Shim es un cargador de arranque diseñado para sistemas que utilizan UEFI (Interfaz de Firmware Extensible Unificada), una especificación moderna de firmware que ha reemplazado a la antigua BIOS en muchas computadoras nuevas. El propósito de Shim es facilitar el arranque seguro de los sistemas operativos, verificando que el software que se carga durante el arranque esté firmado digitalmente y sea confiable. Esto previene que malware como rootkits se cargue en el sistema durante el inicio, ofreciendo una capa adicional de seguridad.

 

Conoce más sobre:  Rootkits en Seguridad Informática: ¿Qué son?

 

La Vulnerabilidad Descubierta

 

Una grave vulnerabilidad ha sido detectada en el gestor de arranque Shim Linux, lo que permite a los atacantes ejecutar código y asumir el control de un sistema objetivo incluso antes de que se cargue el kernel, eludiendo así los mecanismos de seguridad existentes.

Shim es un gestor de arranque de código abierto desarrollado y mantenido por Red Hat. Está diseñado para facilitar el proceso de arranque seguro en sistemas que utilizan la Interfaz de firmware extensible unificada (UEFI). Esta herramienta está firmada con una clave de Microsoft, ampliamente aceptada por defecto en la mayoría de las placas base UEFI. Esta firma se utiliza para verificar la siguiente etapa del proceso de arranque, que generalmente implica cargar el gestor de arranque GRUB2.

Shim surgió para cubrir una necesidad: permitir que proyectos de código abierto, como las diversas distribuciones de Linux, aprovechen las ventajas del arranque seguro. Esto incluye la prevención de la ejecución de código malicioso o no autorizado durante el arranque, mientras se mantiene el control sobre el hardware.

La nueva vulnerabilidad de Shim, identificada como CVE-2023-40547, fue descubierta por el investigador de seguridad de Microsoft, Bill Demirkapi, quien la dio a conocer por primera vez el 24 de enero de 2024. El fallo en cuestión reside en el código fuente httpboot.c de Shim, utilizado para iniciar una imagen de red a través de HTTP.

 

 

Te podrá interesar:  3 Ataques Frecuentes a Linux en Casa

 

Durante el proceso de recuperación de archivos a través de HTTP u otros protocolos relacionados, el gestor de arranque Shim intenta asignar un búfer para almacenar los datos recibidos, según se describe en la explicación para abordar el error en httpboot.c.

Lamentablemente, esto conlleva la obtención del tamaño de un encabezado HTTP, que puede ser manipulado para especificar un tamaño menor que los datos recibidos. En este escenario, el código utiliza inadvertidamente el tamaño del encabezado para la asignación, pero los metadatos del protocolo para copiarlo del búfer rx, lo que resulta en una escritura fuera de límites.

Más detalles sobre esta falla se dieron a conocer el 2 de febrero de 2024, y Eclypsium publicó un informe ayer para destacar este problema de seguridad. La vulnerabilidad reside en el análisis de las respuestas HTTP por parte de Shim, lo que permite a un atacante crear solicitudes HTTP especialmente diseñadas para provocar una escritura fuera de límites.

 

Conoce más sobre:  Detectando Debilidades: Explorando Vulnerabilidades



Esto podría permitir que un atacante comprometa un sistema ejecutando código privilegiado antes de que se cargue el sistema operativo, eludiendo efectivamente los mecanismos de seguridad implementados por el kernel y el sistema operativo.

Eclypsium indica que CVE-2023-40547 tiene múltiples rutas potenciales de explotación, incluidos puntos de ataque locales, adyacentes a la red y remotos. El informe de la empresa destaca los siguientes tres métodos:

1. Un atacante remoto puede llevar a cabo un ataque de intermediario (MiTM), interceptando el tráfico HTTP destinado al arranque HTTP, potencialmente desde cualquier posición en la red entre la víctima y el servidor.

2. Un atacante local con suficientes privilegios puede modificar las variables EFI o la partición EFI utilizando un USB Linux activo para alterar el orden de arranque y cargar un shim comprometido, ejecutando así código privilegiado sin deshabilitar el arranque seguro.

3. Un atacante en la misma red puede aprovechar PXE para cargar un cargador de arranque comprometido, explotando la vulnerabilidad.

 

Podría interesarte:  Nuevo Malware SprySOCKS Linux vinculado a Ciberespionaje

 

Impacto y Soluciones



El 5 de diciembre de 2023, Red Hat emitió un código de confirmación para abordar CVE-2023-40547, sin embargo, las distribuciones de Linux que admiten Secure Boot y utilizan Shim deben aplicar sus propios parches. Diversas distribuciones de Linux, incluyendo Red Hat, Debian, Ubuntu y SUSE, han emitido avisos que contienen información relevante sobre esta vulnerabilidad.

Se insta a los usuarios de Linux a actualizar a la última versión de Shim, la v15.8, que incluye una solución para CVE-2023-40547, además de otras cinco vulnerabilidades importantes.

Eclypsium señala que los usuarios de Linux también deben actualizar la lista de revocación del UEFI Secure Boot DBX para incluir los hashes del software Shim vulnerable, y firmar la versión parcheada con una clave válida de Microsoft.

 



Para realizar esta actualización, primero se debe actualizar a Shim 15.8 y luego aplicar la actualización DBX utilizando el comando 'fwupdmgr update' (se requiere fwupd). Algunas distribuciones de Linux ofrecen una herramienta GUI para llevar a cabo esta actualización, por lo que se recomienda verificar el administrador de paquetes antes de recurrir a la terminal.

Aunque es poco probable que CVE-2023-40547 sea explotado de manera masiva, no es un error que deba ser pasado por alto, ya que la ejecución de código antes del inicio del sistema operativo representa una de las formas más sólidas y sigilosas de comprometer el sistema.

 

Te podrá interesar:  ¿Tu software está al día?: Importancia de los Parches

 

Conclusión

 

La seguridad informática es un campo en constante evolución, donde las amenazas emergen tan rápidamente como las tecnologías diseñadas para contrarrestarlas. La reciente vulnerabilidad descubierta en el cargador de arranque Shim subraya la importancia de mantener los sistemas actualizados y seguir las recomendaciones de seguridad de los expertos.

Aunque el impacto potencial de esta falla es significativo, la respuesta rápida de la comunidad de Linux demuestra la resiliencia y el compromiso continuo con la seguridad de los sistemas operativos de código abierto. Los usuarios y administradores de sistemas deben tomar medidas proactivas para asegurar sus sistemas, aplicando parches de seguridad de manera oportuna y manteniéndose informados sobre las mejores prácticas de seguridad en el cambiante paisaje tecnológico.