Las vulnerabilidades de alto riesgo en el arranque seguro de la mayoría de los dispositivos Linux del planeta

En el panorama en constante evolución de la ciberseguridad, ha surgido una nueva vulnerabilidad identificada como CVE-2023-40547, que ensombrece la seguridad de la mayoría de los sistemas Linux. Esta vulnerabilidad, descubierta dentro del cargador de arranque shim, un componente fundamental para admitir el arranque seguro , plantea un riesgo crítico que potencialmente permite a los atacantes obtener control no autorizado sobre el proceso de arranque de los sistemas afectados.

COMPRENSIÓN DE SHIM Y SU FUNCIÓN EN EL ARRANQUE SEGURO

Shim desempeña un papel fundamental en el proceso de arranque de Linux, especialmente en sistemas que utilizan Secure Boot, un estándar de seguridad desarrollado para garantizar que un dispositivo arranque utilizando únicamente software en el que confía el fabricante de equipos originales (OEM). Debido a incompatibilidades de licencia que impiden la firma directa del gestor de arranque (GRUB2) por parte de Microsoft, se desarrolló el gestor de arranque shim. Shim incluye un certificado y un código del proveedor que verifica y ejecuta el gestor de arranque, cerrando efectivamente la brecha entre el software de código abierto y los requisitos de arranque seguro. La corrección se verifica primero utilizando la CA UEFI de terceros de Microsoft, que luego carga y verifica el cargador de arranque GRUB2 utilizando el certificado de proveedor integrado.

LA VULNERABILIDAD CVE-2023-40547

Reportado por Bill Demirkapi en el Centro de Respuesta de Seguridad de Microsoft, CVE-2023-40547 se atribuye a una vulnerabilidad de escritura fuera de límites dentro del manejo del protocolo HTTP de shim. Esta falla se puede aprovechar para lograr un compromiso completo del sistema antes de que se cargue el kernel, eludiendo cualquier medida de seguridad implementada a nivel del sistema operativo. La vulnerabilidad, mantenida por Red Hat para la mayoría de las distribuciones de Linux, recibió una puntuación CVSS de 9,8 (crítica) por NVD y 8,3 (alta) por Red Hat, lo que subraya su gravedad.

IMPLICACIONES MÁS AMPLIAS Y VULNERABILIDADES ADICIONALES

Si bien CVE-2023-40547 afecta directamente al shim, es fundamental tener en cuenta que este no es un problema aislado. Además de esta vulnerabilidad crítica, se han revelado cinco vulnerabilidades adicionales con gravedad media, que afectan varios aspectos de la funcionalidad de shim, desde el manejo de binarios PE hasta la validación de información SBAT. Estas vulnerabilidades resaltan colectivamente el complejo panorama de seguridad que los desarrolladores y usuarios deben navegar.

El descubrimiento de CVE-2023-40547 en el gestor de arranque shim ha sacado a la luz vulnerabilidades adicionales dentro del mismo componente. Aquí hay una lista de las cinco fallas adicionales identificadas junto con CVE-2023-40547, cada una de las cuales presenta desafíos únicos para la seguridad de los sistemas que utilizan shim para Secure Boot:

  1. CVE-2023-40546 : esta vulnerabilidad soluciona una falla en la LogError()función, específicamente un problema de desreferencia del puntero NULL. Este tipo de vulnerabilidad puede provocar ataques de denegación de servicio (DoS) u otros comportamientos indefinidos en el software, lo que podría permitir a los atacantes explotar aún más el sistema.
  2. CVE-2023-40548 : Identificada como una vulnerabilidad de desbordamiento de enteros, esta falla ocurre en el manejo del tamaño de la sección SBAT en sistemas de 32 bits, lo que provoca un desbordamiento del montón. Las vulnerabilidades de desbordamiento de enteros pueden provocar la ejecución de código malicioso, corrupción de datos o un fallo del sistema afectado.
  3. CVE-2023-40549 : esta vulnerabilidad es un problema de lectura fuera de límites que ocurre al cargar un binario ejecutable portátil (PE). Los problemas de lectura fuera de los límites pueden provocar la divulgación de información, lo que permite a un atacante obtener información sobre la memoria del sistema que podría contener información confidencial o punteros que podrían usarse en futuras vulnerabilidades.
  4. CVE-2023-40550 : similar a CVE-2023-40549, esta falla también implica una lectura fuera de límites, pero ocurre específicamente al intentar validar la información SBAT (UEFI Secure Boot Advanced Targeting). Esta vulnerabilidad podría explotarse para eludir las restricciones de arranque seguro o para revelar información que podría facilitar futuros ataques.
  5. CVE-2023-40551 : esta vulnerabilidad soluciona un problema de verificación de límites para los archivos binarios MZ (Mark Zbikowski), un formato utilizado en sistemas operativos compatibles con DOS. La verificación adecuada de los límites es crucial para evitar ataques de desbordamiento del búfer, y una falla aquí podría permitir a los atacantes ejecutar código arbitrario o provocar una denegación de servicio.

Cada una de estas vulnerabilidades, si bien se califica como de gravedad media, subraya la complejidad y la importancia de proteger el proceso de arranque en los entornos informáticos modernos. La identificación y la pronta solución de estas fallas son pasos críticos para mantener la integridad y seguridad de los sistemas que dependen de la tecnología Secure Boot.

VECTORES DE ATAQUE Y ESTRATEGIAS DE REMEDIACIÓN

La explotación de CVE-2023-40547 puede ocurrir a través de varios vectores de ataque, incluidos los ataques Man-in-the-Middle (MiTM) que interceptan el tráfico de arranque HTTP, ataques locales que manipulan variables EFI o la partición EFI y ataques basados ​​en red que utilizan PXE para Cargue en cadena un gestor de arranque shim vulnerable. La naturaleza integral de estas rutas de ataque subraya la necesidad de medidas de seguridad sólidas.

Para mitigar los riesgos que plantea CVE-2023-40547 y las vulnerabilidades asociadas, se requiere un enfoque multifacético para actualizar la cadena de confianza de Secure Boot. Esto incluye actualizar UEFI Secure Boot DBX (lista de revocación) para incluir hashes del software shim vulnerable y firmar nuevas versiones parcheadas de shim con la CA de terceros de Microsoft. Se recomienda a los usuarios de Linux que primero actualicen a la última versión de shim antes de aplicar la actualización de DBX, un proceso que puede facilitarse utilizando herramientas como fwupd.

El descubrimiento de CVE-2023-40547 y vulnerabilidades relacionadas dentro del gestor de arranque shim sirve como un claro recordatorio de los desafíos actuales para proteger el proceso de arranque contra amenazas sofisticadas. Los esfuerzos colaborativos de la comunidad de ciberseguridad, incluidos investigadores, desarrolladores y empresas de seguridad como Eclypsium, desempeñan un papel crucial a la hora de identificar, informar y mitigar dichas vulnerabilidades. A medida que el panorama digital continúa evolucionando, el compromiso con medidas de seguridad proactivas sigue siendo primordial para proteger contra la amenaza siempre presente del acceso no autorizado al sistema y su compromiso.

El incidente que rodea a CVE-2023-40547 no solo resalta las complejidades técnicas y los desafíos de proteger los entornos informáticos modernos, sino que también enfatiza la importancia de la participación y la respuesta de la comunidad frente a las amenazas de ciberseguridad. A través de la vigilancia y la acción colectivas, el impacto potencial de tales vulnerabilidades se puede reducir significativamente, salvaguardando la integridad y confiabilidad de innumerables sistemas en todo el mundo.