¿Cómo se verifican los PCR y los TPM externos son vulnerables al ataque de hardware?

2

¿El TPM verifica las mediciones de inicio contra los PCR? ¿Se informa la PCR y el software de medición realiza la comprobación?

Dado que la validación de PCR permite el lanzamiento de algunos secretos en el TPM, creo que el TPM debe hacerlo. Entonces, ¿qué es lo que me impide espiar las mediciones informadas escritas al TPM en el bus LPC y luego falsificar esa comunicación más adelante?

¿Es este un vector de ataque realista?

    
pregunta Michael 21.06.2017 - 01:34
fuente

1 respuesta

1

Las mediciones se toman por software y luego se extienden a los PCR que posee el TPM. El TPM puede imponer restricciones sobre quién y cuándo puede extender y restablecer qué PCR (aunque esto está bastante establecido de antemano, según la tabla de la sección 3.1 en TPM 1.2 spec part 1 ). Esos PCR pueden ser leídos por casi cualquier usuario en la plataforma y vistos en el bus LPC.

El TPM no realiza ninguna validación en los PCR, las mediciones extendidas en los PCR y el orden en que se extienden depende del software que realiza las mediciones.

El TPM utiliza los PCR para una variedad de funciones de bloqueo (por ejemplo, asegurar datos a través de una operación de sellado o enlace). Cuando los PCR se usan de esta manera, el TPM usa su propio almacenamiento de PCR, en lugar de recibir los valores a través del bus LPC. Cuando se proporcionan los PCR para la certificación remota, los PCR van acompañados de una cotización del TPM, que es una firma de los PCR realizados con una clave que solo el TPM puede usar para la firma. Si los valores de PCR se manipulan de alguna manera, esta manipulación se puede descubrir fácilmente. Realmente no hay oportunidades para usar datos falsificados para obtener acceso a datos protegidos.

Si un atacante tiene acceso al bus LPC, podría ser posible una denegación de servicio falsificando una localidad para extender los datos a un PCR utilizado para asegurar los datos. En la mayoría de los casos, solo se pueden utilizar los valores de PCR esperados para recuperar datos asegurados por PCR. Al extender un PCR usado para esta función, el valor cambiaría del valor esperado.

    
respondido por el Lampshade 21.06.2017 - 16:19
fuente

Lea otras preguntas en las etiquetas