O que fazer se os siloviki aparecerem para o seu provedor de hospedagem

O que fazer se os siloviki aparecerem para o seu provedor de hospedagemkdpv — Reuters

Se você alugou um servidor, não tem controle total sobre ele. Isso significa que a qualquer momento representantes treinados podem chegar ao provedor de hospedagem e solicitar qualquer um dos seus dados. E o provedor entregará, se a solicitação estiver formalmente legalizada.

Você realmente não quer que os logs do seu servidor web ou os dados dos usuários caiam em mãos erradas. Não é possível construir uma proteção perfeita. Proteger-se de um provedor de hospedagem que controla o hipervisor e lhe fornece uma máquina virtual é quase impossível. Contudo, é possível reduzir um pouco os riscos. A criptografia das máquinas alugadas não é tão inútil quanto parece à primeira vista. Vamos também considerar as ameaças de extração de dados de servidores físicos.

Modelo de ameaças

Em geral, o provedor de hospedagem tentará proteger os interesses do cliente tanto quanto a lei permitir. Se uma solicitação formal de autoridades oficiais pedir apenas os logs de acesso, o provedor não deve entregar dumps de todas as suas máquinas virtuais com bancos de dados. Não deve, pelo menos. Se solicitarem todos os dados, o provedor copiará os discos virtuais com todos os arquivos e você não ficará sabendo.

Independentemente do cenário em desenvolvimento, sua principal tarefa é tornar o ataque muito complicado e caro. Normalmente, existem três opções principais de ameaça.

Oficial

Na maioria das vezes, um documento é enviado ao escritório oficial do provedor de hospedagem, exigindo a apresentação dos dados necessários de acordo com a devida ordem. Se tudo estiver em ordem, o provedor fornecerá os logs de acesso necessários e outros dados às autoridades competentes. Geralmente, apenas solicitarão que os dados necessários sejam enviados.

Ocasionalmente, se realmente necessário, representantes das autoridades policiais vão pessoalmente até o centro de dados. Por exemplo, quando você possui um servidor dedicado e os dados podem ser retirados apenas fisicamente.

Em todos os países, para obter acesso a uma propriedade privada, realizar buscas e outras operações, é necessário apresentar provas de que os dados podem conter informações relevantes para a investigação de um crime. Além disso, é necessário ter um mandado de busca formalmente elaborado de acordo com todos os regulamentos. Aqui podem haver nuances relacionadas às particularidades da legislação local. O principal a entender é que, seguindo o caminho oficial correto, os representantes do data center não deixarão ninguém passar além do ponto de entrada.

Além disso, na maioria dos países, não se pode simplesmente retirar equipamentos em funcionamento. Por exemplo, na Rússia, até o final de 2018, de acordo com o artigo 183 do Código Penal, parte 3.1, era garantido que, durante a apreensão, a retirada de suportes eletrônicos de informação fosse feita com a participação de um especialista. A pedido do legítimo proprietário dos suportes eletrônicos apreendidos ou do detentor das informações contidas neles, a cópia das informações de suportes eletrônicos apreendidos deve ser realizada por um especialista presente na apreensão, na presença de testemunhas.

Depois, infelizmente, esse item foi retirado do artigo.

Secreto e informal

Aqui já é território de ação de profissionais treinados da NSA, FBI, MI5 e outras organizações de três letras. Na maioria das vezes, a legislação dos países prevê amplos poderes para essas estruturas. Além disso, quase sempre há proibição legal de qualquer divulgação direta ou indireta do próprio fato de cooperação com tais órgãos de segurança. Na Rússia, existem normas legais semelhantes. normas legais.

No caso de tal ameaça aos seus dados, eles quase certamente serão retirados. Além disso, além da simples apreensão, podem ser utilizados todo o arsenal não oficial de backdoors, vulnerabilidades de dia zero, extração de dados da memória operacional de sua máquina virtual e outras armadilhas. O provedor, nesse caso, será obrigado a ajudar ao máximo os especialistas das autoridades.

Funcionário desonesto

Nem todas as pessoas são igualmente boas. Alguém dos administradores do data center pode decidir ganhar algum dinheiro e vender seus dados. O desenrolar dos eventos depende de suas permissões e acessos. O mais preocupante é que um administrador com acesso ao console de virtualização tem controle total sobre suas máquinas. Sempre é possível fazer um snapshot junto com todo o conteúdo da memória RAM e, em seguida, estudá-lo com calma.

VDS

Portanto, você tem uma máquina virtual que foi fornecida pelo seu provedor. Como você pode organizar a criptografia para se proteger? Na verdade, quase não há como. Além disso, até mesmo um servidor dedicado de terceiros pode acabar sendo uma máquina virtual, onde os dispositivos necessários foram conectados.

Se a tarefa do sistema remoto não é apenas armazenar dados, mas realizar algum tipo de computação, a única opção para trabalhar com uma máquina não confiável será a implementação de criptografia homomórfica. Com isso, o sistema fará cálculos sem ter a capacidade de entender o que exatamente está fazendo. Infelizmente, os custos operacionais para implementar esse tipo de criptografia são tão altos que sua aplicação prática até o momento está limitada a tarefas muito específicas.

Além disso, no momento em que a máquina virtual está em execução e realizando alguma ação, todos os volumes criptografados estão em estado de acesso, caso contrário, o sistema operacional simplesmente não conseguirá trabalhar com eles. Isso significa que, tendo acesso ao console de virtualização, você sempre pode tirar um snapshot da máquina em funcionamento e extrair todas as chaves da memória RAM.

Vários fornecedores tentaram organizar a criptografia de hardware da RAM para que nem mesmo o provedor tivesse acesso a esses dados. Por exemplo, a tecnologia Intel Software Guard Extensions, que organiza áreas no espaço de endereçamento virtual, protegidas de leitura e gravação externas por outros processos, incluindo o núcleo do sistema operacional. Infelizmente, você não poderá confiar plenamente nessas tecnologias, pois estará limitado à sua máquina virtual. Além disso, já existem exemplos prontos de ataques bem-sucedidos a essa tecnologia. E, mesmo assim, a criptografia de máquinas virtuais não é tão sem sentido quanto pode parecer.

Criptografando dados no VDS

Deixe-me esclarecer que tudo o que faremos a seguir não garante uma proteção total. O hipervisor permitirá fazer as cópias necessárias sem interromper o serviço e de forma discreta para você.

  • Se o provedor de hospedagem enviar uma imagem "fria" da sua máquina virtual, você estará relativamente seguro. Este é o cenário mais comum.
  • Se o provedor de hospedagem fornecer um snapshot completo da máquina em funcionamento, a situação é preocupante. Todos os dados serão montados no sistema de forma acessível. Além disso, haverá a possibilidade de investigar a RAM em busca de chaves privadas e dados desse tipo.

Por padrão, se você instalou o sistema operacional a partir de uma imagem padrão, o provedor de hospedagem não terá acesso root. É sempre possível montar um dispositivo com uma imagem de resgate e alterar a senha de root, realizando um chroot no ambiente da máquina virtual. Mas isso exigirá uma reinicialização, que será notada. Além disso, todas as partições criptografadas montadas estarão fechadas.

No entanto, se o provisionamento da máquina virtual não for a partir de uma imagem padrão, mas de uma imagem previamente preparada, o provedor de hospedagem frequentemente pode adicionar uma conta privilegiada para ajudar em situações de emergência do cliente. Por exemplo, para alterar uma senha esquecida de root.

Mesmo em caso de um snapshot completo, nem tudo é tão ruim. O atacante não receberá arquivos criptografados se você os montou de um sistema de arquivos remoto de outra máquina. Sim, em teoria, é possível analisar o dump da memória RAM e extrair chaves de criptografia de lá. Mas, na prática, isso é muito não trivial e é muito improvável que o processo avance além da simples transferência de arquivos.

Pedimos uma máquina

O que fazer se os siloviki aparecerem para o seu provedor de hospedagem

Para nossos objetivos de teste, pegamos uma máquina simples em na seção para pedir servidores. Não precisamos de muitos recursos, então vamos optar pela opção de pagamento pelos megahertz e tráfego efetivamente utilizados. Isso será suficiente para brincar.

O clássico dm-crypt de toda a partição não funcionou. O disco, por padrão, é fornecido como um único bloco, com root em toda a partição. Reduzir uma partição ext4 com root montado é praticamente garantido para transformar a partição em um tijolo em vez de um sistema de arquivos. Eu tentei) Um tambor não ajudou.

Criamos um contêiner criptográfico

Portanto, não vamos criptografar a seção inteira, mas usaremos contêineres criptográficos de arquivo, especificamente o VeraCrypt, que passou por auditoria e é confiável. Para nossos objetivos, isso é suficiente. Para começar, baixe e instale o pacote com a versão CLI do site oficial. Você pode aproveitar para verificar a assinatura.

wget https://launchpad.net/veracrypt/trunk/1.24-update4/+download/veracrypt-console-1.24-Update4-Ubuntu-18.04-amd64.deb
dpkg -i veracrypt-console-1.24-Update4-Ubuntu-18.04-amd64.deb

Agora vamos criar o contêiner em algum lugar no nosso home, para montá-lo manualmente após a reinicialização. Na versão interativa, defina o tamanho do contêiner, a senha e os algoritmos de criptografia. Você pode escolher o cifrador patriótico Kuznechik e a função hash Stribog.

veracrypt -t -c ~/my_super_secret

Agora vamos instalar o nginx, montar o contêiner e colocar nele as informações secretas.

mkdir /var/www/html/images
veracrypt ~/my_super_secret /var/www/html/images/
wget https://upload.wikimedia.org/wikipedia/ru/2/24/Lenna.png

Vamos fazer uma pequena alteração em /var/www/html/index.nginx-debian.html, para obter a página desejada e poder verificar.

Conecte-se e verifique

O que fazer se os siloviki aparecerem para o seu provedor de hospedagem
O contêiner está montado, os dados estão acessíveis e sendo entregues.

O que fazer se os siloviki aparecerem para o seu provedor de hospedagem
Aqui está a máquina após a reinicialização. Os dados estão seguros em ~/my_super_secret.

Se for realmente necessário e você quiser um desafio, pode criptografar todo o sistema operacional, para que ao reiniciar ele exija conexão por ssh e inserção de senha. Isso também será suficiente em um cenário simples de recuperação de "dados frios". Aqui está a instrução usando dropbear e criptografia remota de discos. Embora, no caso de VDS, isso seja complicado e excessivo.

Bare metal

Não é tão fácil colocar um servidor próprio em um data center. Um servidor dedicado pode acabar sendo uma máquina virtual, onde todos os dispositivos são redirecionados. Mas algo interessante em termos de proteção começa quando você tem a oportunidade de colocar seu servidor físico confiável no data center. Aqui já é possível utilizar plenamente a criptografia tradicional dm-crypt, VeraCrypt ou qualquer outra criptografia de sua escolha.

É importante entender que, ao implementar a criptografia total, o servidor não conseguirá inicializar sozinho após a reinicialização. Será necessário levantar a conexão até a interface local IP-KVM, IPMI ou outro análogo semelhante. Em seguida, digitamos manualmente a chave mestra. O esquema parece um pouco problemático em termos de continuidade e tolerância a falhas, mas não há muitas alternativas, se os dados forem tão valiosos.

O que fazer se os siloviki aparecerem para o seu provedor de hospedagem
Módulo de Segurança de Hardware NCipher nShield F3

Uma variante mais suave implica que os dados estão criptografados e a chave está diretamente no próprio servidor, em um HSM (Módulo de Segurança de Hardware) especial. Geralmente, são dispositivos muito funcionais que fornecem não apenas criptografia de hardware, mas também possuem mecanismos de detecção de tentativas de ataque físico. Se alguém começar a mexer no seu servidor com uma serra, o HSM, com uma fonte de energia independente, descartará as chaves que armazena em sua memória. O atacante receberá um molho criptografado. Além disso, a reinicialização pode ocorrer automaticamente.

A exclusão de chaves é uma opção muito mais rápida e humana do que ativar uma bomba de termita ou um disparador eletromagnético. Dispositivos assim podem causar muitos problemas com os vizinhos no datacenter. Especialmente se você usar TCG Opal 2 a criptografia nos próprios dispositivos, você praticamente não experimenta nenhuma sobrecarga. Tudo acontece de forma transparente para o sistema operacional. No entanto, é preciso confiar na Samsung e esperar que a criptografia AES256 seja confiável, e não uma simples XOR.

Além disso, não se deve esquecer que todas as portas desnecessárias devem ser fisicamente desconectadas ou preenchidas com composto. Caso contrário, você está permitindo que os atacantes realizem ataques DMA. Se você tem um PCI Express ou Thunderbolt exposto, incluindo USB com suporte, você está vulnerável. O atacante poderá usar essas portas para conduzir um ataque e obter acesso direto à memória com as chaves.

Por que no hosting comum a administração do PrestaShop é lenta, e no seu não é?

Em uma variante mais sofisticada, o atacante pode realizar um ataque de cold boot. Nesse caso, ele simplesmente despeja uma boa quantidade de nitrogênio líquido em seu servidor, extrai brutalmente os módulos de memória congelados e faz um dump deles, com todas as chaves. Muitas vezes, para realizar o ataque, basta um spray de resfriamento comum e uma temperatura em torno de -50 graus. Existe também uma abordagem mais metódica. Se você não desativou a inicialização a partir de dispositivos externos, o algoritmo do atacante será ainda mais simples:

  1. Congelar os módulos de memória sem abrir o gabinete
  2. Conectar seu pen drive inicializável
  3. Usar utilitários especiais para extrair dados da memória RAM que sobrevivem a uma reinicialização, graças ao congelamento.

Dividir e conquistar

Ok, temos apenas máquinas virtuais, mas queremos reduzir os riscos de vazamento de dados de alguma forma.
Em princípio, podemos tentar repensar a arquitetura e desagregar o armazenamento de dados e o processamento em diferentes jurisdições. Por exemplo, o frontend com chaves de criptografia hospedadas na República Tcheca, e o backend com dados criptografados em algum lugar na Rússia. Em caso de uma tentativa padrão de apreensão, é extremamente improvável que as forças de segurança consigam realizar isso simultaneamente em diferentes jurisdições. Além disso, isso nos protege parcialmente de um cenário de captura de instantâneo.

Ou podemos considerar uma opção completamente limpa — criptografia de ponta a ponta. Claro, isso foge do escopo do projeto e não implica a realização de cálculos do lado da máquina remota. No entanto, é uma opção bastante aceitável, se estivermos falando sobre o armazenamento e a sincronização de dados. Por exemplo, isso é muito bem implementado no Nextcloud. Nesse caso, a sincronização, versionamento e outros recursos do lado do servidor não desaparecerão.

Total

Não existem sistemas perfeitamente seguros. A tarefa é apenas tornar o ataque mais caro do que o benefício potencial.

Uma certa redução dos riscos de acesso a dados em ambientes virtuais pode ser obtida combinando criptografia e armazenamento separado em diferentes provedores.

Uma opção mais ou menos confiável é o uso de um servidor físico próprio.

E o provedor de hospedagem, de qualquer forma, precisará ser confiável. É a base de toda a indústria.

O que fazer se os siloviki aparecerem para o seu provedor de hospedagem

O que fazer se os siloviki aparecerem para o seu provedor de hospedagem

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster