Muchas discusiones sobre la seguridad de FileVault 2 sugieren usar:
sudo pmset -a destroyfvkeyonstandby 1 hibernatemode 25
Algunas de esas discusiones afirman que las claves de FileVault se almacenan en la RAM durante el uso normal despierto, mientras que otras dicen que se almacenan en el firmware EFI.
¿Dónde se almacenan las claves mientras la máquina está despierta y funcionando, en la RAM o en el firmware?
¿Qué, precisamente, hace destroyfvkeyonstandby
? Por ejemplo, si elimino un archivo, puedo recuperarlo porque no se borra. ¿ destroyfvkeyonstandby
Realiza una liberación de memoria (eliminación) o un borrado (sobrescribe la memoria que se estaba utilizando para mantener la tecla)?
Si uso destroyfvkeyonstandby
, ¿cuál es el beneficio de pasar al modo de hibernación de inmediato (además de ahorrar energía)? Si la clave ha sido borrada, ¿qué peligro hay en dejar la RAM encendida?
Durante el uso normal, las claves se almacenan en la RAM, lo que las hace vulnerables a un ataque DMA a través de Firewire o Thunderbolt (usando algo como Inception ). Este es un conjunto antiguo de ataques, y Apple en realidad deshabilita algunas de las funciones de esos dispositivos durante algunos modos de suspensión (por ejemplo, hibernatemode 25
que 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 ). Switching , ya que es otro vector de ataque).
Eso es lo único que tiene sentido que haga Apple, ya que es bastante trivial. Se pueden extraer más detalles de este análisis de FileVault 2 , cortesía de algunos investigadores de seguridad de Cambridge.
También se puede escribir en la RAM (consulte Inicio ) para omitir la contraseña real; volcar en el disco y recargar al despertar garantizará que el contenido sea a prueba de manipulaciones.
Miguel
porg
destroyfvkeyonstandby=1
permitepmset
una configuración incorrecta de combinarla conhibernatemode
=3
(copia de RAM en almacenamiento persistente más mantener la RAM encendida) o aplicar25
(almacenamiento persistente, luego apagar RAM)?