Vulnerabilidades en firmware UEFI basadas en el marco InsydeH2O permiten la ejecución de código en modo SMM

En el marco de InsydeH2O, utilizado por muchos fabricantes para crear firmware UEFI para su hardware (la implementación más común de UEFI BIOS), se han identificado 23 vulnerabilidades que permiten ejecutar código en el nivel SMM (Modo de Gestión del Sistema), que tiene una prioridad mayor (Ring -2) que el modo hipervisor y el anillo cero de protección, y que tiene acceso ilimitado a toda la memoria. El problema afecta a los firmware UEFI utilizados por fabricantes como Fujitsu, Siemens, Dell, HP, HPE, Lenovo, Microsoft, Intel y Bull Atos.

Para explotar las vulnerabilidades se requiere acceso local con privilegios de administrador, lo que hace que estos problemas sean relevantes como vulnerabilidades de segundo nivel, que se utilizan después de la explotación de otras vulnerabilidades en el sistema o mediante métodos de ingeniería social. El acceso en el nivel SMM permite ejecutar código en un nivel que no está bajo el control del sistema operativo, lo que puede ser utilizado para modificar firmware y dejar código malicioso oculto o rootkits en la SPI Flash, indetectables desde el sistema operativo, así como para desactivar la verificación en la etapa de arranque (UEFI Secure Boot, Intel BootGuard) y atacar hipervisores para evadir los mecanismos de verificación de la integridad de los entornos virtuales.

Vulnerabilidades en firmware UEFI basadas en el marco InsydeH2O permiten la ejecución de código en modo SMM

La explotación de las vulnerabilidades se puede realizar desde el sistema operativo mediante controladores SMI (Interrupción de Gestión del Sistema) no verificados, así como en la etapa previa a la ejecución del sistema operativo durante las etapas iniciales de arranque o al salir del modo de suspensión. Todas las vulnerabilidades son causadas por problemas de manejo de memoria y se dividen en tres categorías:

  • SMM Callout: ejecución de su código con privilegios SMM mediante el redireccionamiento de la ejecución de controladores de interrupciones SWSMI hacia el código fuera de SMRAM;
  • Daños en la memoria que permiten al atacante escribir sus datos en SMRAM, un área de memoria aislada especial donde se ejecuta código con privilegios SMM.
  • Daño en la memoria en el código que se ejecuta en el nivel DXE (Entorno de Ejecución de Controladores).

Para demostrar los principios de organización de un ataque, se ha publicado un ejemplo de exploit que permite, a través de un ataque desde el tercer o el cero anillo de defensa, obtener acceso al UEFI Runtime DXE y ejecutar su propio código. El exploit manipula un desbordamiento de pila (CVE-2021-42059) en el controlador UEFI DXE. Durante el ataque, un atacante puede insertar su código en un controlador DXE, manteniendo la actividad tras reiniciar el sistema operativo, o alterar la región NVRAM en SPI Flash. Durante la ejecución, el código del atacante puede modificar áreas privilegiadas de la memoria, modificar los servicios EFI Runtime e influir en el proceso de arranque.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster