Para obtener la máxima seguridad de FileVault2, ¿por qué se recomienda la hibernación?

10

Muchas discusiones sobre la seguridad de FileVault 2 sugieren usar:

sudo pmset -a destroyfvkeyonstandby 1 hibernatemode 25

Algunos de esos debates afirman que las claves FileVault se almacenan en la RAM durante el uso normal despierto, mientras que otras dicen que están almacenadas en el firmware EFI.

  1. ¿Dónde se almacenan las claves mientras la máquina está despierta y funcionando en RAM o en firmware?

  2. ¿Qué hace precisamente destroyfvkeyonstandby? Por ejemplo, si elimino un archivo, puedo recuperarlo porque no está borrado. ¿ destroyfvkeyonstandbyRealiza una liberación de memoria (borrar) o un borrado (sobrescribiendo la memoria que se estaba usando para mantener presionada la tecla)?

  3. Si lo uso destroyfvkeyonstandby, ¿qué beneficio hay al entrar en modo de hibernación inmediatamente (aparte de ahorrar energía)? Si se ha borrado la clave, ¿qué peligro hay al dejar la RAM encendida?

Miguel
fuente

Respuestas:

3
  1. Durante el uso normal, las claves se almacenan en la RAM, lo que las hace vulnerables a un ataque DMA sobre Firewire o Thunderbolt (usando algo como Inception ). Este es un antiguo conjunto de ataques, y Apple en realidad deshabilita parte de la funcionalidad de esos dispositivos durante algunos modos de suspensión (por ejemplo, hibernatemode 25que elimina la energía de la RAM después de descargar su contenido en el disco; para mayor seguridad, también debe deshabilitar Fast User Cambio , ya que es otro vector de ataque).

  2. Eso es lo único que tiene sentido que haga Apple, ya que es bastante trivial. Se podrían obtener más detalles de este análisis de FileVault 2 , cortesía de algunos investigadores de seguridad de Cambridge.

  3. La RAM también se puede escribir en (ver Inicio ) para omitir la contraseña real; volcar en el disco y volver a cargar en Wake garantizará que el contenido sea a prueba de manipulaciones.

roguesys
fuente
Gracias por la respuesta y enlaces! Esos, y lecturas adicionales, sugieren que, además de un ataque de tipo de inicio en un sistema donde la información todavía está en la RAM, la frase de contraseña que desbloqueó la clave del archivo también puede estar disponible en la RAM. Por lo tanto, incluso si uno destruye la clave de FileVult a través de "destroyfvkeyonstandby 1", la frase de contraseña para desbloquear esa clave aún puede estar fácilmente disponible en la RAM si la RAM todavía está encendida. Al usar "hibernatemode 25" y, por lo tanto, cortar la alimentación a la RAM, todas las demás frases de contraseña en la RAM también se eliminarán.
Michael