Impedindo o roubo de dados em servidores implantados remotamente expostos ao acesso físico [fechado]

13

Estou tentando pensar em uma maneira de proteger servidores Linux expostos ao acesso físico. Minha plataforma específica são servidores Linux de fator de forma pequeno em uma placa-mãe da marca PC Engines alix2d13 . O tamanho pequeno apresenta um risco adicional de remoção das instalações por um invasor.

Supondo que haja acesso físico ao servidor:

1) SENHA DE RAIZ: Você conecta um cabo do console ao servidor e solicita uma senha. Se você não souber a senha, poderá reiniciar a máquina no modo de usuário único e redefinir a senha. Voilà, você obtém acesso root.

Para proteger o que precede, insira uma senha no menu do GRUB; assim, quando o servidor for reiniciado para entrar no modo de usuário único, você deverá fornecer a senha do GRUB.

2) GRUB_PASSWORD. Se você desligar a máquina, retire o disco rígido e monte-o em outra estação de trabalho. Você poderá procurar o /bootdiretório que contém o arquivo grub.cfg no qual pode encontrar a senha do GRUB. Você pode alterar a senha do GRUB ou excluí-la.

Obviamente, quando falamos de grandes máquinas de produção, provavelmente não haverá acesso físico e, além disso, mesmo que alguém obtenha acesso físico ao servidor, ele não o desligará.

Quais são as soluções possíveis para impedir o roubo de dados em servidores fisicamente fáceis de roubar?

Do jeito que eu vejo, de uma forma ou de outra, o acesso aos dados contidos pode ser obtido.

giomanda
fonte
3
A menos que você queira estar por perto para inserir uma senha de descriptografia toda vez que ela inicializar, não há muito o que fazer. A descriptografia pode ser feita através da comunicação com um serviço de rede disponível apenas enquanto estiver na rede adequada. Isso não é muito seguro, mas suficiente para cobrir o caso em que o ladrão não tenta acessar os dados enquanto estiver no local. Mas um invasor direcionado pode até roubar a máquina sem desligá-la. Suponho que não seria necessário muita capacidade da bateria para mantê-la energizada por alguns minutos.
Kasperd #
12
Enterre-o em concreto. Isso certamente impedirá o roubo!
Michael Hampton
14
Não está realmente claro qual é o modelo de ameaça. Você quer um dispositivo invulnerável ao comprometimento físico? Isso vai ser muito complexo e caro. Computadores não são cofres. Se você quer um cofre, precisa de um cofre.
David Schwartz
3
@BlueCompute A questão também pode surgir em um ambiente profissional, portanto deve permanecer aqui.
Nils
3
@giomanda E é " modelo de threa t ". E parte do que isso significa é que você precisa entender completamente o que está protegendo e do que está protegendo. Você pode usar o SEAL Team Six para defender Fort Knox da Al Qaeda, mas não para defender sua nova TV de plasma dos ladrões do bairro.
David Schwartz

Respostas:

18

A regra em que sempre trabalhei é que, uma vez que um invasor tenha acesso físico ao seu host, ele poderá invadir o local - a menos que, como diz o kasperd, você use uma criptografia forte para todos os discos com uma senha de inicialização e esteja disposto a lá para entrar sempre que o host inicializar.

Andrew Schulman
fonte
14
E mesmo assim, somwone com acesso físico pode substituir o teclado usado para digitar a senha de inicialização e, assim, aprender a senha ...
Hagen von Eitzen
2
Solução @HagenvonEitzen: carregue seu próprio teclado e inviole a porta USB (ou PS / 2) física na caixa.
Jules
10
@JulesMazur Counterattack: Evil Maid re-piscando o firmware onboard.
um CVn
1
@ MichaelKjörling Defense: senha do firmware, caixa do servidor fisicamente bloqueada com robustez.
Jules
6
@ MichaelKjörling você nunca pode ser muito seguro com gangues errantes de empregadas mal seqüestro do teclado e / ou firmware
Jules
10

A solução que eu estou ciente é criptografar o disco e usar um TPM: Trusted Platform Module

Dessa maneira, agora há como descriptografar o disco rígido como:

Os aplicativos de criptografia de disco completo podem [...] usar essa tecnologia [TPM] para proteger as chaves usadas para criptografar os discos rígidos do computador e fornecer autenticação de integridade para um caminho de inicialização confiável (por exemplo, BIOS, setor de inicialização etc.). produtos de criptografia de disco completo de terceiros também oferecem suporte ao TPM. No entanto, o TrueCrypt decidiu não usá-lo. - Wikipedia

É claro que posso estar errado e o TPM pode ser facilmente quebrado ou talvez eu não conheça outras soluções.

ColOfAbRiX
fonte
Isto está certo. Com um TPM, uma unidade criptografada e assinatura UEFI, é impossível para alguém de fora ler a unidade ou modificar o gerenciador de inicialização para contornar a criptografia.
longneck
Seria interessante saber se existe uma caneta USB com um TPM para adicionar esse recurso a qualquer computador.
ColOfAbRiX
1
Não, porque o BIOS precisa gerenciar o tpm.
21715 Longneck #
3
Com o acesso físico, mesmo o TPM não fará muito ... você pode farejar facilmente os dados do chip TPM quando a máquina estiver inicializando ou ter acesso a toda a memória do computador sem que o computador perceba (e, assim, o TPM "abrirá" "a chave está bem).
2
O TPM cairá para um dispositivo PCI no barramento que não responde à enumeração PCI, mas sobrescreve o SO via DMA posteriormente.
joshudson
7

A criptografia completa do disco é uma boa idéia para laptops e pequenos servidores domésticos.

A criptografia completa do disco não requer um TPM. E mesmo um TPM é incapaz de protegê-lo contra um ataque sofisticado de empregada malvada . Portanto, para realmente proteger seu pequeno servidor Linux doméstico (ou um data center), você precisa de outras medidas físicas adequadas.

Para o seu caso de uso doméstico, pode ser suficiente instalar algum hardware DIY criativo que:

  1. permite que você reconheça qualquer intrusão física quando voltar e
  2. interrompe a fonte de alimentação do seu computador em qualquer tentativa de invasão física.

Para jornalistas e denunciantes que enfrentam grandes empresas ou poderosas agências governamentais como seus inimigos, isso provavelmente ainda não é seguro o suficiente. Essas agências de três cartas podem ter o equipamento forense necessário para recuperar texto não criptografado da RAM, mesmo minutos após o desligamento .

pefu
fonte
7

Aqui está uma solução simples: reconstrua o kernel sem o modo de usuário único!

Em outras palavras, edite o kernel do linux que você está usando, para que o modo S seja remapeado para o que for o seu modo padrão (3,4,5). Dessa forma, qualquer tentativa de inicialização no modo de usuário único inicia o sistema normalmente. Você provavelmente poderia fazer a mesma coisa nos scripts init. Dessa forma, não haveria um meio especial de entrar no sistema sem saber a senha.

Arkain
fonte
Se ainda conseguir acessar o prompt do grub, ainda posso alterar os parâmetros do kernel para init=/bin/bash. Isso o inicializará em um shell bash raiz, onde você poderá montar /.
Jens Timmerman
O Grub sempre pode ser configurado para não permitir acesso ao seu shell.
Arkain
Como já foi apontado em outras respostas a esta pergunta: Se um invasor habilidoso obtém acesso físico ao computador, seu kernel de reconstrução nada mais é do que uma teia de aranha antiga a caminho do túmulo que contém suas preciosas jóias de dados secretos. :-)
pefu 15/12/2015
3

Vá até lá e pergunte no site de eletrônicos. Tenho certeza de que existem projetos SOC incorporados que criptografam tudo e, depois que você o funde, é "impossível" fazer engenharia reversa.

Dito isto, eu estava em uma apresentação da DefCon onde a equipe mostrou exatamente como eles foram separados. Em muitos casos, os chips não foram fundidos ou o design do chip incluiu tolamente uma porta de depuração desconectada. Em outros, eles removeram as camadas do chip quimicamente e leram o chip com um microscópio eletrônico. Você nunca estará seguro de hackers realmente dedicados.

Zan Lynx
fonte
1

Gostaria de oferecer uma abordagem diferente, se você estiver disposto a considerar medidas preventivas destrutivas. Considere a possibilidade de soldar um capacitor de grande capacidade ao seu HDD e RAM, que na detecção de violação (você decide método / sensores) descarrega dados destrutivos.

Isso "impede" o acesso no sentido vazio de que ninguém pode acessar o sistema posteriormente. Por isso, responde a pergunta literalmente, enquanto possivelmente perde completamente a sua intenção.

Um capacitor é apenas um exemplo. Existem outras possibilidades. O problema é que a destruição climática do dispositivo (ou pelo menos os dados que ele contém) é aceitável.

A solução baseada em temporizador também é possível - a menos que o dispositivo possa executar ping em casa a cada poucos minutos / horas / ... ele se autodestrói. Muitas possibilidades diferentes ao longo deste tema.

Dani_l
fonte
Pelo menos um disco rígido rotacional pode ter seus pratos transplantados para outra unidade do mesmo modelo e eles terão uma boa leitura mesmo que o PCB tenha sido totalmente destruído. (Não tenho certeza sobre os SSDs, mas não seria muito difícil.) Isso é algo que as empresas de recuperação de dados fazem o tempo todo. Se você for fazer algo assim com algum grau razoável de certeza (embora ainda não seja absolutamente certo!), Coloque um pequeno explosivo dentro das entranhas da unidade. Funciona melhor com SSDs do que com HDD rotacionais por razões não relacionadas à força destrutiva pretendida.
um CVn
@ MichaelKjörling Thermite é o caminho a percorrer. Explosivos em um disco rígido requerem uma explosão relativamente grande para realmente destruir os dados. Você destruirá o prato superior se o explosivo estiver realmente na unidade, mas os pratos da unidade são bem pesados, eles não incinerarão apenas sem uma quantidade insegura de explosivo. Thermite queima através de metal bastante agradável.
DanielST
1

Uma solução em potencial seria usar a criptografia completa do disco, colocar a chave em um cartão USB / cartão de memória e colocar o computador em uma caixa de metal com uma única porta que possui uma chave de abertura, além de alguns sensores ambientais.

Para inicializar o dispositivo depois de colocar a unidade USB na porta (na parte externa do "cofre"), ele lê a chave FDE a partir daí e inicializa o sistema. Se o "cofre" for aberto, o interruptor de abertura reiniciará o sistema, apagando a chave da memória.

Se o ambiente permitir, você poderá adicionar mais sensores, como temperatura, aceleração, umidade etc. Se uma mudança repentina for detectada nos valores informados, o sistema será redefinido. Portanto, se um ladrão estiver apenas tentando pegar o sistema e colocá-lo no bolso, ele já será reiniciado antes mesmo de desconectá-lo de todos os seus cabos.


fonte