9 maneiras de construir privacidade em seus aplicativos em nuvem

Views: 420
0 0
Read Time:6 Minute, 51 Second
3D Render of Cloud Drive Icon

Olhe para essas estratégias para equilibrar privacidade com funcionalidade e proteger seus aplicativos e dados contra ataques na nuvem

Peter Wayner, CIO (EUA)

Privacidade é uma daquelas ideias nebulosas que todo mundo adora. Entregar, no entanto, é um trabalho cheio de nuances e compensações. As tecnologias que aumentam a privacidade permitem que você controle quanta privacidade dar suporte, mas limitam esse controle para preservar a funcionalidade. Eles combinam funções de criptografia com algoritmos inteligentes para construir bancos de dados que podem responder a algumas perguntas corretamente – mas apenas para as pessoas certas.

Em meu livro, Translucent Databases, explorei a construção de um serviço de agendamento de babás que poderia permitir que os pais reservassem babás sem armazenar informações pessoais no banco de dados central. Pais e babás poderiam obter a resposta correta do banco de dados, mas qualquer invasor ou pessoa interna com privilégios de acesso root obteria apenas ruído embaralhado.

O campo cresceu dramaticamente ao longo dos anos e agora existem várias abordagens e estratégias que fazem um bom trabalho na proteção de muitas facetas de nossas vidas pessoais. Eles armazenam apenas informações suficientes para as empresas fornecerem produtos, evitando alguns dos perigos óbvios que podem surgir se hackers ou usuários internos obtiverem acesso.

Todas as abordagens têm seus limites. Elas se defenderão contra os ataques mais gerais, mas algumas começam a desmoronar se os atacantes estiverem mais bem equipados ou os ataques forem mais direcionados. Frequentemente, a quantidade de proteção é proporcional à quantidade de poder de computação necessária para os cálculos de criptografia. As proteções básicas podem não adicionar carga extra perceptível ao sistema, mas fornecer segurança perfeita pode estar fora do alcance até mesmo das empresas de nuvem.

Mas esses limites não devem nos impedir de adicionar as proteções básicas. A abordagem perfeitamente segura pode não estar lá fora, mas adicionar algumas dessas soluções mais simples pode proteger a todos contra alguns dos piores ataques que podem ser habilitados pelos novos serviços em nuvem.

Aqui estão nove estratégias para equilibrar privacidade com funcionalidade.

Use os recursos

Os provedores de nuvem entendem que os clientes estão preocupados com a segurança e lentamente adicionaram recursos que tornam mais fácil bloquear seus dados. A Amazon, por exemplo, oferece mais de duas dúzias de produtos que ajudam a adicionar segurança. O AWS Firewall Manager ajuda a garantir que os firewalls permitam a entrada apenas dos pacotes certos. O AWS Macie verificará seus dados em busca de dados confidenciais que estão muito abertos. O Google Cloud e o Microsoft Azure têm suas próprias coleções de ferramentas de segurança. Entender todos esses produtos pode exigir uma equipe, mas é o melhor lugar para começar a proteger seu trabalho na nuvem.

Observe os segredos

Proteger as senhas, chaves de criptografia e parâmetros de autenticação é difícil o suficiente quando estamos apenas bloqueando nossos desktops. É muito mais complicado ainda com máquinas em nuvem, especialmente quando são gerenciadas por uma equipe. Uma variedade de ferramentas diferentes são projetadas para ajudar. Você ainda precisa ter cuidado com o gerenciamento do código-fonte, mas as ferramentas ajudarão a lidar com os segredos para que possam ser adicionados às máquinas em nuvem com segurança. Ferramentas como Hashicorp’s Vault, Doppler’s Enclave, AWS’s Key Management System e as ferramentas de gerenciamento de API da Okta são apenas algumas das opções que simplificam o processo. Todas ainda exigem alguns cuidados, mas são melhores do que anotar senhas em um caderninho e trancá-lo no escritório de alguém.

Considere hardware dedicado

É difícil saber o quão paranoico se deve ser sobre compartilhar hardware de computador com outras pessoas. É difícil acreditar que um invasor possa encontrar uma maneira de compartilhar a máquina certa e, em seguida, explorar algumas das diferentes abordagens extremas, como o rowhammer, mas alguns dados podem valer o trabalho árduo. As empresas de nuvem oferecem hardware dedicado apenas para ocasiões como esta. Se a carga de computação for razoavelmente constante, pode até fazer sentido econômico usar servidores locais em seu próprio edifício. Alguns adotam as ferramentas híbridas da empresa de nuvem e outros desejam configurar suas próprias máquinas. Em qualquer caso, assumir o controle total de um computador é mais caro do que compartilhar, mas elimina muitos ataques.

Criptografia pura

Boas funções de criptografia são integradas a muitas camadas do sistema operacional e do sistema de arquivos. Ativá-las é uma boa maneira de adicionar alguma segurança básica contra invasores de baixo nível e pessoas que podem obter acesso físico ao seu dispositivo. Se você estiver armazenando dados em seu laptop, mantê-los criptografados evita algumas preocupações se você perder a máquina.

As funções regulares de criptografia, entretanto, não são unilaterais. Existe uma maneira de decodificar os dados. A escolha da criptografia regular geralmente é inevitável porque você está planejando usar os dados, mas deixa outro caminho para os invasores. Se você puder aplicar a chave certa para decodificar os dados, eles podem encontrar uma cópia dessa chave e implantá-la também. Certifique-se de ler a seção acima sobre como guardar segredos.

Dados falsos

Em vez de abrir o conjunto de dados reais para parceiros ou pessoas internas que precisam usá-lo para projetos como treinamento ou planejamento de IA, alguns desenvolvedores estão criando versões falsas dos dados que têm muitas das mesmas propriedades estatísticas.

A RTI, por exemplo, criou uma versão falsa do Censo dos EUA, completa com mais de 110 milhões de domicílios com mais de 300 milhões de habitantes. Não há informações pessoais de americanos reais, mas os 300 milhões de pessoas falsas estão mais ou menos nas mesmas partes do país e seus dados pessoais estão muito próximos das informações reais. Os pesquisadores que previram o caminho das doenças infecciosas puderam estudar os EUA sem acesso a dados pessoais reais.

Uma empresa de IA, Hazy, está entregando uma ferramenta baseada em Python que será executada em data centers seguros e produzirá versões sintéticas de seus dados que você pode compartilhar com mais liberdade.

Privacidade diferencial

O termo descreve uma abordagem geral para adicionar ruído suficiente aos dados para proteger as informações privadas no conjunto de dados, deixando ainda informações suficientes para serem úteis. Adicionar ou subtrair alguns anos à idade de todos ao acaso, por exemplo, ocultará os anos exatos de nascimento das pessoas, mas a média não será afetada.

A abordagem é mais útil para trabalhos estatísticos maiores que estudam grupos em conjunto. As entradas individuais podem ser corrompidas por ruído, mas os resultados gerais ainda são precisos.

A Microsoft começou a compartilhar White Noise, uma ferramenta de código aberto construída com Rust e Python, para adicionar uma quantidade ajustada de ruído às suas consultas SQL.

Criptografia homomórfica

A maioria dos algoritmos de criptografia embaralha os dados tão completamente que ninguém consegue entender os resultados sem a chave adequada. As abordagens homomórficas usam uma estrutura mais sofisticada para que muitas operações aritméticas básicas possam ser feitas nos dados criptografados sem a chave. Você pode adicionar ou multiplicar sem conhecer as próprias informações subjacentes.

Os esquemas mais simples são práticos, mas limitados. Soluções mais completas podem computar funções mais arbitrárias, mas somente após criptografia muito mais cara.

A IBM agora está compartilhando um kit de ferramentas de código aberto para incorporar criptografia homomórfica em aplicativos iOS e MacOS com a promessa de que versões para Linux e Android estarão disponíveis em breve. As ferramentas são preliminares, mas oferecem a capacidade de explorar cálculos tão complicados quanto treinar um modelo de machine learning sem acesso aos dados não criptografados.

Não guarde nada

Os programadores podem ser do tipo que mantêm os dados por perto, caso possam ser úteis para depuração posterior. Uma das soluções mais simples é projetar seus algoritmos para serem tão sem estado e sem log quanto possível. Assim que a depuração estiver concluída, pare de preencher as unidades de disco com muitas informações. Basta retornar os resultados e parar.

Manter o mínimo de informações possível tem perigos. É mais difícil detectar abusos ou corrigir erros. Mas, por outro lado, você não precisa se preocupar com os invasores tendo acesso a esses destroços e restos digitais. Eles não podem atacar os dados pessoais de ninguém se eles não existirem.

FONTE: CIO

POSTS RELACIONADOS