Fechando o Gap de Cloud Security: Auto Remediation na Infraestrutura da AWS

O Cloud One Conformity Auto-Remediation é uma ferramenta de automação que resolve em tempo real vários problemas de segurança detectados na sua conta Amazon Web Services.

À medida que mais organizações migram para a nuvem da AWS por seus inúmeros benefícios, a mudança não deixa de ter desafios quando se trata da segurança dessa nova infraestrutura. Como vimos em casos como as principais violações do Uber e da Verizon, é crucial que os problemas de segurança sejam resolvidos rapidamente para evitar a exploração por agentes maliciosos. 

Dito isso, é simplesmente impossível identificar e resolver manualmente todos os problemas de segurança em um ambiente em nuvem da AWS.

O Desafio

“O volume de utilização da nuvem pública está crescendo rapidamente, o que inevitavelmente leva a um corpo maior de coisas sensíveis que estão potencialmente em risco”

Jay Heiser, vice-presidente e líder de segurança em nuvem da Gartner, Inc.

Ao contrário do que muitos possam pensar, a principal responsabilidade pela proteção de dados na nuvem está no cliente que usa a nuvem. A AWS utiliza o “Modelo de Responsabilidade Compartilhada”, onde o gerenciamento de segurança é compartilhado entre a AWS e seu cliente. Esse modelo compartilhado define claramente as responsabilidades da AWS:

 A Amazon Web Services é responsável por proteger a infraestrutura que executa todos os serviços oferecidos na nuvem da AWS. Essa infraestrutura é composta pelo hardware, software, rede e instalações que executam os serviços da AWS Cloud.

Sendo assim, os clientes da AWS são responsáveis por proteger os dados armazenados na AWS e em qualquer aplicação personalizada implementada. O “Modelo de Responsabilidade Compartilhada” também implica configurações que o cliente deve executar como parte de suas responsabilidades de segurança. Por exemplo, serviços como EC2, VPC e S3 são classificados como Infraestrutura como Serviço (IaaS) e exigem que o cliente execute as configurações de segurança necessárias (por exemplo, implemente políticas de controle de acesso apropriadas) e tarefas de gerenciamento (por exemplo, ative o AWS CloudTrail e o AWS Config).

Os Riscos

Existem muitos casos em que os clientes não conseguem gerenciar adequadamente a sua parte no Modelo de Responsabilidade Compartilhada da AWS. Um tema recorrente relatado pelas organizações de cibersegurança é os buckets Amazon S3 configurados incorretamente, deixando terabytes de dados corporativos expostos à Internet pública. Alguns exemplos:

  • Maior Editora Financeira

Em maio de 2017, a empresa de segurança cibernética UpGuard relatou um repositório de dados baseado em nuvem neste caso, um AWS S3 bucket de propriedade de uma empresa americana de publicação e informações financeiras. O bucket S3 foi configurado para permitir acesso semi público e expôs os detalhes financeiros de milhões de clientes da empresa. A investigação mostrou que o bucket exposto foi configurado por meio de Listas de Controle de Acesso S3 (ACLs) para permitir que todos os usuários autenticados da AWS (autorizados ou não) baixem os dados por meio do URL do repositório.

Conglomerado Multinacional de Telecomunicações

Um mês depois, a UpGuard descobriu que outro repositório de dados S3 configurado incorretamente estava expondo os dados da conta de mais de 6 milhões de seus clientes. O bucket foi deixado desprotegido pelo fornecedor terceirizado, NICE Systems, que o configurou para permitir acesso público; seu conteúdo, os detalhes pessoais confidenciais dos clientes, era totalmente baixável.

Empresa de Serviços de Entrega em Todo o Mundo

Em fevereiro de 2018, um bucket Amazon S3 configurado incorretamente, afiliado a esta empresa, relatou ter exposto informações pessoais de mais de 100.000 usuários. De acordo com o Kromtech Security Center, os documentos digitalizados expostos, incluindo passaportes, carteiras de motorista e IDs de segurança, foram vazados do bucket S3. Essa exposição representa um exemplo poderoso dos riscos de fornecedores terceirizados manipularem dados confidenciais.

A Solução

Para ajudar a enfrentar esses desafios de segurança e avaliar a postura de compliance do seu ambiente da AWS, o Cloud  One Conformity criou o Auto Remediation.

A Auto Remediation se enquadra na automação de segurança: o manuseio automático de tarefas relacionadas à segurança cibernética, como a varredura por vulnerabilidades e a implementação de medidas de segurança proativas, sem intervenção humana.

Usando a integração entre AWS CloudWatch e CloudTrail, o Cloud One Conformity Auto Remediation pode detectar em tempo real vários incidentes de segurança, incluindo:

  • modificar grupos de segurança associados a instâncias EC2 ou RDS para permitir acesso irrestrito (0.0.0.0/0) na porta TCP 22 (SSH) ou na porta 3306 (MySQL);
  • reconfigurar as ACLs dos buckets S3 para permitir acesso WRITE (ou seja, UPLOAD / DELETE) a todos;
  • expor clusters Redshift ativando seu recurso de acesso público;
  • desativar o recurso de Termination Protection para stacks do CloudFormation.

Depois que esses incidentes são encontrados, a Auto-Remediation lida com as correções de segurança necessárias de maneira automatizada, sem assistência do usuário.

Vamos imaginar por um momento que um bucket S3 em sua conta da AWS, com dados pessoais de clientes, seja exposto publicamente. Esse é provavelmente o problema mais sensível ao tempo que você pode enfrentar, e aguardar notificações e correções manuais poderá resultar em danos catastróficos por meio de acesso não autorizado. Com o Auto-Remediation, o Cloud One Conformity automatiza o processo de correção de ponta a ponta, para que a violação de segurança possa ser fechada imediatamente e sem a sua intervenção.

Nota: As ACLs (listas de controle de acesso) do AWS S3 permitem especificar permissões que concedem acesso a objetos e buckets do S3. Quando o S3 recebe uma solicitação de um objeto, verifica se o solicitante possui as permissões de acesso necessárias na ACL associada. Por exemplo, você pode configurar uma ACL para um objeto S3 para que apenas os usuários da sua conta da AWS possam acessá-lo ou torná-lo público para que possa ser acessado por qualquer pessoa.

Como Funciona

O Cloud One Conformity lida com todo o processo, incluindo a detecção, em tempo real, usando o seguinte fluxo de trabalho: falha -> alerta (por meio de canais de comunicação predefinidos) -> Auto Remediation.

  1. Um bucket do S3 torna-se acessível ao público por meio de listas de controle de acesso do S3 (ACLs).
  2. Cloud One Conformity identifica o risco de segurança em tempo real e notifica o usuário instantaneamente via Slack.
  3. O Cloud One Conformity publica uma mensagem no tópico SNS especificado.
  4. O tópico SNS aciona a função Lambda “Orchestrator”, que chama as funções de Auto Remediation necessárias nesse caso, a função “BucketPublicReadAcpAccess”.
  5. A função de Auto Remediation do S3 “BucketPublicReadAcpAccess” atualiza automaticamente a ACL do bucket do S3 configurado incorretamente e fecha a lacuna de segurança.

A ferramenta pode ser facilmente configurada para incluir ou excluir regras de segurança, dependendo de suas necessidades, bem como de seus canais de comunicação preferidos. Os canais suportados são SNS, SMS, E-mail, Slack, PageDuty, JIRA, ServiceNow e Zendesk.

Com o Auto Remediation, o Cloud One Conformity contribui para a  automação de segurança ao impedir erros humanos e ineficiências operacionais que podem atrapalhar o processo de resolução.

Figura 1. Função Lambda Orchestrator

O projeto de auto-remediate é aberto e esta disponível no Github, assim os clientes podem também adicionarem novos funcionalidades ou customizar as ações. 

  Artigo publicado originalmente no Medium da Cloud Conformity.