Desactivando Intel ME: Aventuras en ciberseguridad

Find AI Tools
No difficulty
No complicated process
Find ai tools

Desactivando Intel ME: Aventuras en ciberseguridad

Contenido

Introducción

¡Buenos días a todos! Es muy temprano en la mañana para mí, pero espero que estén más despiertos que yo. Así que sin más preámbulos, empecemos. Esta es una charla corta de solo 20 minutos, y tengo mucho material para cubrir. Antes de sumergirnos en la parte técnica, permítanme hacer una breve introducción. Soy dueño de mi propia empresa de investigación independiente en ciberseguridad, 0ie Lab. También soy miembro del laboratorio de crisis de la Universidad Tecnológica de Budapest y de nuestro equipo de CTF, Core Dump. Personalmente, me dedico mucho a la ingeniería inversa. Si alguien me pidiera que describiera mi trabajo de manera deficiente, esta sería mi entrada: abro calculadoras costosas a veces, por supuesto, me refiero a prácticas donde los hackers usan calculadoras para demostrar la ejecución de código arbitrario. Como dije, jugamos muchos CTF, que son una forma muy práctica y divertida de aprender sobre ciberseguridad. Por lo general, los recomendamos.

¿Qué es el Motor de Gestión de Intel?

El Motor de Gestión de Intel, también conocido como Intel ME, es un entorno de cómputo separado que fue introducido en junio de 2006. Inicialmente se encontraba en el controlador de memoria, pero luego se trasladó al controlador de plataforma en ubicaciones más centrales y en los conjuntos de chips. Este subsistema originalmente estaba destinado a proporcionar una amplia funcionalidad, incluida la tecnología de gestión activa (AMT) de Intel, que permite la administración remota de máquinas y la reinstalación del sistema operativo. Además de eso, está pobremente documentado y ejecuta firmware propietario de Intel. Es la raíz de confianza del sistema y sirve como base para otras tecnologías como el Camino de Audio y Video Protegido de Intel y Guardia de Inicio. Tiene acceso completo a muchos dispositivos internos dentro del conjunto de chips, capacidades de hardware para la intercepción de la actividad del usuario y acceso al búfer de trama, entre otras cosas. Además, es una parte integral del ciclo de vida del sistema operativo, ya que este coprocesador es el encargado de ejecutar el código primero en la máquina y de iniciar la CPU principal. En resumen, es un guardián fundamental en la plataforma.

Debate de Tannenbaum y Torvalds

Hace mucho tiempo, hubo un famoso debate entre Tannenbaum y Torvalds sobre si los núcleos monolíticos o los micro núcleos son mejores. En términos prácticos, el diseño del núcleo monolítico resultó ser más eficiente. Sin embargo, sorprendentemente, en todas las placas base modernas de Intel, el coprocesador del Motor de Gestión de Intel ejecuta un sistema operativo MINIX. Este es un procesador de escala de 32 bits normal que ejecuta un sistema operativo MINIX completo. Inicialmente, esto se eligió debido al diseño del micro núcleo, lo cual es interesante ya que implementar la máquina virtual de Java es un giro bastante interesante. El coprocesador interactúa con la mayoría de los subsistemas integrales de las placas base, incluidos los mencionados anteriormente, así como también cuenta con la capacidad de funcionar incluso cuando el CPU principal está apagado y el ventilador no está funcionando. Esto significa que tiene tres estados de potencia donde esto puede suceder.

Vulnerabilidades anteriores en x86

Antes de profundizar en el Motor de Gestión de Intel, es importante mencionar algunas vulnerabilidades anteriores en las arquitecturas x86. Christopher Domas realizó un interesante discurso sobre la escalada universal de privilegios locales en cualquier sistema basado en x86. También Presentó un método para detectar instrucciones ocultas que no están documentadas oficialmente por Intel. Concluyó que existen muchas instrucciones no documentadas que se comparten entre los fabricantes de CPU y que son desconocidas para el público en general. Estas vulnerabilidades y descubrimientos proporcionaron una base sólida para investigar a fondo el subsistema del Motor de Gestión de Intel.

Investigación de Positive Technologists

La empresa Positive Technologists, con sede en Rusia, ha sido líder en la investigación del Motor de Gestión de Intel. Dos de sus investigadores, Mark Yermolov y Maksim Goryachy, han realizado una ingeniería inversa exhaustiva. Inicialmente, en abril de 2017, compartieron información en su blog, pero todavía estaban lejos de poder profundizar en la complejidad del subsistema. Sin embargo, encontraron piezas importantes para resolver este rompecabezas. En un avance posterior, lograron descomprimir la ROM de la BIOS, que estaba comprimida con compresión Huffman. También comprimieron el firmware y descubrieron que los módulos dentro del firmware están firmados individualmente y se cargan según sea necesario. Esto permitió eliminar partes del firmware y mantener la integridad de las firmas digitales de los demás. Estas investigaciones llevaron a la creación de una herramienta llamada Emmy Cleaner, que permite desactivar partes no esenciales del coprocesador y reducir su superficie de ataque.

Desbordamiento de búfer basado en pila

Por parte de Positive Technologists, se descubrió una vulnerabilidad importante en el firmware del Motor de Gestión de Intel. Este desbordamiento de búfer basado en pila permitía a los investigadores tomar el control del coprocesador a través de un sistema de archivos interno en el chip de la BIOS. Para aprovechar esta vulnerabilidad, se creó un archivo especial en el sistema de archivos interno, lo que provocaba el desbordamiento de búfer de pila y, posteriormente, el control del coprocesador. Aunque en el pasado se habían encontrado errores de lógica que permitían la ejecución de código, esto representaba un nivel de acceso y control mucho más profundo. Una vez que se lograba la ejecución de código en la plataforma, se Podía activar un registro especial llamado registro de personalidad dfx, que controla los niveles de desbloqueo del coprocesador.

Mecanismo de registro dfx personality

El registro de personalidad dfx es un registro especial que controla los niveles de desbloqueo del coprocesador. Para obtener el nivel de desbloqueo completo y acceder a todas las funciones del coprocesador, se debe establecer el registro dfx personality en 3. Esto se puede hacer mediante órdenes y da acceso completo al analizador lógico y al JTAG, entre otras cosas. En resumen, permite la depuración completa.

Cómo desactivar el coprocesador

Hay una forma de desactivar el coprocesador del Motor de Gestión de Intel mediante la modificación de un bit de configuración en el archivo de firmware de la BIOS. Positive Technologists descubrió que el bit de Alta confianza de la plataforma se puede cambiar para desactivar el coprocesador. Esto se hizo usando la herramienta Intel Firmware Image Tool y examinando los archivos XML que describen cómo se usa la región de configuración en la BIOS. Mediante una combinación de ingeniería inversa y comprensión de los bits en los archivos XML, lograron encontrar el bit Correcto para desactivar el coprocesador. Esto ha permitido a los usuarios desactivar el coprocesador en sus propias placas base y reducir su superficie de ataque.

Sostenibilidad a largo plazo

Es importante tener en cuenta que, aunque desactivar el coprocesador es beneficioso en términos de seguridad, no es una solución definitiva. La sostenibilidad a largo plazo de este enfoque es cuestionable, ya que hay muchos componentes cerrados en el sistema y microcódigos no documentados. Además, también hay componentes como los registros específicos del modelo de la placa base que no están documentados. Aunque la investigación sobre el Motor de Gestión de Intel ha sido valiosa hasta ahora, es necesario considerar alternativas a largo plazo para garantizar la seguridad de los sistemas informáticos. Plataformas como OpenPOWER de IBM, que ofrecen microcódigos abiertos y especificaciones de placa base, pueden ser una solución más segura y transparente.

Conclusión

En resumen, el Motor de Gestión de Intel es un subsistema integral pero problemático en las placas base modernas. Las investigaciones realizadas por Positive Technologists han arrojado luz sobre las vulnerabilidades y la posibilidad de desactivar el coprocesador. Si bien esta es una solución temporal, es importante tener en cuenta que existe un enfoque más sólido en el largo plazo al optar por plataformas más abiertas y transparentes. La seguridad informática continúa siendo un desafío, pero con la perseverancia y el enfoque correcto, podemos reducir las superficies de ataque y mejorar la seguridad de nuestros sistemas.

Recursos adicionales:

Are you spending too much time looking for ai tools?
App rating
4.9
AI Tools
100k+
Trusted Users
5000+
WHY YOU SHOULD CHOOSE TOOLIFY

TOOLIFY is the best ai tool source.