Como corrigir um bucket do S3 possivelmente comprometido - Amazon GuardDuty

Como corrigir um bucket do S3 possivelmente comprometido

Quando o GuardDuty gera Tipos de descoberta da Proteção do S3 do GuardDuty, isso indica que seus buckets do Amazon S3 foram comprometidos. Caso o comportamento que causou a descoberta fosse esperado em seu ambiente, considere criarRegras de supressão. Se esse comportamento não era esperado, siga estas etapas recomendadas para corrigir um bucket do Amazon S3 possivelmente comprometido em seu ambiente AWS:

  1. Identifique o recurso do S3 possivelmente comprometido.

    Uma descoberta do GuardDuty para o S3 listará o bucket do S3 associado, seu nome do recurso da Amazon (ARN) e seu proprietário nos detalhes da descoberta.

  2. Identifique a origem da atividade suspeita e a chamada de API usada.

    A chamada de API usada será listada como API nos detalhes da descoberta. A origem será uma entidade principal do IAM (um perfil, um usuário ou uma conta do IAM) e os detalhes de identificação serão listados na descoberta. Dependendo do tipo de origem, o endereço IP remoto ou as informações do domínio de origem estarão disponíveis e poderão ajudar a avaliar se a origem foi autorizada. Caso a descoberta envolva credenciais de uma instância do Amazon EC2, os detalhes desse recurso também serão incluídos.

  3. Determine se a origem da chamada foi autorizada a acessar o recurso identificado.

    Por exemplo, considere o seguinte:

    • Caso um usuário do IAM esteja envolvido, é possível que suas credenciais tenham sido possivelmente comprometidas? Para obter mais informações, consulte Como corrigir credenciais possivelmente AWS comprometidas.

    • Caso uma API tenha sido invocada a partir de uma entidade principal que não tenha histórico anterior de invocação desse tipo de API, essa fonte precisa de permissões de acesso para essa operação? É possível restringir ainda mais as permissões do bucket?

    • Se o acesso foi visto a partir do nome de usuário ANONYMOUS_PRINCIPAL com o tipo de usuário AWSAccount, isso indica que o bucket é público e foi acessado. Esse bucket deveria ser público? Se a resposta for não, revise as recomendações de segurança abaixo a fim de encontrar soluções alternativas para compartilhar recursos do S3.

    • Se o acesso foi feito por meio de uma chamada PreflightRequest bem-sucedida vista do nome de usuário ANONYMOUS_PRINCIPAL com o tipo de usuário AWSAccount, isso indica que o bucket tem uma política de compartilhamento de recursos de origem cruzada (CORS) definida. Esse bucket deve ter uma política de CORS? Se a resposta for não, certifique-se de que o bucket não esteja designado como público por engano e analise as recomendações de segurança abaixo a fim de encontrar soluções alternativas para compartilhar recursos do S3. Para obter mais informações sobre o CORS, consulte Usar o compartilhamento de recursos de origem cruzada (CORS) no guia do usuário do S3.

  4. Determine se o bucket do S3 contém dados confidenciais.

    Use o Amazon Macie para determinar se o bucket do S3 contém dados confidenciais, como informações de identificação pessoal (PII), dados financeiros ou credenciais. Se a descoberta automatizada de dados confidenciais estiver habilitada para sua conta do Macie, revise os detalhes do bucket do S3 a fim de entender melhor o conteúdo do bucket do S3. Se esse atributo estiver desabilitado em sua conta do Macie, recomendamos habilitá-lo para agilizar sua avaliação. Outra alternativa é criar e executar um trabalho de descoberta de dados confidenciais para inspecionar os objetos do bucket do S3 em busca de dados confidenciais. Para obter mais informações, consulte Discovering sensitive data with Amazon Macie.

A descoberta pode ser ignorada se o acesso foi autorizado. O console https://console.aws.amazon.com/guardduty/ permite configurar regras para suprimir totalmente as descobertas individuais e impedir sua exibição. Para obter mais informações, consulte Regras de supressão no GuardDuty.

Ao determinar que seus dados do S3 foram expostos ou acessados por uma parte não autorizada, analise as seguintes recomendações de segurança do S3 para reforçar as permissões e restringir o acesso. As soluções de correção apropriadas serão determinadas pelas necessidades de seu ambiente específico.

Recomendações com base em necessidades específicas de acesso a buckets do S3

A lista a seguir fornece recomendações com base nas necessidades específicas de acesso ao bucket do Amazon S:

  • Para limitar o acesso público ao uso de dados do S3 de forma centralizada, bloqueie o acesso público do S3. As configurações de bloqueio de acesso público podem ser habilitadas para pontos de acesso, buckets e contas da AWS por meio de quatro configurações diferentes para controlar a granularidade do acesso. Para obter mais informações, consulte Bloquear configurações de acesso público no Guia do usuário do Amazon S3.

  • As políticas de acesso da AWS podem ser usadas para controlar como os usuários do IAM acessam seus recursos ou como seus buckets podem ser acessados. Para obter mais informações, consulte Usar políticas de bucket e políticas de usuário no Guia do usuário do Amazon S3.

    Além disso, você pode usar endpoints da nuvem privada virtual (VPC) com políticas de bucket do S3 para restringir o acesso a endpoints da VPC específicos. Para obter mais informações, consulte Controlar o acesso a partir de endpoints da VPC com políticas de bucket no Guia do usuário do Amazon S3.

  • Para permitir que entidades confiáveis fora de sua conta acessem temporariamente os objetos do S3, é possível criar um URL pré-assinado por meio do S3. Esse acesso é criado com as credenciais da sua conta e, dependendo das credenciais usadas, pode durar de 6 horas a 7 dias. Para obter mais informações, consulte Usar URLs pré-assinados para baixar e fazer upload de objetos no Guia do Usuário do Amazon S3.

  • Para os casos de uso que exigem o compartilhamento de objetos do S3 entre diferentes origens, use os Pontos de Acesso S3 para criar conjuntos de permissões que restringem o acesso somente aos que estão em sua rede privada. Para obter mais informações, consulte Gerenciar o acesso a conjunto de dados compartilhados com pontos de acesso no Guia do usuário do Amazon S3.

  • Para conceder acesso seguro aos seus recursos do S3 para outras contas da AWS, use uma lista de controle de acesso (ACL). Para obter mais informações, consulte Visão geral da lista de controle de acesso (ACL) no Guia do usuário do Amazon S3.

Para obter mais informações sobre as opções de segurança do S3, consulte Práticas recomendadas de segurança para o Amazon S3 no Guia do usuário do Amazon S3.