El evento de seguridad de la información Hack in the Box 2014 trajo noticias importantes sobre una posible vulnerabilidad en el mecanismo de seguridad Secure Boot del UEFI.
UEFI (Interfaz Extensible del Firmware Unificada) fue desarrollada para reemplazar la interfaz del estándar BIOS (Sistema Básico de Entrada/Salida). Una de las características de la implementación de esta nueva interfaz es la posibilidad de ejecutar el mecanismo Secure Boot, ya que las limitaciones del BIOS no permitían su implementación. Secure Boot impide el inicio del Sistema Operativo si el boot loader (programa utilizado para organizar el arranque del SO) no tiene un certificado digital.
Con UEFI, y Secure Boot activado, las computadoras pasaron a ser más resistentes a ataques de bootkits (malware ejecutado antes del arranque del SO), ya que los mismos normalmente no cuentan con certificados válidos. Además, con la implementación de ELAM (Early Launch Anti Malware) para Windows 8, plataformas de seguridad pueden cargarse en etapas tempranas y detectar/eliminar bootkits.
Pero según Corey Kallenberg, investigador de la organización Mitre, es posible sobrepasar el Secure Boot configurado por algunas marcas e infectar las computadoras con bootkits.
Es importante destacar que no se trata de una vulnerabilidad en los mecanismos mencionados. UEFI es implementado de formas distintas por fabricantes de computadoras, y algunos de ellos no logran proteger sus firmwares, lo que permite su modificación manual desde el sistema operativo. La variable Setup (configuración) de UEFI puede ser cambiada desde el sistema operativo por un usuario con derechos de administrador, y una vez hecho el cambio, la infección a través de un bootkit sería posible.
Dicha infección tiene como objetivo el robo de información y el control de la maquina infectada, ya que permite al atacante explotar vulnerabilidades, instalar/modificar programas y robar credenciales a través de fuerza bruta, entre otras cosas.
Otra forma grave de dañar un equipo con el UEFI desprotegido sería cambiar la variable Setup a cero. Este escenario significaría que el equipo estaría virtualmente inutilizado, ya que no estaría más la posibilidad de encender el mismo. Ataques como estos son conocidos como bricking.
Más vulnerabilidades existen, según Kallenberg. Cuando los fabricantes no utilizan un mecanismo de seguridad llamado SMI_Lock en sus implementaciones de UEFI, existe la posibilidad de la ejecución de un código desde el núcleo del SO (Kernel) que deshabilitaría temporalmente el SMM (System Management Mode). Eso permitiría al atacante agregar un boot loader infectado al listado de boot loaders permitidos, y, al reiniciar el equipo, el mismo sería ejecutado sin la detección del Secure Boot.
Es importante remarcar que las vulnerabilidades mencionadas tienen como raíz errores por parte de fabricantes, y que las mismas solamente pueden ser ejecutadas por usuarios con derechos de administrador.
Para evitar el ingreso indebido de terceros es crucial contar con un software de seguridad, mantener el equipo bloqueado con una contraseña robusta siempre que no esté en uso y cifrar los datos del mismo para que sean ilegibles en el caso de una intrusión.
Créditos imagen: ©Microsoft TechNet/Captura de pantalla