Vulnerabilidad TPM-Fail que permite recuperar claves almacenadas en módulos TPM

Un equipo de investigadores del Instituto Politécnico de Worcester, la Universidad de Lübeck y la Universidad de California en San Diego Ha desarrollado Un método de ataque de canal lateral que le permite recuperar el valor de las claves privadas almacenadas en el TPM (Trusted Platform Module). El ataque recibió un nombre en clave. Fallo de TPM y afecta fTPM (Implementación de software basado en firmware que se ejecuta en un microprocesador separado dentro de la CPU) de Intel (CVE-2019-11090) y hardware TPM en chips STMicroelectronics ST33 (CVE-2019-16863).

Investigadores publicado kit de herramientas de ataque prototipo y demostró la capacidad de recuperar una clave privada de 256 bits utilizada para generar firmas digitales utilizando algoritmos de curva elíptica ECDSA y EC-Schnorr. Dependiendo de los derechos de acceso, el tiempo total de ataque en los sistemas Intel fTPM es de 4 a 20 minutos y requiere el análisis de entre 1 y 15 mil operaciones. Se necesitan unos 33 minutos para atacar sistemas con el chip ST80 y analizar unas 40 mil operaciones para generar una firma digital.

Los investigadores también demostraron la posibilidad de realizar un ataque remoto en redes de alta velocidad, lo que permitió recuperar una clave privada en una red local con un ancho de banda de 1 GB en condiciones de laboratorio en cinco horas, después de medir el tiempo de respuesta durante 45 mil sesiones de autenticación con un servidor VPN basado en el software strongSwan, que almacena sus claves en el TPM vulnerable.

El método de ataque se basa en analizar diferencias en el tiempo de ejecución de las operaciones en el proceso de generación de una firma digital. La estimación de la latencia de cálculo le permite determinar información sobre bits individuales durante la multiplicación escalar en operaciones de curva elíptica. Para ECDSA, determinar incluso unos pocos bits con información sobre el vector de inicialización (nonce) es suficiente para llevar a cabo un ataque para recuperar secuencialmente toda la clave privada. Para llevar a cabo un ataque con éxito, es necesario analizar el tiempo de generación de varios miles de firmas digitales creadas a partir de datos conocidos por el atacante.

Vulnerabilidad eliminado por STMicroelectronics en una nueva edición de chips en los que la implementación del algoritmo ECDSA se liberó de correlaciones con el tiempo de ejecución de las operaciones. Curiosamente, los chips STMicroelectronics afectados también se utilizan en equipos que cumplen con el nivel de seguridad CommonCriteria (CC) EAL 4+. Los investigadores también probaron chips TPM de Infineon y Nuvoton, pero no tuvieron fugas debido a cambios en el tiempo de cálculo.

En los procesadores Intel, el problema aparece a partir de la familia Haswell lanzada en 2013. Cabe señalar que el problema afecta a una amplia gama de portátiles, PC y servidores producidos por varios fabricantes, incluidos Dell, Lenovo y HP.

Intel ha incluido una solución en Noviembre actualización de firmware, en la que, además del problema en cuestión, eliminado otras 24 vulnerabilidades, de las cuales a nueve se les asigna un nivel de peligro alto y una es crítica. Sobre estos problemas solo se brinda información general, por ejemplo, se menciona que la vulnerabilidad crítica (CVE-2019-0169) se debe a la capacidad de causar un desbordamiento del montón del lado del Intel CSME (Converged Security and Management Engine). ) e Intel TXE (Trusted Execution Engine), que permite al atacante aumentar sus privilegios y obtener acceso a datos confidenciales.

También puedes notar divulgación resultados de auditoría de varios SDK para desarrollar aplicaciones que interactúan con código ejecutado en el lado de enclaves aislados. Para identificar funciones problemáticas que podrían usarse para realizar ataques, se estudiaron ocho SDK: Intel SGX-SDK, SGX-LKL, Microsoft OpenEnclave, El grafeno,
Óxido-EDP и Google Asylo para Intel SGX, Piedra clave para RISC-V y Sancus para Sancus TEE. Durante la auditoría fue revelado 35 vulnerabilidades, a partir de las cuales se han desarrollado varios escenarios de ataque que le permiten extraer claves AES de un enclave u organizar la ejecución de su código creando condiciones para dañar el contenido de la memoria.

Vulnerabilidad TPM-Fail que permite recuperar claves almacenadas en módulos TPM

Fuente: opennet.ru

Añadir un comentario