A computação em nuvem revolucionou o mundo da TI, tornando mais fácil para as empresas implantar infraestrutura e aplicações e fornecer seus serviços ao público. A ideia de não gastar milhões de dólares em equipamentos e instalações para hospedar um data center local é uma perspectiva muito atraente para muitos. E certamente, mover recursos para a nuvem só precisa ser mais seguro, certo? O provedor de nuvem manterá nossos dados e aplicações seguros, com certeza. Os cibercriminosos não terão chance. Errado. Mais comum do que seria razoável, muitas vezes ouço essa ilusão de muitos clientes. A verdade é que, sem a configuração adequada e as habilidades certas para administrar a presença na nuvem, além de realizar práticas de segurança de bom senso, os serviços em nuvem são apenas (se não mais) vulneráveis.
O Modelo de Responsabilidade Compartilhada
Antes de prosseguir, precisamos discutir o modelo de responsabilidade compartilhada do provedor e usuário de serviços em nuvem.
Ao planejar sua migração para a nuvem, é preciso estar ciente de quais responsabilidades pertencem a qual entidade. Como mostra o gráfico acima, o provedor de serviços em nuvem é responsável pela segurança da infraestrutura em nuvem e pela segurança física de tais. Por outro lado, o cliente é responsável por seus próprios dados, pela segurança de seus workloads (até a camada do SO), bem como pela rede interna nas VPCs das empresas.
Um outro aspecto muito importante que permanece nas mãos do cliente é o controle de acesso. Quem tem acesso a quais recursos? Isso realmente não é diferente do que tem sido no passado, com exceção da segurança física do data center ser gerenciada pelo CSP em oposição à segurança no local, mas a empresa (especificamente TI e segurança de TI) é responsável por bloquear esses recursos de forma eficiente.
Muitas vezes, esse modelo de responsabilidade compartilhada é negligenciado, e suposições ruins são feitas para garantir a segurança dos recursos de uma empresa. O caos ocorre, provavelmente, alguns incidentes.
Portanto, agora que estabelecemos o modelo de responsabilidade compartilhada e que o cliente é responsável por seus próprios recursos e segurança de dados, vamos dar uma olhada em alguns dos problemas de segurança mais comuns que podem afetar a nuvem.
Amazon S3
O Amazon S3 é um excelente serviço da Amazon Web Services. Ser capaz de armazenar dados, hospedar sites estáticos ou criar armazenamento para aplicações são casos de uso amplamente empregados neste serviço. Os buckets S3 também são um alvo principal para agentes mal-intencionados, pois muitas vezes eles acabam mal configurados.
Uma dessas ocorrências ocorreu em 2017 quando a Booz Allen Hamilton, fornecedora em serviços militares e de defesa para os Estados Unidos, teve roubadas imagens de campos de batalha, bem como credenciais de administrador em sistemas sensíveis.
Outra ocorrência deu-se em 2017, quando devido a um bucket Amazon S3 inseguro, os registros de 198 milhões de eleitores americanos foram expostos. É provável que, se você estiver lendo isso e for um norte-americano com registro de eleitor, esta violação já tenha te prejudicado.
Uma violação mais recente de um bucket do Amazon S3 (e eu uso a palavra “violação”, no entanto, a maioria dessas instâncias foi resultado de uma configuração e exposição pública ruins, e não de um criminoso que invadiu o uso de técnicas sofisticadas) tinha a ver com o provedor de armazenamento em nuvem “Data Deposit Box”. Utilizando os buckets do Amazon S3 para armazenamento, um problema de configuração causou o vazamento de mais de 270.000 arquivos pessoais, bem como informações de identificação pessoal (PII) de seus usuários.
Uma última coisa a abordar sobre o armazenamento de arquivos na nuvem tem a ver com quantas organizações estão usando o Amazon S3 para armazenar dados carregados dos clientes como um local para enviar para processamento por outras partes da aplicação. O problema aqui é como sabemos se o que está sendo carregado é malicioso ou não? Essa pergunta surge cada vez mais à medida que falo com mais clientes e colegas no mundo de TI.
API
APIs são demais. Elas permitem que você interaja com programas e serviços de maneira programática e automatizada. Quando se trata da nuvem, as APIs permitem que os administradores interajam com os serviços; na verdade, elas são realmente a pedra angular de todos eles em nuvem, pois permitem a comunicação de diferentes serviços. Como com qualquer coisa neste mundo, isso também abre um mundo de perigos.
Vamos começar com o gateway da API, uma construção comum em nuvem para permitir a comunicação de back-end de aplicações. O gateway da API em si é um destino, pois pode permitir que um agente de ataque manipule o gateway e autorize o tráfego indesejado. Os gateways da API foram projetados para serem integrados nas aplicações. Eles não foram projetados para segurança. Isso significa que conexões não confiáveis podem entrar no referido gateway e talvez recuperar dados que o indivíduo não deve ver. Da mesma forma, as solicitações de API para o gateway podem vir com payloads maliciosos.
Outro ataque que pode afetar o gateway da API e também a aplicação por trás dele é o ataque DDOS. A resposta comum para se defender disso é o Web Application Firewall (WAF). O problema é que os WAFs lutam para lidar com ataques DDOS baixos e lentos, porque o fluxo constante de solicitações parece tráfego normal. Uma ótima maneira de impedir ataques DDOS no gateway da API é limitar o número de solicitações para cada método. Uma ótima maneira de impedir ataques à API está na configuração. Negar acesso anônimo é algo grande. Da mesma forma, alterar tokens, senhas e chaves limita a chance de credenciais eficazes poderem ser usadas. Por fim, desabilitando qualquer tipo de autenticação de texto não criptografado. Além disso, impor a criptografia SSL / TLS e implementar autenticação multifatorial são grandes impedimentos.
Computação
Nenhum serviço de nuvem estaria completo sem recursos de computação. Acontece quando uma organização cria máquinas virtuais para várias aplicações e serviços. Isso também introduz outra superfície de ataque e, mais uma vez, não é algo protegido pelo provedor de serviços em nuvem. Sendo puramente de responsabilidade do cliente.
Muitas vezes, ao discutir a migração de meus clientes de um datacenter local para a nuvem, um dos métodos comuns é a abordagem de “levantamento e troca”. Isso significa que os clientes pegam as máquinas virtuais que eles têm em execução no datacenter e simplesmente migram essas máquinas para a nuvem. Agora, a pergunta é: que tipo de avaliação de segurança foi feita nessas máquinas virtuais antes da migração? Essas máquinas foram consertadas? As falhas de segurança descobertas foram corrigidas? Na minha experiência pessoal, a resposta é não. Portanto, essas organizações estão simplesmente levando seus problemas de um local para o outro. As brechas de segurança ainda existem e podem ser potencialmente exploradas, principalmente se o servidor for público ou as políticas de rede aplicadas incorretamente. Para esse tipo de processo, acho que uma maneira melhor de ver isso é “corrigir – levantar – mudar de posição”.
Agora que as organizações já estabelecem sua presença na nuvem, elas precisam implantar novos recursos e isso pode significar desenvolver ou criar uma imagem de máquina. A coisa mais importante a lembrar aqui é que estes são computadores. Eles ainda são vulneráveis a malware, portanto, independentemente de estarem na nuvem ou não, são necessários os mesmos controles de segurança, incluindo itens como antimalware, IPS do host, monitoramento de integridade e controle de aplicações, entre outros.
Networking
Os serviços em nuvem tornam incrivelmente fácil implantar redes, dividi-las em sub-redes e até permitir a comunicação entre redes. Eles também permitem bloquear os tipos de tráfego que podem atravessar essas redes para alcançar recursos. É aqui que entram os grupos de segurança. Esses grupos de segurança são configurados por pessoas, portanto, sempre há a chance de uma porta estar aberta, o que não deveria existir, abrindo uma possível vulnerabilidade. É extremamente importante, dessa perspectiva, ter uma ideia do que um recurso de computação está falando e por que, para que as medidas de segurança adequadas possam ser aplicadas. Então, a nuvem está realmente a salvo de cibercriminosos? Não é mais seguro do que qualquer outra coisa, a menos que as organizações tenham certeza de que estão tomando a segurança em suas mãos e entendam onde suas responsabilidades começam e o provedor de serviços em nuvem termina. A guerra de armas entre os criminosos e profissionais de segurança ainda é a mesma de sempre, o campo de batalha acabou de mudar.