Segurança no mundo Apple: criptografia de volume (FileVault 2)

Ícone do FileVault

Ícone do FileVaultO FileVault é um recurso de criptografia introduzido no OS X a partir da versão 10.3 (Panther), no final de 2003. Originalmente, ele tinha como funcionalidade criptografar a pasta do usuário (Home) protegendo todos os dados que ali estivessem armazenados. De forma automática e transparente, durante a etapa de login o sistema montava a imagem de disco criptografada e disponibilizava acesso aos arquivos, descriptografando apenas os que estavam em uso pela pessoa.

Publicidade

Embora fosse um recurso interessante, o FileVault não tinha a capacidade de proteger os arquivos do sistema, o que acabava comprometendo toda a segurança caso o atacante viesse a ter acesso físico ao computador em questão. Mesmo com a proteção dos arquivos do usuário, um atacante podia facilmente montar o disco do computador em outro dispositivo e a partir daí comprometer a inicialização do sistema instalando programas maliciosos que seriam carregados na próxima inicialização válida do sistema. Outro problema aparente está relacionado à possibilidade de ataques de força bruta e dicionários em uma imagem de disco criptografada, o que pode levar à descoberta da senha em segundos ou anos — dependendo do tamanho e tipos de caracteres escolhidos para compor a senha do usuário.

Em 2011, com o lançamento do OS X Lion, a Apple lançou uma nova versão do recurso FileVault capaz de criptografar o volume onde o sistema operacional está instalado. O FileVault 2 mantém seguros todos os arquivos do Mac, utilizando criptografia XTS AES-128 (256-bit keys) e altamente recomendável para pessoas ou corporações que precisam manter seguras informações sensíveis, incluindo computadores portáteis que são fáceis de serem perdidos ou roubados.

No mercado existem vários programas gratuitos e pagos similares ao FileVault 2; muitas das vezes encontramos termos como “full disk encryption”, o que é errado, pois um disco pode conter diversos volumes (HFS+, NTFS, FAT, EXT3) e cada um é criptografado independentemente. Diante desses programas, utilizar o FileVault 2 é a melhor opção por ser uma solução nativa e totalmente integrada ao sistema.

Publicidade

O FileVault 2 criptografa toda a área do setor de dados e metadados do volume onde o OS X esteja instalado. Como o volume que contém os arquivos de boot e sistema é criptografado, o FileVault 2 utiliza o volume Recovery HD para iniciar uma interface gráfica de autenticação onde apresenta todos os usuários autorizados a descriptografar o volume principal. Estes são definidos durante a etapa de habilitação do FileVault 2 ou a qualquer momento através do painel Segurança e Privacidade, localizado nas Preferências do Sistema.

Durante a habilitação do recurso é gerada uma chave de recuperação, caso os usuários autorizados percam as suas senhas. Fica sob critério do usuário administrador armazená-la ou não junto à Apple. A recuperação dessa informação é feita através de uma ligação telefônica para o atendimento AppleCare; após confirmação dos dados de verificação que são cadastrados nessa etapa, a senha será fornecida pelo atendente. Entretanto, saiba do risco que você pode correr ao armazenar a coisa dessa forma, pois ataques de engenharia social são comuns neste cenário.

Ainda sobre o recurso de habilitação do FileVault 2, recomendo que ele não seja habilitado após a instalação e a configuração inicial do sistema pois a Apple utiliza uma implementação modificada do Yarrow PRNG, um sistema de geração de pseudo números aleatórios /dev/random; esses números são alimentados de acordo com a utilização do sistema, então caso eles não estejam bastantes semeados um atacante pode adivinhar o conteúdo e recriar os estados PRNG prevendo a sua saída — portanto, determinando a senha de recuperação. Faça o uso do sistema, reinicie-o algumas vezes e em seguida habilite o FileVault 2.

Publicidade

Outro recurso utilizado pelo FileVault 2 é o AES-XTS, o qual criptografa cada bloco com tamanhos aleatórios múltiplos de 128 bits. Isto evita com que atacantes encontrem um padrão (marca d’água) em blocos menores de tamanho único, o que evidenciaria a existência de determinados dados.

Diagrama do FileVault

No ano passado a empresa Passware criou a ferramenta Passware Kit Forensic, “capaz” de descriptografar um volume com o FileVault 2 habilitado, entretanto ela só funciona em condições especiais. O sistema precisa estar iniciado e com um usuário logado, pois a chave utilizada para descriptografar os arquivos que estão em disco fica disponível na memória do sistema e pode ser acessada através de um ataque DMA via portas FireWire ou Thunderbolt. Para evitar este tipo de acesso vulnerável, basta habilitar a senha da firmware — dica dada em outro artigo da série — e/ou executar o comando abaixo.

Publicidade
sudo pmset -a destroyfvkeyonstandby 1 hibernatemode 25

Isto removerá a chave de criptografia da RAM quando o sistema entrar em modo hibernado, forçando-o a escrever imediatamente as informações da RAM em disco.

Além da criptografia do disco, o OS X também possui a capacidade de criptografar discos removíveis (pendrives, HDDs externos, cartões de memória…). A criptografia ocorre no volume semelhante ao recurso FileVault 2, porém não necessita do volume Recovery HD pois as informações de chave ficam armazenadas no próprio volume. Para criar um disco externo criptografado, utilize o Finder — clicando com o botão secundário (Ctrl + clique) sobre o volume e escolhendo a opção Criptografar (Encrypt) ou através do Utilitário de Disco (Disk Utility).

Posts relacionados