A rota da Whonix.
Escolher o seu sistema operativo anfitrião (o sistema operativo instalado no seu computador portátil).
Esta rota fará uso extensivo de máquinas virtuais, que exigirão um sistema operativo anfitrião para executar o software de virtualização. Tem 3 escolhas recomendadas nesta parte do guia:
- A sua distribuição Linux de eleição (excluindo o Qubes OS)
- Windows 10 (de preferência a edição Home devido à ausência do Bitlocker)
- MacOS (Catalina ou superior)
Além disso, é muito provável que o seu Mac esteja ou tenha estado associado a uma conta Apple (no momento da compra ou após o início de sessão) e, por conseguinte, os seus identificadores de hardware únicos podem levá-lo até si em caso de fuga de identificadores de hardware.
O Linux também não é necessariamente a melhor escolha para o anonimato, dependendo do seu modelo de ameaça. Isto deve-se ao facto de a utilização do Windows nos permitir utilizar facilmente a negação plausível (também conhecida por encriptação negável) ao nível do SO. Infelizmente, o Windows é também, ao mesmo tempo, um pesadelo em termos de privacidade, mas é a única opção (conveniente) para utilizar a negação plausível ao nível do SO. A telemetria e o bloqueio de telemetria do Windows também estão amplamente documentados, o que deve atenuar muitos problemas.
Então, o que é negação plausível? É a capacidade de cooperar com um adversário que solicita acesso ao seu dispositivo/dados sem revelar o seu verdadeiro segredo. Tudo isto utilizando a encriptação negável.
Um adversário legítimo e brando pode pedir a palavra-passe encriptada do seu computador portátil. Inicialmente, poderia recusar-se a fornecer qualquer palavra-passe (utilizando o seu "direito de permanecer em silêncio", "direito de não se incriminar"), mas alguns países estão a implementar leis que isentam estes direitos (porque os terroristas e "pensar nas crianças"). Nesse caso, o utilizador pode ter de revelar a palavra-passe ou enfrentar uma pena de prisão por desrespeito ao tribunal. É aqui que a negação plausível entra em jogo.
Poderá então revelar uma palavra-passe, mas essa palavra-passe só dará acesso a "dados plausíveis" (um sistema operativo de engodo). A equipa forense saberá que é possível que o utilizador tenha escondido dados, mas não poderá prová-lo
(se o fizer corretamente). O utilizador terá cooperado e os investigadores terão acesso a alguma coisa, mas não ao que o utilizador pretende realmente esconder. Uma vez que o ónus da prova deve recair sobre eles, não terão outra opção senão acreditar em si, a menos que tenham provas de que tem dados ocultos.
Esta funcionalidade pode ser utilizada ao nível do SO (um SO plausível e um SO oculto) ou ao nível dos ficheiros, onde terá um contentor de ficheiros encriptados (semelhante a um ficheiro zip) onde serão mostrados ficheiros diferentes consoante a palavra-passe de encriptação que utilizar.
Isto também significa que pode configurar a sua própria configuração avançada de "negação plausível" utilizando qualquer SO anfitrião, armazenando, por exemplo, máquinas virtuais num contentor de volume oculto Veracrypt (tenha cuidado com os vestígios no SO anfitrião que terão de ser limpos se o SO anfitrião for persistente, consulte a secção
Algumas medidas adicionais contra a investigação forense mais à frente). Existe um projeto para conseguir isto no Tails
(https://github.com/aforensics/HiddenVM [Archive.org]) que tornaria o seu SO anfitrião não persistente e usaria negação plausível no Tails.
No caso do Windows, a negação plausível também é a razão pela qual você deve idealmente ter o Windows 10 Home (e não o Pro). Isso ocorre porque o Windows 10 Pro oferece nativamente um sistema de criptografia de disco completo (Bitlocker), enquanto o Windows 10 Home não oferece nenhuma criptografia de disco completo. Mais tarde, utilizaremos um software de código aberto de terceiros para encriptação que permitirá a encriptação total do disco no Windows 10 Home. Isto dar-lhe-á uma boa desculpa (plausível) para utilizar este software. Já usar esse software no Windows 10 Pro seria suspeito.
Nota sobre o Linux: Então, e o Linux e a negação plausível? Sim, também é possível conseguir uma negação plausível com o Linux. Mas é complicado de configurar e, na minha opinião, requer um nível de competência suficientemente elevado para que provavelmente não precise deste guia para o ajudar a tentar.
Infelizmente, a encriptação não é mágica e há alguns riscos envolvidos:
Ameaças com a encriptação.
A chave inglesa de 5$.
Lembre-se que a encriptação, com ou sem negação plausível, não é uma bala de prata e será de pouca utilidade em caso de tortura. De facto, dependendo de quem é o seu adversário (o seu modelo de ameaça), pode ser sensato não usar o Veracrypt (anteriormente TrueCrypt) como mostra esta demonstração:
https://defuse.ca/truecrypt-plausible-deniability-useless-by-game-theory.htm [Archive.org]
A negação plausível só é eficaz contra adversários legais e brandos que não recorram a meios físicos.
Evite, se possível, a utilização de software com capacidade de negação plausível (como o Veracrypt) se o seu modelo de ameaça incluir adversários difíceis. Assim, os utilizadores do Windows devem, nesse caso, instalar o Windows Pro como SO anfitrião e utilizar o Bitlocker.
Ver https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis [Wikiless] [Archive.org]
Ataque da empregada malvada.
Os Evil Maid Attacks são realizados quando alguém mexe no seu portátil enquanto está ausente. Para instalar a clonagem do disco rígido, instala malware ou um registador de teclas. Se conseguirem clonar o disco rígido, podem comparar uma imagem do disco rígido no momento em que o tiraram enquanto estava ausente com o disco rígido quando o apreenderam. Se, entretanto, voltar a utilizar o computador portátil, os peritos forenses poderão provar a existência dos dados ocultos observando as variações entre as duas imagens no que deveria ser um espaço vazio/não utilizado. Isto pode levar a fortes provas da existência de dados ocultos. Se instalarem um key logger ou malware no seu computador portátil (software ou hardware), poderão simplesmente obter a palavra-passe para utilizar mais tarde quando o apreenderem. Estes ataques podem ser efectuados em sua casa, no seu hotel, num posto fronteiriço ou em qualquer lugar onde deixe os seus dispositivos sem vigilância.
Pode atenuar este ataque fazendo o seguinte (tal como recomendado anteriormente):
- Ter uma proteção básica contra adulteração (como explicado anteriormente) para impedir o acesso físico aos componentes internos do computador portátil sem o seu conhecimento. Isto evitará que clonem os seus discos e instalem um key logger físico sem o seu conhecimento.
- Desativar todas as portas USB (como explicado anteriormente) dentro de uma BIOS/UEFI protegida por palavra-passe. Mais uma vez, não poderão ligá-las (sem aceder fisicamente à placa-mãe para reiniciar a BIOS) para arrancar um dispositivo USB que possa clonar o seu disco rígido ou instalar um malware baseado em software que possa atuar como um registador de chaves.
- Configure senhas de BIOS/UEFI/Firmware para evitar qualquer inicialização não autorizada de um dispositivo não autorizado.
- Alguns sistemas operativos e software de encriptação têm proteção anti-EvilMaid que pode ser activada. Este é o caso do Windows/Veracrypt e do QubeOS.
Ataque de arranque a frio.
Os ataques de arranque a frio são mais complicados do que o ataque da Evil Maid, mas podem fazer parte de um ataque da Evil Maid, pois requerem que um adversário se apodere do computador portátil enquanto o utilizador está a utilizar ativamente o dispositivo ou pouco depois.
A ideia é bastante simples, como mostra este vídeo, um adversário poderia, teoricamente, arrancar rapidamente o seu dispositivo com uma chave USB especial que copiaria o conteúdo da RAM (a memória) do dispositivo depois de o desligar. Se as portas USB estiverem desactivadas ou se acharem que precisam de mais tempo, podem abri-lo e "arrefecer" a memória utilizando um spray ou outros produtos químicos (nitrogénio líquido, por exemplo), impedindo que a memória se deteriore. Poderiam então copiar o seu conteúdo para análise. Este "dump" de memória poderia conter a chave para desencriptar o dispositivo. Mais tarde, aplicaremos alguns princípios para os mitigar.
No caso da negação plausível, houve alguns estudos forenses sobre como provar tecnicamente a presença dos dados ocultos com um simples exame forense (sem um arranque a frio/ataque da Evil Maid), mas estes foram contestados por outros estudos e pelo responsável pelo Veracrypt, pelo que não me preocuparia muito com eles ainda.
As mesmas medidas utilizadas para mitigar os ataques da Evil Maid devem estar em vigor para os ataques de arranque a frio, com algumas medidas adicionais:
- Se o seu SO ou software de encriptação o permitir, deve considerar encriptar as chaves na RAM também (isto é possível com o Windows/Veracrypt e será explicado mais tarde)
- Deve limitar a utilização do modo de espera e, em vez disso, utilizar a opção Desligar ou Hibernar para evitar que as chaves de encriptação permaneçam na RAM quando o computador entra em modo de espera. Isto porque o modo de suspensão manterá a energia na memória para retomar a atividade mais rapidamente. Apenas a hibernação e o encerramento irão efetivamente limpar a chave da memória.
Veja também
https://www.whonix.org/wiki/Cold_Boot_Attack_Defense [Archive.org ] e
https://www.whonix.org/wiki/Protection_Against_Physical_Attacks [Archive.org]
Aqui estão também algumas ferramentas interessantes a considerar pelos utilizadores de Linux para se defenderem contra isto:
Acerca de Sleep, Hibernation e Shutdown.
Se quiser uma maior segurança, deve desligar completamente o seu portátil sempre que o deixar sem vigilância ou fechar a tampa. Isto deve limpar e/ou libertar a RAM e fornecer mitigações contra ataques de arranque a frio. No entanto, isto pode ser um pouco inconveniente, uma vez que terá de reiniciar completamente e introduzir uma tonelada de palavras-passe em várias aplicações. Reiniciar várias VMs e outros aplicativos. Por isso, em vez disso, também pode usar a hibernação (não suportada no Qubes OS). Uma vez que todo o disco está encriptado, a hibernação por si só não deverá representar um grande risco de segurança, mas desligará o portátil e limpará a memória, permitindo-lhe depois retomar convenientemente o seu trabalho.
O que nunca se deve fazer é utilizar a função de suspensão padrão, que mantém o computador ligado e a memória alimentada. Este é um vetor de ataque contra os ataques evil-maid e cold-boot discutidos anteriormente. Isto porque a memória ligada contém as chaves de encriptação do seu disco (encriptado ou não) e pode ser acedida por um adversário experiente.
Este guia irá fornecer orientações mais tarde sobre como ativar a hibernação em vários SOs hospedeiros (exceto o SO Qubes) se não quiser desligar sempre.
Fugas de dados locais (vestígios) e exame forense.
Tal como mencionado anteriormente, trata-se de fugas de dados e vestígios do seu sistema operativo e aplicações quando executa qualquer atividade no seu computador. Aplicam-se sobretudo a contentores de ficheiros encriptados (com ou sem negação plausível) do que à encriptação de todo o sistema operativo. Estas fugas são menos "importantes" se todo o seu sistema operativo estiver encriptado (se não for obrigado a revelar a palavra-passe).
Digamos, por exemplo, que tem uma chave USB encriptada pelo Veracrypt com negação plausível activada. Dependendo da palavra-passe que utilizar ao montar a chave USB, será aberta uma pasta de engodo ou a pasta sensível. Nessas pastas, terá documentos/dados de engodo dentro da pasta de engodo e documentos/dados sensíveis dentro da pasta sensível.
Em todos os casos, o utilizador (muito provavelmente) abrirá estas pastas com o Windows Explorer, o MacOS Finder ou qualquer outro utilitário e fará o que planeou fazer. Talvez edite um documento dentro da pasta sensível. Talvez pesquise um documento dentro da pasta. Talvez elimine um documento ou veja um vídeo sensível utilizando o VLC.
Bem, todas essas aplicações e o seu sistema operativo podem guardar registos e vestígios dessa utilização. Isto pode incluir o caminho completo da pasta/ficheiros/discos, a hora a que foram acedidos, as caches temporárias desses ficheiros, as listas "recentes" em cada aplicação, o sistema de indexação de ficheiros que pode indexar a unidade e até miniaturas que podem ser geradas
Eis alguns exemplos dessas fugas de informação:
Windows.
- ShellBags do Windows que são armazenados no Registo do Windows, armazenando silenciosamente vários históricos de volumes/ficheiros/pastas acedidos.
- Indexação do Windows que guarda vestígios dos ficheiros presentes na pasta do utilizador por defeito.
- Listas recentes (também conhecidas como Jump Lists) no Windows e em várias aplicações que guardam vestígios de documentos acedidos recentemente.
- Muitos mais vestígios em vários registos, consulte este interessante poster para obter mais informações: https://www.sans.org/security-resources/posters/windows-forensic-analysis/170/download [Archive.org]
MacOS.
- O Gatekeeper290 e o XProtect mantêm um registo do seu histórico de transferências numa base de dados local e dos atributos dos ficheiros.
- Indexação Spotlight
- Listas recentes em várias aplicações que guardam vestígios de documentos acedidos recentemente.
- Pastas temporárias que mantêm vários registos de utilização de aplicações e documentos.
- Registos do MacOS
- ...
Linux.
- Indexação do Tracker
- Histórico do Bash
- Registos USB
- Listas recentes em várias aplicações que guardam vestígios de documentos acedidos recentemente.
- Registos do Linux
- ...
A perícia pode utilizar todas estas fugas (ver
Fugas de dados locais e perícia) para provar a existência de dados ocultos e derrotar as suas tentativas de usar uma negação plausível e de descobrir as suas várias actividades sensíveis.
Por conseguinte, será importante aplicar várias medidas para impedir que a perícia o faça, prevenindo e limpando estas fugas/rastos e, mais importante ainda, utilizando a encriptação de todo o disco, a virtualização e a compartimentação.
A equipa forense não pode extrair fugas de dados locais de um sistema operativo ao qual não consegue aceder. E será possível limpar a maioria desses vestígios limpando a unidade ou apagando com segurança as máquinas virtuais (o que não é tão fácil como se pensa em unidades SSD).
No entanto, algumas técnicas de limpeza serão abordadas na parte "Cover your Tracks" deste guia, no final.
Fugas de dados online.
Quer esteja a utilizar uma encriptação simples ou uma encriptação de negação plausível. Mesmo que tenha coberto os seus rastos no próprio computador. Existe ainda o risco de fugas de dados online que podem revelar a presença de dados ocultos.
A telemetria é o seu inimigo. Tal como explicado anteriormente neste guia, a telemetria dos sistemas operativos, mas também das aplicações, pode enviar quantidades impressionantes de informações privadas online.
No caso do Windows, estes dados poderiam, por exemplo, ser utilizados para provar a existência de um SO / Volume oculto num computador e estariam prontamente disponíveis na Microsoft. Por conseguinte, é extremamente importante que desactive e bloqueie a telemetria com todos os meios à sua disposição. Independentemente do SO que estiver a utilizar.
Conclusão.
Nunca se deve realizar actividades sensíveis a partir de um sistema não encriptado. E mesmo que esteja encriptado, provavelmente nunca deve realizar actividades sensíveis a partir do próprio SO anfitrião. Em vez disso, deve utilizar uma VM para poder isolar e compartimentar eficazmente as suas actividades e evitar fugas de dados locais.
Se tiver pouco ou nenhum conhecimento de Linux ou se quiser usar a negação plausível de todo o SO, eu recomendaria ir para o Windows (ou voltar para a rota Tails) por conveniência. Este guia irá ajudá-lo a fortalecer o máximo possível para evitar fugas de informação. Este guia também o ajudará a fortalecer o MacOS e o Linux tanto quanto possível para evitar fugas de informação semelhantes.
Se não tem interesse na negação plausível do SO e quer aprender a usar o Linux, recomendo vivamente que opte pelo Linux ou pela rota Qubes se o seu hardware o permitir.
Em todos os casos, o SO anfitrião nunca deve ser utilizado para realizar actividades sensíveis diretamente. O SO anfitrião só será utilizado para estabelecer ligação a um ponto de acesso Wi-Fi público. Não será utilizado enquanto estiver a realizar actividades sensíveis e, idealmente, não deverá ser utilizado para nenhuma das suas actividades diárias.
Considere também ler
https://www.whonix.org/wiki/Full_Disk_Encryption#Encrypting_Whonix_VMs [Archive.org]