Para máxima segurança do FileVault2, por que a hibernação é recomendada?

10

Muitas discussões sobre segurança do FileVault 2 sugerem o uso de:

sudo pmset -a destroyfvkeyonstandby 1 hibernatemode 25

Algumas dessas discussões afirmam que as chaves do FileVault são armazenadas na RAM durante o uso normal, enquanto outras dizem que elas são armazenadas no firmware EFI.

  1. Onde estão armazenadas as chaves enquanto a máquina está acordada e em execução na RAM ou no firmware?

  2. O que, precisamente, faz destroyfvkeyonstandby? Por exemplo, se eu excluir um arquivo, posso recuperá-lo porque ele não é limpo. Realiza destroyfvkeyonstandbyuma liberação de memória (exclusão) ou uma limpeza (substituindo a memória que estava sendo usada para segurar a tecla)?

  3. Se eu usar destroyfvkeyonstandby, qual o benefício de entrar no modo de hibernação imediatamente (além de economizar energia)? Se a chave foi apagada, que perigo existe em deixar a RAM ligada?

Michael
fonte

Respostas:

3
  1. Durante o uso normal, as chaves são armazenadas na RAM, o que as torna vulneráveis ​​a ataques de DMA sobre Firewire ou Thunderbolt (usando algo como Inception ). Esse é um conjunto antigo de ataques, e a Apple realmente desabilita algumas das funcionalidades desses dispositivos durante alguns modos de suspensão (por exemplo, hibernatemode 25que remove a energia da RAM depois de descarregar seu conteúdo no disco; para maior segurança, você também deve desabilitar o Fast User Comutação , pois é outro vetor de ataque.)

  2. Essa é a única coisa que faz sentido para a Apple, pois é bastante trivial. Mais detalhes podem ser obtidos com essa análise do FileVault 2 , cortesia de alguns pesquisadores de segurança de Cambridge.

  3. A RAM também pode ser gravada em (consulte Iniciação ) para ignorar a senha real; despejar no disco e recarregar quando estiver em operação garantirá que o conteúdo seja inviolável.

roguesys
fonte
Obrigado pela resposta e links! Essas e outras leituras sugerem que, além de um ataque do tipo iniciação em um sistema em que as informações ainda estão na RAM, a frase secreta que desbloqueou a chave do grupo de arquivos também pode estar disponível na RAM. Portanto, mesmo que alguém destrua a chave de resultado do arquivo via "destroyfvkeyonstandby 1", a senha para desbloquear essa chave ainda poderá estar prontamente disponível na RAM, se a RAM ainda estiver ligada. Usando o "hibernatemode 25" e, assim, cortando a energia para a RAM, todas as outras senhas na RAM também serão removidas.
Michael