- Artículo sobre cómo eludir BitLocker, la función de cifrado de volumen completo de Microsoft Windows, en una laptop Lenovo usando un analizador lógico barato
- La clave de cifrado de volumen completo (FVEK) de BitLocker se cifra con la clave maestra del volumen (VMK) y se almacena en el disco. La VMK se guarda en un módulo de plataforma segura (TPM), lo que permite descifrar el disco solo al arrancar en la misma computadora.
- La vulnerabilidad radica en que, durante el proceso de arranque, la VMK se transmite sin cifrar entre el TPM y la CPU, lo que permite capturarla y usarla para descifrar el disco.
- El autor capturó el intercambio del TPM usando un analizador lógico DSLogic Plus que compró en 2021 por menos de 100 dólares.
- El bus SPI (Serial Peripheral Interface) se muestreó a una frecuencia mínima de 100 MHz para poder capturar las señales con comodidad.
- Se descubrió que la clave VMK se usaba en una etapa tardía del POST, aproximadamente 14 segundos después del inicio del proceso de arranque.
- La señal capturada se decodificó en tres capas: SPI, TIST (TPM Interface Specification) y TPM 2.0.
- El comando TPM que solicita devolver la clave es
TPM2_Unseal, y se usó para obtener la VMK.
- Después, se montó el disco y se instaló una puerta trasera sobrescribiendo el programa Sticky Keys con
cmd, lo que proporciona una shell SYSTEM al presionar la tecla Shift cinco veces durante el arranque.
- El autor señala que usar DSLogic para este trabajo fue complicado, ya que muchas capturas salieron mal y la frecuencia de muestreo apenas ofrecía un reloj consistente.
- El artículo concluye que usar un TPM discreto (físico) no mejora la seguridad del sistema como se esperaría, sino que crea una falsa sensación de seguridad. Para defenderse de este ataque, se recomienda usar un TPM por firmware (fTPM) o configurar un PIN o una contraseña en BitLocker.
1 comentarios
Comentarios de Hacker News
TPM2_StartAuthSessiony especificando cifrado para cada comando de la sesión