Como proteger meu laptop para que o acesso físico não seja possível?

73

Eu errei meu sistema mais cedo, fui recebido com uma tela preta ao inicializar no Ubuntu. Quando iniciei meu laptop, selecionei a opção de recuperação no menu grub e escolhi o fallback no terminal raiz . Vi que consegui usar o comando add user, com ele, provavelmente poderia usar para criar um usuário privilegiado na minha máquina.

Isso não é um problema de segurança?

Alguém poderia ter roubado meu laptop e, na inicialização, escolheu a recuperação e adicionou outro usuário. Incluindo meus dados.

Pense bem, mesmo que você remova essa entrada, é possível inicializar a partir de um CD ao vivo, começar a chrootfuncionar e adicionar outro usuário, com os privilégios certos que permitem ver todos os meus dados.

Se eu configurar o BIOS para inicializar apenas no meu HD, sem USB, CD / DVD, inicialização de rede e definir uma senha do BIOS, isso ainda não importará, porque você ainda terá essa entrada de inicialização de recuperação de grub.

Estou bastante certo de que alguém da China, Rússia, não pode hackear meu Ubuntu Trusty Tahr, da rede, porque é seguro assim. Mas, se alguém tem acesso físico à minha - sua - máquina, é por isso que estou fazendo essa pergunta. Como posso proteger minha máquina para que não seja possível invadir o acesso físico?


Relatório de erro:

blade19899
fonte
35
Criptografia de disco completa e glitternailpolish para seus parafusos. Quem não faz isso hoje em dia?
Mondjunge # 21/15
2
@ByteCommander, você pode adicionar usuários root. Apenas adicione outro usuário com o uid 0 em / etc / password. Acabei de adicionar fred fred:x:0:0:fred,,,:/home/fred:/bin/bashe agora, se eu fizer o login como fred e executar whoami, receboroot
Josef
3
@ByteCommander eles deveriam ser. As ferramentas para gerenciar contas como adduseretc. não permitem que você faça isso normalmente, mas apenas a edição /etc/passwdfunciona. Ser um hacker significa ignorar o que você deve fazer;)
Josef
3
@ blade19899 Seu novo bug certamente será recusado. Compare este existente: bugs.launchpad.net/ubuntu/+bug/283662
Byte Commander
4
@ blade19899 Meu argumento mais amplo é que você precisa pensar em termos de riscos e trade-offs, não absolutos. Não tenho idéia de quem você é ou onde mora, mas um assalto a casa que leva alguém a usar seus dados de maneira eficaz (em vez de apenas tentar descarregar o hardware) o peitoril parece um pouco distante e possivelmente menos preocupante do que o tempo, dinheiro ou até perda de dados que possam resultar da falta de opções de recuperação eficazes. É por isso que ter um terminal raiz substituto é uma coisa boa. Mas, obviamente, isso não quer dizer que você não deva procurar na criptografia de disco completo.
relaxada

Respostas:

86

Meu palpite é que apenas a criptografia de disco completo usando um algoritmo forte e, o mais importante, uma boa senha é a única coisa que pode proteger seus dados armazenados localmente. Isso provavelmente oferece 99,99% de segurança. Por favor, consulte um dos muitos guias sobre como fazer isso.


Além disso, NÃO é possível proteger sua máquina de um hacker experiente com acesso físico.

  • Senhas de usuário / conta:
    é fácil criar um novo usuário administrador se você inicializar no modo de recuperação, como você mesmo descreveu, porque você obtém um shell raiz sem precisar solicitar senhas dessa maneira.
    Isso pode parecer um problema de segurança acidental, mas destina-se a (quem pensaria isso?) Casos de recuperação, nos quais você, por exemplo, perdeu sua senha de administrador ou alterou o sudocomando ou outras coisas vitais.

  • senha root: o
    Ubuntu não definiu nenhuma senha de usuário root por padrão. No entanto, você pode definir um e será solicitado se você inicializar no modo de recuperação. Isso parece bastante seguro, mas ainda não é uma solução segura. Você ainda pode adicionar o parâmetro do kernel single init=/bin/bashatravés do GRUB antes de inicializar o Ubuntu que o inicia no modo de usuário único - que também é de fato um shell raiz sem senha.

  • Protegendo o menu do GRUB com uma senha:
    Você pode garantir que suas entradas do menu do GRUB sejam acessíveis apenas após a autenticação, ou seja, você pode negar a inicialização do modo de recuperação sem senha. Isso também impede a manipulação dos parâmetros do kernel. Para mais informações, consulte o site Grub2 / Senhas em help.ubuntu.com . Isso só pode ser contornado se você inicializar de uma mídia externa ou conectar o HDD a outra máquina diretamente.

  • Desativar inicialização a partir de mídia externa no BIOS:
    Você pode definir a ordem de inicialização e geralmente excluir dispositivos da inicialização em muitas versões atuais do BIOS / UEFI. Essas configurações não são protegidas, pois todos podem entrar no menu de configuração. Você precisa definir uma senha aqui também, mas ...

  • Senhas do BIOS:
    geralmente você também pode ignorar as senhas do BIOS. Existem vários métodos:

    • Redefina a memória do CMOS (onde as configurações do BIOS estão armazenadas) abrindo o gabinete do computador e removendo fisicamente a bateria do CMOS ou configurando temporariamente um jumper "Clear CMOS".
    • Redefina as configurações do BIOS com uma combinação de teclas de serviço. A maioria dos fabricantes de placas-mãe descreve combinações de teclas em seus manuais de serviço para redefinir as configurações desarrumadas do BIOS para os valores padrão, incluindo a senha. Um exemplo seria segurar ScreenUpenquanto ligava a alimentação, que, se bem me lembro, desbloqueou uma placa-mãe acer com AMI BIOS uma vez para mim depois que eu alterei minhas configurações de overclock.
    • Por último, mas não menos importante, há um conjunto de senhas padrão do BIOS que parecem sempre funcionar, independentemente da senha do conjunto real. Não testei, mas este site oferece uma lista deles, categorizados por fabricante.
      Obrigado a Rinzwind por esta informação e link!
  • Bloqueie a caixa do computador / negue acesso físico à placa-mãe e ao disco rígido:
    Mesmo se tudo falhar, um ladrão de dados ainda poderá abrir o laptop / computador, retirar o disco rígido e conectá-lo ao seu próprio computador. Montá-lo e acessar todos os arquivos não criptografados é um pedaço de bolo a partir daí. Você deve colocá-lo em uma caixa com segurança, onde possa ter certeza de que ninguém será capaz de abrir o computador. No entanto, isso é impossível para laptops e difícil para desktops. Talvez você possa pensar em possuir um filme de ação como um dispositivo autodestrutivo que explode alguns explosivos por dentro se alguém tentar abri-lo? ;-) Mas certifique-se de que você nunca precisará abri-lo para manutenção!

  • Criptografia completa de disco:
    Sei que recomendei esse método como seguro, mas também não é 100% seguro se você perder o laptop enquanto estiver ligado. Existe o chamado "ataque de inicialização a frio" que permite ao invasor ler as chaves de criptografia da sua RAM após reiniciar a máquina em execução. Isso descarrega o sistema, mas não libera o conteúdo da RAM do tempo sem energia.
    Obrigado a kos pelo seu comentário sobre este ataque!
    Também vou citar seu segundo comentário aqui:

    Este é um vídeo antigo, mas explica bem o conceito: "Para que não nos lembremos: ataques de inicialização a frio em chaves de criptografia" no YouTube ; se você tiver uma senha de BIOS definida, o invasor ainda poderá remover a bateria do CMOS enquanto o laptop ainda estiver ligado para permitir a inicialização da unidade personalizada, sem perder nenhum segundo crucial; hoje em dia isso é mais assustador devido aos SSDs, pois um SSD personalizado provavelmente poderá despejar até 8 GB em menos de 1 minuto, considerando uma velocidade de gravação de ~ 150 MB / s

    Pergunta relacionada, mas ainda sem resposta, sobre como evitar ataques de inicialização a frio: como habilito o Ubuntu (usando criptografia de disco completo) para chamar LUKSsupend antes de dormir / suspender a RAM?


Para concluir: No momento, nada realmente protege seu laptop de se acostumar com alguém com acesso físico e intenção maliciosa. Você só pode criptografar totalmente todos os seus dados se estiver paranóico o suficiente para arriscar perder tudo esquecendo sua senha ou uma falha. Portanto, a criptografia torna os backups ainda mais importantes do que já são. No entanto, eles também devem ser criptografados e localizados em um local muito seguro.
Ou simplesmente não entregue seu laptop e espere que você nunca o perca. ;-)

Se você se importa menos com seus dados, mas mais com seu hardware, convém comprar e instalar um remetente de GPS no seu caso, mas isso é apenas para pessoas reais paranóicas ou agentes federais.

Byte Commander
fonte
7
E ainda a criptografia completa do disco não o salvaria de ataques de inicialização a frio, se o seu laptop fosse roubado enquanto estava ligado!
kos
14
Além disso, após o seu laptop ficar fora do controle por um período de tempo, não é mais possível que ele seja seguro. Agora, ele pode registrar sua senha de pré-inicialização, por exemplo.
Josef
11
Criptografar seus dados não deve aumentar o risco de perdê-los, porque você tem backups, certo? Os dados armazenados apenas uma vez não são muito melhores do que os dados não existentes. Os SSDs tendem a falhar repentinamente, sem chance de obter algo deles.
Josef
3
Este é um vídeo antigo, mas explica bem o conceito: youtube.com/watch?v=JDaicPIgn9U ; se você tiver uma senha de BIOS definida, o invasor ainda poderá remover a bateria do CMOS enquanto o laptop ainda estiver ligado para permitir a inicialização da unidade personalizada, sem perder nenhum segundo crucial; este é mais assustador hoje em dia devido à SSDs, como um costume trabalhada SSD provavelmente será capaz de despejar até 8GB em menos de 1 minuto, considerando uma velocidade de gravação de ~ 150MB / s
kos
2
@ByteCommander, mas seu SSD pode falhar da mesma forma e todos os seus dados são perdidos. Claro, se você tende a esquecer as senhas (bem, anote-as e coloque-as em seu cofre), a probabilidade de perder todos os seus dados pode aumentar com a criptografia, mas não é como se os seus dados fossem super seguros, a menos que você se atrevesse a criptografá-las . Você não "arrisca tudo esquecendo sua senha ou falha", faz isso por não ter backups.
Josef
11

O laptop mais seguro é aquele sem dados. Você pode configurar seu próprio ambiente de nuvem privada e não armazenar nada de importância localmente.

Ou retire o disco rígido e derreta-o com termite. Embora isso tecnicamente responda à pergunta, talvez não seja o mais prático, pois você não poderá mais usar seu laptop. Mas esses hackers sempre nebulosos também não.

Exceto essas opções, criptografe duas vezes o disco rígido e exija que um pendrive USB seja conectado para descriptografá-lo. O pendrive USB contém um conjunto de chaves de descriptografia e o BIOS contém o outro conjunto - protegido por senha, é claro. Combine isso com uma rotina automática de autodestruição de dados se o pendrive USB não estiver conectado durante a inicialização / retomada da suspensão. Carregue o pendrive USB consigo sempre. Essa combinação também acontece com o XKCD # 538 .

XKCD # 538

E. Diaz
fonte
7
A rotina de autodestruição automática certamente será uma surpresa agradável quando o seu pendrive USB acumular um pouco de poeira nas almofadas de contato.
Dmitry Grigoryev
10

Criptografe seu disco. Dessa forma, seu sistema e seus dados estarão seguros caso seu laptop seja roubado. De outra forma:

  • A senha do BIOS não ajuda: o ladrão pode facilmente extrair o disco do seu computador e colocá-lo em outro PC para inicializá-lo.
  • Sua senha de usuário / root também não ajudará: o ladrão pode montar o disco facilmente, conforme explicado acima, e acessar todos os seus dados.

Eu recomendo que você tenha uma partição LUKS na qual você possa configurar um LVM. Você pode deixar sua partição de inicialização não criptografada para que você só precise digitar sua senha uma vez. Isso significa que seu sistema pode ser mais facilmente comprometido se for adulterado (roubado e devolvido a você sem você perceber), mas esse é um caso muito raro e, a menos que você pense que está sendo seguido pela NSA, um governo ou algum tipo de máfia, você não deve se preocupar com isso.

O instalador do Ubuntu deve oferecer a opção de instalar com LUKS + LVM de uma maneira muito fácil e automatizada. Não estou publicando novamente os detalhes aqui, pois já há muita documentação disponível na Internet. :-)

Peque
fonte
Se possível, você poderia fornecer uma resposta mais detalhada. Como você pode ver pela minha pergunta, eu não sou um fã de segurança.
blade19899
voto positivo para os pontos principais, mas observe que a criptografia de disco completo não é a única maneira, nem é necessária se você limitar seus arquivos confidenciais a /home/yourName- como deveria! - empilhe esta pasta com um driver de criptografia no nível do arquivo (como o que mencionei no OP e não será spam novamente), uma alternativa muito viável. Eu não estou preocupado com as pessoas vendo todas as coisas chato /usr, etc.
underscore_d
11
@underscore_d: Estou realmente preocupado com outras coisas externas /home(incluindo dados pessoais e profissionais em outras partições), por isso é mais fácil criptografar tudo, mas acho que cada usuário tem suas próprias necessidades :-). No entanto, o uso ecryptfsnão é a melhor decisão em termos de desempenho. Você pode encontrar alguns benchmarks aqui . Leia as páginas 2-5do artigo para obter resultados reais (a página 1é apenas uma introdução).
Peque
Muito verdade, obrigado pelo link / benchmarks. Ainda não atingi nenhuma barreira de desempenho, mas talvez mais tarde o atinja. Além disso, eu percebi que provavelmente vai ter que começar a pensar sobre a criptografia de coisas como /var/log, /var/www(origem), e /tmp, talvez por isso criptografia de disco completo vai começar a parecer mais sensato!
underscore_d
@underscore_d: sim, e então você começar a pensar sobre /etce outros diretórios de nível superior ... No criptografia completa de disco final é uma solução simples e rápido que vai deixar você dormir como um bebê todas as noites. ^^
Peque
5

Há algumas soluções de hardware que vale a pena notar.

Em primeiro lugar, alguns laptops, como alguns laptops empresariais da Lenovo, vêm com um interruptor de detecção de violação, que detecta quando o gabinete é aberto. Na Lenovo, esse recurso precisa ser ativado no BIOS e uma senha de administrador precisa ser definida. Se for detectada uma violação, o laptop (acredito) será imediatamente desligado, na inicialização, ele exibirá um aviso e exigirá a senha de administrador e o adaptador CA adequado para continuar. Alguns detectores de violação também acionam um alarme sonoro e podem ser configurados para enviar um e-mail.

A detecção de violação não impede a violação (mas pode dificultar o roubo de dados da RAM - e a detecção de violação pode "bloquear" o dispositivo se detectar algo realmente desonesto, como tentar remover a bateria do CMOS. A principal vantagem é que alguém não pode adulterar secretamente o hardware sem você saber - se você configurou uma segurança de software forte, como criptografia de disco completa, a adulteração dissimulada de hardware é definitivamente um dos vetores de ataque restantes.

Outra segurança física é que alguns laptops podem ser bloqueados em uma doca. Se o encaixe estiver montado firmemente em uma mesa (por meio de parafusos que estarão sob o laptop) e o laptop permanecer bloqueado no encaixe quando não estiver em uso, ele fornecerá uma camada adicional de proteção física. É claro que isso não vai impedir um ladrão determinado, mas definitivamente torna mais difícil roubar o laptop da sua casa ou empresa, e enquanto estiver bloqueado, ele ainda é perfeitamente utilizável (e você pode conectar periféricos, ethernet e assim por diante).

Obviamente, esses recursos físicos não são úteis para proteger um laptop que não os possui. Mas se você tem consciência de segurança, pode valer a pena considerá-los ao comprar um laptop.

Blake Walsh
fonte
2

Além de criptografar seu disco (você não vai contornar isso): - SELinux e TRESOR. Ambos fortalecem o kernel do Linux e tentam dificultar aos invasores a leitura das coisas da memória.

Enquanto você está nisso: agora entramos no território não apenas com medo de pessoas aleatórias do mal que desejam suas informações de cartão de débito (elas não fazem isso), mas também com bastante frequência de agências de inteligência. Nesse caso, você deseja fazer mais:

  • Tente limpar tudo de código fechado (também firmware) do PC. Isso inclui UEFI / BIOS!
  • Use tianocore / coreboot como novo UEFI / BIOS
  • Use o SecureBoot com suas próprias chaves.

muitas outras coisas que você pode fazer, mas essas devem fornecer uma quantidade razoável de coisas com as quais precisam agradar.

E não se esqueça: xkcd ;-)

Larkey
fonte
Essas sugestões não são úteis. Nem o SELinux nem o TRESOR impedem alguém com acesso físico. Eles não foram projetados para esse modelo de ameaça. Eles fornecerão uma falsa sensação de segurança. O PS Purgar código fonte fechado não tem nenhuma relação com o fornecimento de segurança contra alguém com acesso físico.
DW
11
@DW "TRESOR (acrônimo recursivo para" TRESOR executa criptografia com segurança fora da RAM ") é um patch do kernel do Linux que fornece criptografia baseada apenas na CPU para se defender contra ataques de inicialização a frio" - portanto, o TRESOR definitivamente ajuda nesses cenários. Mas isso é apenas um ponto secundário. Eu escrevi 'Adicionalmente', pois essas coisas realmente não farão nada se você não criptografar seu disco (em um cenário de acesso físico). No entanto, quando você aumenta a segurança física, não se esqueça de que o invasor ainda pode inicializar e fazer um ataque digital também (ou seja, explorar bugs).
Larkey
@DW É uma merda se o seu PC estiver bem criptografado, mas estiver propenso a escalar privilégios. É por isso que - se alguém está prestes a proteger o sistema do lado físico - também deve se esforçar no lado do software. Eu expliquei explicitamente que eles endureceram o kernel do Linux e deveriam ser feitos adicionalmente . O mesmo vale para o software de código fechado. Seu disco pode estar bem criptografado, mas se houver um keylogger de porta traseira no UEFI, ele não ajudará contra agências de inteligência.
Larkey
Se você usar a criptografia de disco completo e não deixar o computador sem vigilância, os ataques de escalonamento de privilégios serão irrelevantes, pois o invasor não saberá a senha de descriptografia. (. O uso adequado de criptografia completa de disco requer que você desligar / hibernação quando autônoma) Se você usar criptografia completa de disco e fazer deixar o seu computador, em seguida, criptografia completa de disco pode ser ignorada por qualquer número de métodos - por exemplo, anexar um USB dongle - mesmo se você usar TRESOR, SELinux, etc. Novamente, eles não foram projetados para este modelo de ameaça. Esta resposta não parece refletir uma análise cuidadosa de segurança.
DW
11
Com a expressão "tentar", qualquer coisa se qualifica - a criptografia rot13 pode tentar garantir que uma exploração não possa dominar o sistema. Não vai valer nada, mas posso descrevê-lo como uma tentativa. O que quero dizer é que as defesas que você está destacando não são eficazes para impedir essa classe de ataques. O SELinux / TRESOR não para a inicialização a frio. Para analisar a segurança, é necessário começar com um modelo de ameaça e analisar as defesas contra esse modelo de ameaça específico. Segurança não é o processo de espalhar uma lista interminável de restrições adicionais que parecem boas. Há alguma ciência nisso.
DW
2

Como você mudou um pouco a pergunta, aqui está a minha resposta para a parte alterada:

Como posso proteger minha máquina para que não seja possível invadir o acesso físico?

Resposta: Você não pode

Existem muitos sistemas avançados de hardware e software, como detecção de violação , criptografia, etc., mas tudo se resume a isso:

Você pode proteger seus dados, mas não pode proteger seu hardware depois que alguém tiver acesso a eles. E se você continuar usando algum hardware depois que alguém tiver acesso, estará colocando em risco seus dados!

Use um notebook seguro com detecção de violação que limpe a RAM quando alguém tentar abri-lo, use criptografia de disco completo, armazene backups dos seus dados criptografados em diferentes locais. Em seguida, torne o mais difícil possível o acesso físico ao seu hardware. Mas se você acredita que alguém teve acesso ao seu hardware, limpe-o e jogue-o fora.

A próxima pergunta que você deve fazer é: Como posso adquirir um novo hardware que não foi violado.

Josef
fonte
1

Use uma senha ATA para o seu HDD / SSD

Isso impedirá o uso do disco sem a senha . Isso significa que você não pode inicializar sem a senha, porque não pode acessar o MBR ou o ESP sem a senha. E se o disco for usado dentro de outro manchine, a senha ainda será necessária.

Portanto, você pode usar a chamada senha ATA do usuário para o seu HDD / SSD. Isso geralmente é definido dentro do BIOS (mas não é uma senha do BIOS).

Para segurança extra, você também pode definir uma senha ATA mestre no disco. Para desativar o uso da senha do fabricante.

Você pode fazer isso no CLI hdparmtambém.

Cuidado extra deve ser tomado, pois você poderá perder todos os seus dados se perder a senha.

http://www.admin-magazine.com/Archive/2014/19/Using-the-ATA-security-features-of-modern-hard-disks-and-SSDs

Nota: Também há pontos fracos aqui, pois existem softwares que pretendem recuperar a senha do ATA ou até mesmo que desejam removê-la. Portanto, também não é 100% seguro.

Nota: A senha ATA não vem necessariamente com o FED (Full Disk Encryption)

solstício
fonte