tpm sellado y arranque seguro

1

He trabajado con TPM por un tiempo, y estoy interesado en algunas de sus características. Especialmente el sellado y el uso de los PCR de TPM en el proceso de arranque seguro.

Mi pregunta es: ¿Qué impide que un atacante desactive el TPM hasta después del inicio? Luego extienda los PCR con lo que quiera, e incluso registre la entrada a la función de extensión de PRC en la cadena de arranque auténtica. Entonces, ¿usa esto como entrada para obtener el mismo resumen de SHA1 en los PCR?

Otra pregunta es si un atacante puede intentar usar el TPM en otro sistema que también enviará entradas falsas a los PCR en el momento del arranque.

    
pregunta amir dachbash 02.02.2016 - 20:57
fuente

1 respuesta

2

Algunas preguntas específicas aquí, las desglosaré

  •   

    ¿Qué impide que un atacante desactive el TPM hasta después del inicio?

Nada si el atacante controla tanto el FW (UEFI, BIOS, etc.) como el código de inicio. Digo el código de inicio porque en algún punto cerca del final del inicio, el TPM debería inicializarse y ponerse en el nivel de ejecución correcto para que el sistema operativo no detecte nada fuera de lugar. No puedes simplemente desactivarlo, ya que las aplicaciones de usuario / sistema operativo esperan que esté en un estado determinado y eso haría estallar tu cobertura, si eres el hacker > :)

Tienes que confiar en tu UEFI / BIOS. ¿Accediste accidentalmente algún hacker sh * t a tu placa base? Esa es la única manera en que esto funcionaría. No hagas eso.

  •   

    Luego extiende los PCR con lo que quiera

Debido a cómo funcionan los PCR, esto es "imposible". No puede actualizar los PCR a valores arbitrarios, tiene que agrupar las cosas exactamente en el mismo orden cada vez - > imposible de romper.

Pero ya sabes esto, sin embargo, tú mismo mencionaste la operación "extender". Los PCR no están "escritos", están "extendidos". Para obtener buena información al respecto, consulte aquí en enlace . Una cita de esa presentación:

Digging a Little Deeper: PCR Extend
....
Computationally infeasible to forge (must break SHA-1)
    Given PCR state N and desired state M, adversary would need to find
    X such that hash(X,N)=M; violates one-way assumption
  •   

    e incluso registrando la entrada a la función de extensión de PRC en la cadena de arranque auténtica

Eso es bastante inteligente, pero ¿cómo se haría esto? ¿Sondas físicas en el autobús? ¡Totalmente posible! Pero ahora hemos ido más allá de la especificación TCG TPM, que específicamente no protege contra la manipulación física, AFAIK. Proporciona evidencia de manipulación física pero no protege contra alguien que rastrea los pines.

  

¿un atacante puede intentar usar el TPM en otro sistema que también enviará entradas falsas a los PCR en el momento del arranque?

¿Puedes explicar cómo funcionaría esto? Pero no, no podría usar otro TPM de forma remota sin el software para exponerlo a un servicio. Se puede hacer en el sistema operativo, pero si puede falsificar los PCR en la máquina remota, puede forjarlos aquí.

Una vez más, no puedes poner "entradas falsas" en los PCR, no funciona así.

    
respondido por el Wilbur Whateley 23.02.2016 - 02:52
fuente

Lea otras preguntas en las etiquetas