Lo que aprendimos sobre la seguridad de Intel ME en los últimos años: 7 datos sobre el misterioso subsistema



Imagen: Unsplash

En los últimos años, la tecnología Intel ME ha estado bajo el escrutinio de los investigadores. Esta tecnología está rodeada de un aura de misterio, a pesar del hecho de que tiene acceso a casi todos los datos en la computadora y su compromiso le permite tomar el control completo de la máquina, la documentación oficial y los manuales para trabajar con el fabricante simplemente no existen. Por lo tanto, los investigadores de todo el mundo tienen que comprender independientemente el trabajo del subsistema.

Hemos estado estudiando Intel ME durante los últimos años, y esto es lo que hemos logrado descubrir sobre este misterioso subsistema en este momento.

Las vulnerabilidades en mí pueden descifrar incluso una computadora apagada


A finales de 2017 en la conferencia Black Hat Europe, los investigadores de Tecnologías Positivas Mark Ermolov y Maxim Goryachy hablaron sobre una vulnerabilidad en Intel Management Engine 11 que podría permitir a los atacantes acceder a la mayoría de los datos y procesos en el dispositivo. Una descripción detallada del problema que publicamos en nuestro blog en el centro

La vulnerabilidad en Intel ME permitió la ejecución de código arbitrario. Esto pone en peligro todas las tecnologías como Intel Protected Audio Video Path (PAVP), Intel Platform Trust Technology (PTT o fTPM), Intel BootGuard, Intel Software Guard Extention (SGX) y muchas otras.

Puede usar el mecanismo de depuración JTAG para interceptar datos en ME


Al explotar el error en el módulo bup, los investigadores lograron activar un mecanismo llamado desbloqueo rojo PCH, que permite el acceso completo a todos los dispositivos PCH para su uso a través de la cadena DFx, es decir, utilizando JTAG. Uno de estos dispositivos es el núcleo ME mismo. Esto hizo posible depurar el código que se ejecuta en ME, leer la memoria de todos los procesos y el núcleo, y administrar todos los dispositivos dentro de PCH. Los cálculos mostraron que en las computadoras modernas, hay aproximadamente 50 dispositivos internos en total, solo ME tiene acceso completo a ellos, y el procesador principal solo tiene un subconjunto muy limitado de ellos.

Este nivel de acceso también significa que cualquier atacante que explote esta vulnerabilidad, evitando la protección tradicional basada en software, puede llevar a cabo ataques incluso cuando la computadora está apagada.

JTAG se puede activar en la versión móvil de ME


Intel TXE es la versión móvil de ME. La vulnerabilidad INTEL-SA-00086 le permite activar JTAG para el subsistema del núcleo. Los investigadores de Positive Technologies han desarrollado el JTAG PoC para la plataforma Gigabyte Brix GP-BPCE-3350C. Esta utilidad se puede usar para activar JTAG para Intel TXE.

El subsistema se puede deshabilitar usando el modo no documentado


En un estudio de la arquitectura interna de la 11ª versión de Intel Management Engine (ME), Maxim Goryachy y Mark Ermolov pudieron detectar un mecanismo que desactiva esta tecnología después de inicializar el equipo e iniciar el procesador principal. Descubrieron que aunque es imposible deshabilitar completamente a ME en las computadoras modernas, hay un modo no documentado en el subsistema llamado High Assurance Platform (HAP). Los investigadores pudieron detectar un bit HAP especial, cuya instalación pone a Intel ME en modo de apagado en una etapa temprana de carga.

El nombre High Assurance Platform es un programa de plataforma de confianza asociado con la Agencia de Seguridad Nacional (NSA) de EE. UU. Una presentación con una descripción del programa está disponible en línea. Probablemente, este mecanismo se introdujo a pedido de los servicios del gobierno de EE. UU., Que buscan reducir la probabilidad de fuga de datos a través de canales laterales.

Las fallas de seguridad de ME comprometieron MacBook


En junio de este año, Apple lanzó actualizaciones que cubren la vulnerabilidad en ME bajo el código CVE-2018-4251. Esta vez, el error estaba contenido en el componente Intel ME Manufacturing Mode: este es un modo de operación de servicio diseñado para configurar, configurar y probar la plataforma final en la etapa de producción. Este modo le permite establecer parámetros críticos de la plataforma almacenados en la memoria de escritura única (FUSIBLES). Debe apagarse antes de que el equipo salga a la venta y enviarse al usuario.

Ni este modo ni sus riesgos potenciales se describen en la documentación pública de Intel. Un usuario común no puede apagarlo solo, ya que la utilidad para administrarlo desde el paquete Intel ME System Tools no está oficialmente disponible.

La vulnerabilidad permite a un atacante con derechos de administrador obtener acceso no autorizado a partes críticas del firmware, escribir allí una versión vulnerable de Intel ME y, a través de su funcionamiento, arreglarse en secreto en el dispositivo. En el futuro, podrá obtener un control completo sobre la computadora y realizar actividades de espionaje, sin la menor probabilidad de ser detectado.

Los conjuntos de chips Intel vulnerables se utilizan en todo el mundo, desde computadoras portátiles domésticas y de trabajo hasta servidores empresariales. Una actualización publicada anteriormente por Intel no excluía la posibilidad de explotar las vulnerabilidades CVE-2017-5705, CVE-2017-5706 y CVE-2017-5707, ya que si un atacante tiene acceso de escritura a la región ME, siempre puede grabar la versión vulnerable de ME y explotar la vulnerabilidad en ella

Intel parchea los mismos errores en ME dos veces


A principios de julio, Intel lanzó dos avisos de seguridad ( SA-00112 y SA-00118 ), que describían las correcciones en el firmware del Intel Management Engine. Ambos boletines de seguridad describen errores que permiten a un atacante ejecutar código arbitrario en el procesador PCH interno (Minuto IA).

Estos errores son similares a los que descubrieron los expertos en seguridad de Positive Technologies en noviembre de 2017 ( SA-00086 ). Sin embargo, la historia no terminó allí, y posteriormente Intel lanzó nuevas correcciones de vulnerabilidad en ME.

CVE-2018-3627, descrito en SA-00118, está marcado en el boletín como un error lógico (esto no es un desbordamiento del búfer), lo que conduce a la ejecución de código arbitrario. Para su funcionamiento, el atacante necesita acceso local, mientras que la vulnerabilidad mencionada en SA-00086 puede explotarse localmente solo en caso de errores en la configuración del sistema realizados por el OEM. Esta condición hace que la vulnerabilidad sea más peligrosa.

En el caso de CVE-2018-3628 (descrito en SA-00112), las cosas son aún peores. La vulnerabilidad en el proceso AMT del firmware del motor de gestión conduce a la ejecución remota de código, y el atacante no necesita tener una cuenta de administrador AMT, como cuando se usa CVE-2017-5712 de SA-00086.

Intel describe este error como "Desbordamiento de búfer en el controlador HTTP", lo que sugiere la posibilidad de ejecutar código de forma remota sin autorización. Este es el peor de los casos que temen todos los usuarios de la plataforma Intel.

Hay formas de abrir las claves de cifrado ME


En esta "aventura" Intel ME no terminó. Ya en el otoño, la compañía tuvo que corregir un error más en el subsistema, lo que condujo a la divulgación de claves de cifrado en Intel ME: fue descubierto por los investigadores de Positive Technologies Dmitry Sklyarov y Maxim Goryachiy.

Intel ME (Management Engine) utiliza MFS (supuestamente corto para ME File System) para almacenar datos. Los mecanismos de seguridad de MFS utilizan activamente claves criptográficas. Las claves de confidencialidad se utilizan para garantizar la confidencialidad de los datos almacenados en MFS, y las claves de integridad se utilizan para controlar la integridad. Los datos colocados en MFS, de acuerdo con el grado de significación, se dividen en dos categorías y están protegidos por diferentes conjuntos de claves. Las claves Intel se usan para los datos más confidenciales, y las claves que no son Intel se usan para todo lo demás. Por lo tanto, se utilizan cuatro claves: clave de integridad Intel, clave de integridad no Intel, clave de confidencialidad Intel y clave de confidencialidad no Intel.

La explotación de una vulnerabilidad descubierta anteriormente por Mark Ermolov y Maxim Goryachy le permite obtener las cuatro claves y comprometer completamente los mecanismos de seguridad de MFS. Intel ha publicado una actualización para cerrar esta vulnerabilidad. Se aumentó el valor de SVN (Número de versión segura): este paso consistía en actualizar todas las claves y devolver la seguridad MFS al nivel planificado. Obtener claves MFS para el firmware ME actualizado (con un nuevo valor SVN) debería ser imposible.

Sin embargo, ya en 2018, los investigadores de Positive Technologies descubrieron la vulnerabilidad CVE-2018-3655, descrita en Intel-SA-00125. La esencia del problema es que las claves que no son Intel dependen del valor de SVN y del secreto inmutable subyacente del subsistema. Y este secreto se puede obtener si usa la depuración JTAG, que se puede habilitar usando la vulnerabilidad anterior. Conocer el secreto básico del subsistema le permite calcular ambas claves que no son Intel, y todo esto ya está en la nueva versión de firmware.

Por lo tanto, un atacante puede calcular la clave de integridad no Intel y la clave de confidencialidad no Intel para el firmware con el valor SVN actualizado y, por lo tanto, comprometer los mecanismos de seguridad MFS que dependen de estas claves.

Que sigue


No hace mucho tiempo, publicamos en el blog un análisis detallado de la vulnerabilidad CVE-2018-4251 en el MacBook. Ahora Mark Ermolov y Maxim Goryachy en la conferencia HiTB 2018 hablarán sobre cómo un atacante puede explotarlo para realizar un ataque. También discutiremos los métodos de protección, por ejemplo, utilizando una utilidad especializada de nuestros expertos.

Source: https://habr.com/ru/post/es430132/


All Articles