El chip de chip abierto OpenTitan reemplaza las raíces de confianza propietarias de Intel y ARM



El 5 de noviembre de 2019, la organización sin fines de lucro lowRISC , con la participación de Google y otros patrocinadores, presentó el proyecto OpenTitan , que llama "el primer proyecto de código abierto para crear una arquitectura abierta de chips de alta calidad con la raíz de la confianza (RoT) a nivel de hardware".

OpenTitan en la arquitectura RISC-V es un chip de propósito especial para la instalación en servidores en centros de datos y en cualquier otro equipo donde sea necesario para garantizar la autenticidad de la descarga, proteger el firmware de los cambios y eliminar la posibilidad de rootkits: estas son placas base, tarjetas de red, enrutadores, dispositivos IoT , gadgets móviles, etc.

Por supuesto, tales módulos están en procesadores modernos. Por ejemplo, el módulo de hardware Intel Boot Guard es la raíz de la confianza en los procesadores Intel. Verifica la autenticidad del BIOS UEFI a través de la cadena de confianza antes de iniciar el sistema operativo. Pero la pregunta es, ¿cuánto podemos confiar en las raíces propietarias de la confianza, dado que no tenemos garantías de la ausencia de errores en el diseño, pero no hay forma de verificarlo? Consulte el artículo "Descarga de confianza de Schrödinger. Intel Boot Guard " con una descripción de" cómo a lo largo de los años un error clonado en la producción de varios proveedores permite a un atacante potencial usar esta tecnología para crear un rootkit oculto en un sistema indeleble (incluso programador) ".

La amenaza de comprometer el equipo en la cadena de suministro es sorprendentemente real: parece que cualquier ingeniero electrónico aficionado puede soldar un error en la placa base del servidor utilizando un equipo que no valga más de $ 200. Algunos expertos sospechan que "las organizaciones con un presupuesto de cientos de millones de dólares pueden hacer esto durante muchos años". Aunque no hay evidencia, es teóricamente posible.

"Si no puede confiar en el descargador de hardware, el juego ha terminado", dijo Gavin Ferris, miembro de la junta directiva de lowRISC. - No importa lo que haga el sistema operativo: si se vio comprometido por el momento en que se carga el sistema operativo, el resto es cuestión de tecnología. Ya has terminado.

Este problema debería resolverse con la primera plataforma de hardware abierta OpenTitan ( repositorio de GitHub , documentación , especificaciones de hardware ). Evitar soluciones patentadas cambiará la "industria de RoT torpe e imperfecta", dijo Google.

Google se embarcó en el desarrollo del Titan, descubriendo el sistema operativo Minix integrado en los chips Intel Management Engine (ME). Este complejo sistema operativo de manera impredecible e incontrolable expandió la superficie de ataque. Google intentó deshacerse de Intel Management Engine (ME) , pero falló.

¿Cuál es la raíz de la confianza?


Cada etapa del proceso de arranque del sistema verifica la autenticidad de la siguiente etapa, formando así una cadena de confianza .

Root of Trust (RoT) es una autenticación basada en hardware que garantiza que la fuente de la primera instrucción ejecutable en la cadena de confianza no se pueda cambiar. RoT es la protección básica contra rootkits. Este es un paso clave en el proceso de arranque, que está involucrado en un mayor inicio del sistema, desde el BIOS hasta el sistema operativo y las aplicaciones. Debe verificar la autenticidad de cada paso de descarga posterior. Para esto, en cada etapa se utiliza un conjunto de claves con una firma digital. Uno de los estándares de protección de claves basados ​​en hardware más populares es TPM (Trusted Platform Module).


Establecer la raíz de la confianza. Arriba hay una descarga de cinco etapas, que forma una cadena de confianza y comienza con un gestor de arranque ubicado en la memoria inmutable. En cada etapa, se usa una clave pública para autenticar el siguiente componente descargable. Ilustración de la arquitectura IoT de Perry Lee

RoT se puede lanzar de muchas maneras:

  • cargar la imagen y la clave raíz desde el firmware o la memoria inmutable;
  • almacenar la clave raíz en una memoria programable única usando bits de fusible;
  • cargar código de un área protegida de memoria en un almacenamiento protegido.

En diferentes procesadores, la raíz de la confianza se implementa de diferentes maneras. Intel y ARM
Admite las siguientes tecnologías:

  • BRAZO TrustZone . ARM está vendiendo un bloque de silicio patentado a los fabricantes de chips, que proporciona la raíz de la confianza y otros mecanismos de seguridad. Por lo tanto, el microprocesador se separa del núcleo inseguro; ejecuta Trusted OS, un sistema operativo seguro con una interfaz bien definida para interactuar con componentes inseguros. Los recursos protegidos se encuentran en un núcleo confiable y deben ser lo más livianos posible. La transición entre componentes de diferentes tipos se realiza mediante el cambio de contexto de hardware, lo que elimina la necesidad de un software de monitoreo seguro.
  • Intel Boot Guard es un mecanismo de hardware para autenticar el bloque de arranque inicial con herramientas criptográficas o mediante un proceso de medición. Para verificar el bloque inicial, el fabricante debe generar una clave de 2048 bits, que consta de dos partes: pública y privada. La clave pública se imprime en el tablero "detonando" los bits del fusible en la etapa de producción. Estos bits son únicos y no se pueden cambiar. La parte privada de la clave genera una firma digital para la posterior autenticación de la etapa de descarga.

La plataforma OpenTitan revela las partes clave de dicho sistema de firmware, como se muestra en el diagrama a continuación.



Plataforma OpenTitan


El desarrollo de la plataforma OpenTitan está a cargo de la organización sin fines de lucro lowRISC. El equipo de ingeniería tiene su sede en Cambridge (Reino Unido), y el patrocinador principal es Google. Los socios fundadores incluyen la Escuela Técnica Superior Suiza de Zúrich, G + D Mobile Security, Nuvoton Technology y Western Digital.

Google publicó el anuncio del proyecto en el blog corporativo de Google Open Source. La compañía dijo que OpenTitan se compromete a "proporcionar pautas de diseño e integración RoT de alta calidad para su uso en servidores de centros de datos, almacenamiento, periféricos y más".

La raíz de la confianza es el primer eslabón de la cadena de confianza en el nivel más bajo en un módulo informático confiable, en el que el sistema siempre confía plenamente.

RoT es fundamental para las aplicaciones, incluida la infraestructura de clave pública (PKI). Esta es la base del sistema de seguridad en el que se basa un sistema complejo, como una aplicación de IoT o un centro de datos. Por lo tanto, está claro por qué Google apoya este proyecto. Ahora tiene 19 centros de datos en los cinco continentes. Los centros de datos, el almacenamiento y las aplicaciones de misión crítica representan una vasta superficie de ataque, y para proteger esta infraestructura, Google inicialmente desarrolló su propia raíz de confianza en el chip Titan.

El chip Titan propietario para centros de datos de Google se introdujo por primera vez en marzo de 2017 en la conferencia Google Cloud Next. “Nuestras computadoras realizan una verificación criptográfica de cada paquete de software y luego deciden si le dan acceso a los recursos de la red. Titan se integra en este proceso y ofrece capas adicionales de protección ", dijeron los representantes de Google en esa presentación.


Chip titan en el servidor de google

La arquitectura Titan era propiedad de Google, pero ahora se está convirtiendo en un dominio público en un proyecto de código abierto.

La primera etapa del proyecto es la creación de un diseño lógico de RoT a nivel de microcircuito, que incluye el microprocesador de código abierto ibris lowRISC , procesadores criptográficos, un generador de números aleatorios de hardware, claves y jerarquías de memoria para almacenamiento no volátil y no volátil, mecanismos de seguridad, dispositivos periféricos de entrada / salida y procesos de arranque seguros.

Google dice que OpenTitan se basa en tres principios clave:

  • todos tienen la oportunidad de probar la plataforma y contribuir;
  • mayor flexibilidad debido a la apertura de un diseño lógicamente seguro que no está bloqueado por las prohibiciones de propiedad del proveedor;
  • calidad garantizada no solo por el diseño en sí, sino también por el firmware y la documentación de referencia.

“Los chips actuales con raíces de confianza son muy exclusivos. Afirman seguridad, pero en realidad lo toma con fe y no puede probarlo usted mismo ", dijo Dominic Rizzo, especialista principal en seguridad para el proyecto Google Titan. “Ahora, por primera vez, surge la oportunidad de proporcionar seguridad sin fe ciega a los desarrolladores de raíces de confianza de diseño patentado. Por lo tanto, la base no solo es sólida, sino que se puede verificar ”

Rizzo agregó que OpenTitan puede considerarse un "diseño radicalmente transparente, en comparación con el estado actual de las cosas".

Según los desarrolladores, OpenTitan no debe considerarse de ninguna manera como un producto terminado, porque el desarrollo aún no está completo. Abrieron deliberadamente las especificaciones y el diseño en medio del desarrollo para que todos pudieran probarlo, contribuir y mejorar el sistema antes de comenzar la producción.

Para comenzar a fabricar chips OpenTitan, debe solicitar y obtener la certificación. Aparentemente, no se requieren regalías.

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


All Articles