La tecnología Intel Trusted Execution ( Intel TXT , anteriormente conocida como LaGrande Technology ) es una tecnología de hardware informático cuyos objetivos principales son:
- Atestación de la autenticidad de una plataforma y su sistema operativo .
- Asegurar que un sistema operativo auténtico comience en un entorno confiable, que luego puede considerarse confiable.
- Proporcionar un sistema operativo confiable con capacidades de seguridad adicionales que no están disponibles para uno no probado.
Intel TXT utiliza un módulo de plataforma confiable (TPM) y técnicas criptográficas para proporcionar mediciones de software y componentes de plataforma, de modo que el software del sistema y las aplicaciones de administración local y remota puedan usar esas mediciones para tomar decisiones de confianza. Complementa Intel Management Engine . Esta tecnología se basa en una iniciativa de la industria del Trusted Computing Group (TCG) para promover una informática más segura. Defiende contra ataques basados en software destinados a robar información confidencial corrompiendo el sistema o el código del BIOS , o modificando la configuración de la plataforma.
Detalles
El Trusted Platform Module (TPM), según lo especificado por el TCG, proporciona muchas funciones de seguridad, incluidos registros especiales (denominados registros de configuración de plataforma , PCR) que contienen varias mediciones en una ubicación protegida de manera que se evita la suplantación de identidad. Las mediciones consisten en un hash criptográfico que utiliza un algoritmo de hash seguro (SHA); la especificación TPM v1.0 utiliza el algoritmo hash SHA-1 . Las versiones más recientes de TPM (v2.0 +) requieren SHA-2 . [1] [2]
Una característica deseada de un algoritmo hash criptográfico es que (para todos los propósitos prácticos) el resultado hash (denominado resumen hash o hash) de dos módulos cualesquiera producirá el mismo valor hash solo si los módulos son idénticos.
Mediciones
Las medidas pueden ser de código, estructuras de datos, configuración, información o cualquier cosa que se pueda cargar en la memoria. TCG requiere que el código no se ejecute hasta después de que se haya medido. Para asegurar una secuencia particular de mediciones, las mediciones de hash en una secuencia no se escriben en diferentes PCR, sino que una PCR se "extiende" con una medición. Esto significa que el TPM toma el valor actual del PCR y la medición que se va a extender, los combina y reemplaza el contenido del PCR con ese resultado hash. El efecto es que la única forma de llegar a una medida particular en una PCR es extender exactamente las mismas medidas en exactamente el mismo orden. Por lo tanto, si se ha modificado algún módulo que se está midiendo, la medición de PCR resultante será diferente y, por lo tanto, es fácil detectar si algún código, configuración, datos, etc.que se ha medido se ha alterado o corrompido. El mecanismo de extensión de PCR es crucial para establecer una Cadena de confianza en capas de software (ver más abajo).
Cadena de confianza
La tecnología admite tanto una cadena de confianza estática como una cadena de confianza dinámica. La cadena de confianza estática comienza cuando la plataforma se enciende (o se restablece), lo que restablece todos los PCR a su valor predeterminado. Para las plataformas de servidor, la primera medición la realiza el hardware (es decir, el procesador) para medir un módulo firmado digitalmente (denominado Módulo de código autenticado o ACM) proporcionado por el fabricante del chipset . El procesador valida la firma y la integridad del módulo firmado antes de ejecutarlo. Luego, el ACM mide el primer módulo de código de BIOS, que puede realizar mediciones adicionales.
Las mediciones de los módulos de código ACM y BIOS se extienden a PCR0, que se dice que contiene la raíz del núcleo estático de la medición de confianza (CRTM), así como la medición de la BIOS Trusted Computing Base (TCB). El BIOS mide componentes adicionales en PCR de la siguiente manera:
- PCR0: CRTM , código de BIOS y extensiones de plataforma de host [a]
- PCR1 : configuración de la plataforma de host
- PCR2 - Código ROM de opción
- PCR3 : configuración y datos de la ROM opcional
- PCR4 - Código IPL (cargador de programa inicial) (generalmente el registro de arranque maestro - MBR)
- PCR5 : configuración y datos del código IPL (para uso del código IPL)
- PCR6 - Transición de estado y eventos de activación
- PCR7 - Control del fabricante de la plataforma de host
La cadena dinámica de confianza comienza cuando el sistema operativo invoca una instrucción de seguridad especial, que restablece los PCR dinámicos (PCR17–22) a su valor predeterminado e inicia el lanzamiento medido. La primera medición dinámica la realiza el hardware (es decir, el procesador) para medir otro módulo firmado digitalmente (denominado SINIT ACM) que también es proporcionado por el fabricante del chipset y cuya firma e integridad son verificadas por el procesador. Esto se conoce como la medición de raíz dinámica de confianza (DRTM).
A continuación, SINIT ACM mide el primer módulo de código del sistema operativo (denominado entorno de lanzamiento medido, MLE). Antes de que se permita la ejecución del MLE, SINIT ACM verifica que la plataforma cumpla con los requisitos de la Política de control de lanzamiento (LCP) establecida por el propietario de la plataforma. LCP consta de tres partes:
- Verificar que la versión SINIT sea igual o más reciente que el valor especificado
- Verificar que la configuración de la plataforma (PCONF) es válida comparando PCR0–7 con valores conocidos (el propietario de la plataforma decide qué PCR incluir)
- Verificar que el MLE es válido comparando su medición con una lista de mediciones en buen estado.
La integridad del LCP y sus listas de mediciones correctas conocidas se protegen almacenando una medición hash de la política en el TPM en una ubicación protegida no volátil que solo puede modificar el propietario de la plataforma.
Ejecutar como un sistema operativo confiable
Una vez que se satisface el LCP, SINIT ACM permite que el MLE se ejecute como un sistema operativo confiable al permitir el acceso a registros de seguridad especiales y habilitar el acceso de nivel TPM Locality 2. El MLE ahora puede realizar mediciones adicionales a las PCR dinámicas. Los PCR dinámicos contienen la medición de:
- PCR17 - DRTM y política de control de lanzamiento
- PCR18 : código de inicio de sistema operativo confiable (MLE)
- PCR19 : sistema operativo de confianza (por ejemplo, configuración del sistema operativo)
- PCR20 : sistema operativo de confianza (por ejemplo, kernel del sistema operativo y otro código)
- PCR21 : según lo definido por Trusted OS
- PCR22 : según lo definido por Trusted OS
La tecnología también proporciona una forma más segura para que el sistema operativo inicialice la plataforma. A diferencia de la inicialización normal del procesador [que implicaba que el procesador de correa de arranque (BSP) enviaba una interrupción entre procesadores de inicio (SIPI) a cada procesador de aplicaciones, iniciando así cada procesador en "modo real" y luego pasando a " modo virtual "y finalmente al" modo protegido "], el sistema operativo evita esa vulnerabilidad realizando un lanzamiento seguro (también conocido como lanzamiento medido) que pone a los procesadores de aplicaciones en un estado especial de suspensión desde el cual se inician directamente en modo protegido con la paginación activada. , y no se les permite salir de este estado. [3]
Solicitud
Los valores de PCR están disponibles tanto de forma local como remota. Además, el TPM tiene la capacidad de firmar digitalmente los valores de PCR (es decir, una cotización de PCR) para que cualquier entidad pueda verificar que las mediciones provienen de un TPM y están protegidas por él, lo que permite que la atestación remota detecte manipulación, corrupción, y software malintencionado. Además, esos valores se pueden usar para identificar el entorno de ejecución (la versión particular del BIOS, el nivel del sistema operativo, la configuración, etc.) y compararlos con sus propias listas de valores conocidos para categorizar aún más la plataforma. Esta capacidad de evaluar y asignar niveles de confianza a las plataformas se conoce como Trusted Compute Pools.
Algunos ejemplos de cómo se utilizan las agrupaciones informáticas de confianza:
- Aislamiento: la capacidad de controlar si una plataforma se conecta a la red de producción o se pone en cuarentena en función de su nivel de confianza o si no pasa su política de control de lanzamiento.
- Política basada en la confianza: como restringir las aplicaciones críticas para que solo se ejecuten en plataformas que cumplan con un nivel de confianza específico.
- Cumplimiento y auditoría: demostrar que los datos críticos, personales o sensibles solo se han procesado en plataformas que cumplen con los requisitos de confianza.
Numerosas plataformas de servidores incluyen Intel TXT, y la funcionalidad de TXT, la aprovechan los proveedores de software, incluyendo HyTrust , PrivateCore , Citrix y VMware . Los proyectos de código abierto también utilizan la funcionalidad TXT; por ejemplo, tboot proporciona un sistema de integridad basado en TXT para el kernel de Linux y el hipervisor Xen . [4] [5]
Las PC con Windows 10 con enlace PCR7 tienen la capacidad de habilitar o deshabilitar el cifrado completo del dispositivo . [6]
Ver también
Notas
- ^ El procesador mide el CRTM y el ACM mide el código inicial del BIOS (todas las demás mediciones realizadas por el BIOS u otro código de firmware), pero solo después de que se haya medido ese código.
Referencias
- ^ "Usos de SHA-1 en TPM v1.2" . Trusted Computing Group . Consultado el 14 de marzo de 2014 .
- ^ "Preguntas frecuentes sobre la especificación de la biblioteca TPM 2.0" . Trusted Computing Group . Consultado el 14 de marzo de 2014 .
- ^ "Capítulo 2.2: Lanzamiento de MLE". Guía de desarrollo de software de Intel Trusted Execution Technology (Intel® TXT) (PDF) . Intel.
- ^ "tboot (arranque confiable)" . sourceforge.net . 6 de octubre de 2014 . Consultado el 16 de noviembre de 2014 .
- ^ Joseph Cihula (28 de febrero de 2011). "Trusted Boot: Verificación del lanzamiento de Xen" (PDF) . xenproject.org . Consultado el 16 de noviembre de 2014 .
- ^ "Windows 8.1 incluye un cifrado de disco automático y sin interrupciones, si su PC lo admite" . Ars Technica . Consultado el 18 de octubre de 2013 .
enlaces externos
- "Trusted Execution", Tecnología , Intel.
- "Trusted Execution", Tecnología (PDF) (descripción general), Intel.
- "Trusted Execution", Tecnología (PDF) (descripción general de la arquitectura), Intel.
- Guía de desarrollo de software de tecnología de ejecución de confianza de Intel (PDF) , Intel.
- "Virtualización", Tecnología , Intel.
- Descripción general de Intel TXT , parte de la documentación del kernel de Linux , 1 de diciembre de 2014
- Gestión de la integridad con Intel TXT , LWN.net , 1 de abril de 2009, por Jake Edge
- Atacando la tecnología Intel Trusted Execution , Black Hat Briefings , febrero de 2009, por Rafal Wojtczuk y Joanna Rutkowska
- Trusted Computing Technologies, Intel Trusted Execution Technology , Sandia National Laboratories, enero de 2011, por Jeremy Daniel Wendt y Max Joseph Guise