¿Tenemos un caballo de Troya dentro del ordenador?

Corriendo en el sótano de los procesadores Intel, un microcomputador tiene acceso a todos los datos contenidos en nuestro PC, incluso cuando está apagado. Se llama Intel Management Engine.

Su existencia no es nada nuevo, de hecho la primera vez que se incluyó en el chipset de los equipos basados en Intel fue en 2008, pero últimamente está volviendo a conseguir popularidad gracias a las redes sociales.

El Intel Management Engine (ME), es un sistema compuesto de un pequeño procesador, externo al procesador principal, que ejecuta un código almacenado en la memoria flash de la placa base, que está compartida por el firmware de la BIOS. Este código está codificado y puede ser leído solo desde el propio procesador secundario, que forma parte del chipset intel de la placa. Eso quiere decir que nadie, salvo los ingenieros de más confianza de Intel, y sujetos a acuerdos de confidencialidad, conocen.

Y tiene que ser así, porque un exploit que permita a un hacker entrar al Intel ME le permitiría un control absoluto de su ordenador y de todos los datos que contiene.

Imaginemos que nuestro computador es un edificio. Cuanto más alta es la planta en la que estemos, más restricción tendremos en el uso de los recursos de la máquina. En el nivel 2 estarían las aplicaciones. Para acceder a los recursos es necesario hacer uso de los drivers de los dispositivos, que estarían en el nivel 1. El núcleo del sistema operativo estaría en el nivel 0. Pero hay niveles inferiores. En el nivel -1 encontramos al hipervisor. Herramientas como VMWare son un nivel de virtualización que permiten compartir el HW con múltiples sistemas operativos que corren por encima. Hay quien menciona un nivel -2, entendido como el microcódigo del procesador que se ejecuta en cada instrucción ensamblador. Pues al Intel ME le sitúan un nivel por debajo, en el -3. Baste esta comparativa para hacerse una idea de lo que puede hacer este sistema.

Las funciones nominales que cubre el Intel ME son las de gestión del equipo: control del arranque, gestionar la velocidad del ventilador ante subidas de temperatura, o facilitar el uso de herramientas de administración a los técnicos IT.

Pero lo cierto es que las posibilidades de este sistema son infinitas. Tiene incluso acceso directo al adaptador de red, por lo que puede aceptar o establecer comunicación con un tercero saltándose todos los controles del firewall del sistema (que recordemos está en el nivel 0). Incluso puede hacerlo con el ordenador apagado.

Igor Skochinsky, un técnico informático que ha tratado de descifrar los entresijos del Intel ME, afirmaba:

El Intel ME tiene algunas funciones específicas, y aunque la mayoría de ellas podría verse como la mejor herramienta que podrían darle a un técnico de TI encargado de la gestión de las miles de estaciones de trabajo en un entorno corporativo, hay algunas utilidades que serían vías muy interesantes para un exploit. Estas funciones incluyen la tecnología de gestión activa, con la capacidad de administración remota, aprovisionamiento y reparación. La función de defensa del sistema es el firewall de nivel más bajo disponible en una máquina Intel. IDE Redirection y Serial-Over-LAN permiten a una computadora arrancar desde una unidad remota o reparar un sistema operativo infectado, y la protección de Identidad tiene una contraseña incrustada de una sola vez para la autenticación de dos factores. También hay funciones para una función ‘antirrobo’ que deshabilita un PC si no se registra en un servidor en un intervalo predeterminado o si una ‘píldora venenosa’ se entregó a través de la red. Esta función antirrobo puede anular un ordenador o solicitar al controlador del disco el borrado de las claves de encriptado de una unidad.

Recordemos que el Intel ME es un minicomputador que corre independientemente dentro de su PC. También tiene un sistema operativo propio, el Minix 3, creado por un viejo conocido de los ingenieros en informática (entre los que me incluyo): Andrew Tanenbaum. Él es un científico informático y profesor emérito en la Vrije Universiteit Amsterdam en los Países Bajos. A finales de los 80 escribió en sus ratos libres el sistema operativo Minix, que venía en un disquete incluido en su libro «Sistemas operativos».

En una carta enviada a Intel después de que se conociese que habían utilizado su sistema operativo para implementar el ME, Tanembaum decía:

Para que conste, me gustaría decir que cuando Intel me contactó, no dijeron en qué estaban trabajando. Las empresas rara vez hablan de productos futuros sin que medie un acuerdo de confidencialidad. Pensé que era un nuevo chip Ethernet o un chip gráfico o algo así. Si hubiera sospechado que podrían estar construyendo un motor espía, ciertamente no habría cooperado […]

¿Y entonces qué?

Es fácil ser preso de la paranoia y pensar que nuestra privacidad está expuesta, en el mejor de los casos. O en el peor, que un exploit en el Intel ME podría dejarnos a merced del hacker que se cuele dentro de nuestro ordenador, que podría solicitarnos dinero a cambio de permitirnos recuperar el control del mismo.

No tranquiliza que ya hayan sido detectados algunos de estos exploits, y que algún día uno nuevo podría caer en malas manos.

La ameneza, es real.

  • Es el problema del paradigma «security by obscurity». Tarde o temprano alguien va a mirar nuestro enclave seguro demasiado detenidamente, y va a encontrar grietas que nosotros pensamos que no existían, o que no tuvimos tiempo de buscar en la fase de desarrollo e implementación. Por eso sigo defendiendo el software libre: cuántos más ojos miren, más chances tendremos de que estos problemas salgan a la luz antes de que se vuelvan en nuestra contra.

  • Bueno los AMD no tienen los mismos ni tan graves exploits aunque tienen algunos serios (¿por tener que mantener la compatibilidad con los intel?))…
    Los Elbrus no tengo ni idea… Si alguien lo sabe
    Los Crusoe tampoco lo se

    Y sobre el resto ARM etc… Pues ..

  • Sí, es un caballo de Troya.
    ¿Hay esperanza? En algunos casos sí. Os escribo desde un Lenovo ThinkPad con IntelME de fábrica, pero deshabilitado. ¿Cómo lo he hecho? Reescribiendo la memoria BIOS y reemplazando Intel ME por Libreboot. Ahora mi ordenador ejecuta programación 100% libre cuyo código fuente está a mi disposición para revisarlo si así lo deseo. ¡Viva la libertad!

  • AMD tiene el equivalente al Management Engine que se llama Platform Secure Processor (PSP). Es un procesador ARM que se especula que utiliza la tecnología de ARM Trustzone. Desde reddit se ha pedido que AMD proporcione una forma de anular esta tecnología en el boot para que proyectos como coreboot puedan crear reemplazos de la bios funcional. No pueden liberar el código debido a que es tecnología licenciada, pero si se podría distribuir un binario que desactivase dicho procesador.

    Sin embargo, ni Intel ni AMD parecen estar por la labor de permitir la desactivación de este tipo de sistemas. Eso te hace pensar, dos fabricantes de microprocesadores x86 en el mundo y ambos tienen una tecnología que permitiría espiar absolutamente todo lo que haces… sospechoso.

  • Me encantan los libros de Tanenbaum :alaba:



\Incluya

Puedes seguir las respuestas a esta entrada por RSS 2.0 feed.