Controles do Security Hub para o AWS CloudTrail - AWS Security Hub

Controles do Security Hub para o AWS CloudTrail

Esses controles do AWS Security Hub CSPM avaliam o serviço e os recursos do AWS CloudTrail. Os controles podem não estar disponíveis em todas as Regiões da AWS. Para obter mais informações, consulte Disponibilidade de controles por região.

[CloudTrail.1] O CloudTrail deve ser habilitado e configurado com pelo menos uma trilha multirregional que inclui eventos de gerenciamento de leitura e salvamento

Requisitos relacionados: CIS AWS Foundations Benchmark v5.0.0/3.1, CIS AWS Foundations Benchmark v1.2.0/2.1, CIS AWS Foundations Benchmark v1.4.0/3.1, CIS AWS Foundations Benchmark v3.0.0/3.1, NIST.800-53.r5 AC-2(4), NIST.800-53.r5 AC-4(26), NIST.800-53.r5 AC-6(9), NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 AU-14(1), NIST.800-53.r5 CA-7, NIST.800-53.r5 SC-7(9), NIST.800-53.r5 SI-3(8), NIST.800-53.r5 SI-4(20), NIST.800-53.r5 SI-7(8), NIST.800-53.r5 SA-8(22)

Categoria: Identificar > Registro em log

Gravidade: alta

Tipo de recurso: AWS::::Account

AWS Config Regra: multi-region-cloudtrail-enabled

Tipo de programação: Periódico

Parâmetros:

  • readWriteType: ALL (não personalizável)

    includeManagementEvents: true (não personalizável)

Esse controle verifica se há pelo menos uma trilha multirregional do AWS CloudTrail que capture eventos de gerenciamento de leitura e gravação. O controle falhará se o CloudTrail estiver desabilitado ou se não houver pelo menos uma trilha do CloudTrail que capture eventos de gerenciamento de leitura e gravação.

O AWS CloudTrail registra chamadas à API da AWS da sua conta e fornece os arquivos de log. As informações registradas incluem as seguintes informações:

  • Identidade do chamador da API

  • Hora da chamada da API

  • Endereço IP de origem do chamador da API

  • Parâmetros de solicitação

  • Elementos de resposta retornados pelo AWS service (Serviço da AWS)

O CloudTrail fornece um histórico de chamadas de API do Console de gerenciamento da AWS para uma conta, incluindo chamadas de API feitas pelo AWS, AWS SDKs e pelas ferramentas de linha de comando. O histórico também inclui chamadas de API de serviços de nível superior dos Serviços da AWS, como AWS CloudFormation.

O histórico de chamadas de API da AWS gerado pelo CloudTrail possibilita a realização de análises de segurança, rastreamento de alteração de recursos e auditoria de conformidade. As trilhas de várias regiões também oferecem os seguintes benefícios.

  • A trilha de várias regiões ajuda a detectar atividades inesperadas que ocorram em regiões não utilizadas de outra forma.

  • Uma trilha de várias regiões garante que o registro em log de eventos do serviço global esteja habilitado para uma trilha por padrão. O registro em log de eventos do serviço geral registra eventos gerados pelos serviços globais da AWS.

  • Para uma trilha de várias regiões, os eventos de gerenciamento para todas as operações de leitura e gravação garantem que o CloudTrail registre as operações de gerenciamento em todos os recursos de uma Conta da AWS.

Por padrão, as trilhas do CloudTrail criadas usando o Console de gerenciamento da AWS são trilhas multirregionais.

Correção

Para criar uma nova trilha multirregional no CloudTrail, consulte Como criar uma trilha no Guia do usuário do AWS CloudTrail. Use os seguintes valores:

Campo Valor

Configurações adicionais, validação do arquivo de log

Habilitada

Escolha eventos de logs, eventos de gerenciamento, atividade de API

Ler e Gravar. Desmarque as caixas de seleção para exclusões.

Para atualizar uma trilha existente, consulte Atualizar uma trilha no Guia do usuário do AWS CloudTrail. Em Eventos de gerenciamento, para Atividade da API, escolha Ler e Gravar.

[CloudTrail.2] O CloudTrail deve ter a criptografia em repouso habilitada

Requisitos relacionados: CIS AWS Foundations Benchmark v5.0.0/3.5, CIS AWS Foundations Benchmark v1.2.0/2.7, CIS AWS Foundations Benchmark v1.4.0/3.7, CIS AWS Foundations Benchmark v3.0.0/3.5, NIST.800-53.r5 AU-9, NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-3(6), NIST.800-53.r5 SC-13, NIST.800-53.r5 SC-28, NIST.800-53.r5 SC-28(1), NIST.800-53.r5 SC-7(10), NIST.800-53.r5 SI-7(6), NIST.800-171.r2 3,3.8, PCI DSS v3.2.1/3.4, PCI DSS v4.0.1/10.3.2

Categoria: Proteger > Proteção de dados > Criptografia de dados em repouso

Gravidade: média

Tipo de recurso: AWS::CloudTrail::Trail

AWS Config Regra: cloud-trail-encryption-enabled

Tipo de programação: Periódico

Parâmetros: nenhum

Esse controle verifica se o CloudTrail está configurado para usar a criptografia do lado do servidor (SSE) do AWS KMS key. O controle falha se KmsKeyId não estiver definido.

Para obter uma camada adicional de segurança para arquivos de log confidenciais do CloudTrail, é necessário usar a criptografia do lado do servidor com AWS KMS keys (SSE-KMS) para os arquivos de log do para criptografia em repouso. Por padrão, os arquivos de log entregues pelo CloudTrail aos seus buckets são criptografados pela criptografia do servidor da Amazon com chaves de criptografia gerenciadas pelo Amazon S3 (SSE-S3).

Correção

Para habilitar a criptografia SSE-KMS para os arquivos de log do CloudTrail, consulte Atualizar uma trilha para usar uma chave KMS no Guia do usuário do AWS CloudTrail.

[CloudTrail.3] Pelo menos uma trilha do CloudTrail deve estar habilitada

Requisitos relacionados: NIST.800-171.r2 3,3.1, NIST.800-171.r2 3,14.6, NIST.800-171.r2 3,14.7, PCI DSS v3.2.1/10.1, PCI DSS v3.2.1/10.2.1, PCI DSS v3.2.1/10.2.2, PCI DSS v3.2.1/10.2.3, PCI DSS v3.2.1/10.2.4, PCI DSS v3.2.1/10.2.5, PCI DSS v3.2.1/10.2.6, PCI DSS v3.2.1/10.2.7, PCI DSS v3.2.1/10.3.1, PCI DSS v3.2.1/10.3.2, PCI DSS v3.2.1/10.3.3, PCI DSS v3.2.1/10.3.4, PCI DSS v3.2.1/10.3.5, PCI DSS v3.2.1/10.3.6, PCI DSS v4.0.1/10.2.1

Categoria: Identificar > Registro em log

Gravidade: alta

Tipo de recurso: AWS::::Account

AWS Config Regra: cloudtrail-enabled

Tipo de programação: Periódico

Parâmetros: nenhum

Esse controle verifica se uma trilha do AWS CloudTrail está habilitada na sua Conta da AWS. O controle falhará se sua conta não tiver pelo menos uma trilha do CloudTrail habilitada.

Entretanto, alguns serviços da AWS não habilitam o registro em log de todos os eventos e APIs. É necessário implementar quaisquer trilhas de auditoria adicionais que não sejam o CloudTrail e revisar a documentação de cada serviço em Integrações e serviços compatíveis do CloudTrail.

Correção

Para começar a usar o CloudTrail e criar uma trilha, consulte o Tutorial para começar a usar AWS CloudTrail no Guia do usuário do AWS CloudTrail.

[CloudTrail.4] A validação do arquivo de log do CloudTrail deve estar habilitada

Requisitos relacionados: CIS AWS Foundations Benchmark v5.0.0/3.2, CIS AWS Foundations Benchmark v1.2.0/2.2, CIS AWS Foundations Benchmark v1.4.0/3.2, CIS AWS Foundations Benchmark v3.0.0/3.2, NIST.800-53.r5 AU-9, NIST.800-53.r5 SI-4, NIST.800-53.r5 SI-7(1), NIST.800-53.r5 SI-7(3), NIST.800-53.r5 SI-7(7), NIST.800-171.r2 3,3.8, PCI DSS v3.2.1/10.5.2, PCI DSS v3.2.1/10.5.5, PCI DSS v4.0.1/10.3.2

Categoria: Proteção de dados > Integridade dos dados

Gravidade: baixa

Tipo de recurso: AWS::CloudTrail::Trail

AWS Config Regra: cloud-trail-log-file-validation-enabled

Tipo de programação: Periódico

Parâmetros: nenhum

Esse controle verifica se a validação de integridade do arquivo de log do CloudTrail está habilitada.

A validação do arquivo de log do cria um arquivo de resumo com assinatura digital que contém um hash de cada log que o grava para o Amazon S3. É possível usar esses arquivos de resumo para determinar se um arquivo de log foi modificado, excluído ou inalterado depois que o CloudTrail emitiu o log.

O Security Hub recomenda que você ative a validação de arquivos em todas as trilhas. Arquivo validação do arquivo de log fornece verificação de integridade adicional de logs do CloudTrail.

Correção

Para habilitar a validação do arquivo de log do CloudTrail, consulte Habilitar a validação da integridade do arquivo de log para o CloudTrail no Guia do usuário do AWS CloudTrail.

[CloudTrail.5] As trilhas do CloudTrail devem ser integradas ao Amazon CloudWatch Logs

Requisitos relacionados: CIS AWS Foundations Benchmark v5.0.0/3.4, PCI DSS v3.2.1/10.5.3, CIS AWS Foundations Benchmark v1.2.0/2.4, CIS AWS Foundations Benchmark v1.4.0/3.4, NIST.800-53.r5 AC-2(4), NIST.800-53.r5 AC-4(26), NIST.800-53.r5 AC-6(9), NIST.800-53.r5 AU-10, NIST.800-53.r5 AU-12, NIST.800-53.r5 AU-2, NIST.800-53.r5 AU-3, NIST.800-53.r5 AU-6(1), NIST.800-53.r5 AU-6(3), NIST.800-53.r5 AU-6(4), NIST.800-53.r5 AU-6(5), NIST.800-53.r5 AU-7(1), NIST.800-53.r5 CA-7, NIST.800-53.r5 SC-7(9), NIST.800-53.r5 SI-20, NIST.800-53.r5 SI-3(8), NIST.800-53.r5 SI-4(20), NIST.800-53.r5 SI-4(5), NIST.800-53.r5 SI-7(8)

Categoria: Identificar > Registro em log

Gravidade: baixa

Tipo de recurso: AWS::CloudTrail::Trail

AWS Config Regra: cloud-trail-cloud-watch-logs-enabled

Tipo de programação: Periódico

Parâmetros: nenhum

Esse controle verifica se as trilhas do CloudTrail estão configuradas para enviar logs ao CloudWatch Logs. O controle falhará se a propriedade CloudWatchLogsLogGroupArn da trilha estiver vazia.

O CloudTrail registra chamadas de API da AWS que são feitas em uma determinada conta. As informações gravadas incluem o seguinte:

  • Identidade do chamador da API

  • Hora da chamada da API

  • O endereço IP de origem do chamador da API

  • Parâmetros de solicitação

  • Elementos de resposta retornados pelo AWS service (Serviço da AWS)

O CloudTrail usa o Amazon S3 para armazenamento e entrega de arquivos de log. É possível capturar registros do CloudTrail em um bucket do S3 especificado para análise de longo prazo. Para realizar análise em tempo real, você pode configurar o CloudTrail para enviar logs para o CloudWatch Logs.

Para uma trilha que está ativada em todas as regiões em uma conta, o CloudTrail envia arquivos de log de todas as regiões a um grupo de logs do CloudWatch Logs.

O Security Hub recomenda que você envie logs do CloudTrail para o CloudWatch Logs. Observe que essa recomendação tem como objetivo garantir que a atividade da conta seja capturada, monitorada e devidamente alertada. É possível usar o CloudWatch Logs para configurar isso com seu Serviços da AWS. Essa recomendação não impede o uso de uma solução diferente.

O envio de logs do CloudTrail em tempo real ao CloudWatch Logs facilita o registro de atividades do histórico com base no usuário, API, recurso e endereço IP. É possível usar essa abordagem para estabelecer alertas e notificações de atividades anormais ou confidenciais da conta.

Correção

Para integrar o CloudTrail com o CloudWatch Logs, consulte Enviar eventos para o CloudWatch Logs no Guia do usuário do AWS CloudTrail.

[CloudTrail.6] Certifique-se de que o bucket do S3 usado para armazenar registros do CloudTrail não esteja acessível ao público

Requisitos relacionados: CIS AWS Foundations Benchmark v1.2.0/2.3, CIS AWS Foundations Benchmark v1.4.0/3.3, PCI DSS v4.0.1/1.4.4

Categoria: Identificar > Registro em log

Gravidade: crítica

Tipo de recurso: AWS::S3::Bucket

Regra AWS Config: (regra personalizada do Security Hub)

Tipo de programação: periódico e acionado por alterações

Parâmetros: nenhum

O CloudTrail registra um registro de cada chamada de API feita na sua conta. Esses arquivos de log são armazenados em um bucket do S3. O CIS recomenda que a política do bucket do S3 ou a lista de controle de acesso (ACL) aplicada ao bucket do S3 desses logs do CloudTrail impeça o acesso público aos logs do CloudTrail. Permitir o acesso público ao conteúdo do log do CloudTrail pode ajudar um adversário a identificar vulnerabilidades no uso ou na configuração da conta afetada.

Para executar essa verificação, o Security Hub primeiro usa lógica personalizada para procurar o bucket em que seus logs do CloudTrail estão armazenados. Depois, ele usa as regras gerenciadas pelo AWS Config para verificar se o bucket é acessível publicamente.

Se você agregar seus registros em um único bucket do S3 centralizado, o Security Hub executará a verificação somente na conta e na região em que o bucket do S3 centralizado está localizado. Para outras contas e regiões, o status do controle é Sem dados.

Se o bucket for acessível ao público, a verificação gerará uma descoberta com falha.

Correção

Para bloqueio de acesso público para seu bucket S3 do CloudTrail, consulte Configurar bloqueio do acesso público aos seus buckets S3 no Guia do usuário do Amazon Simple Storage Service. Selecione todas as quatro configurações de bloqueio de acesso público do Amazon S3.

[CloudTrail.7] Verifique se o registro de acesso ao bucket do S3 está habilitado no bucket do S3 do CloudTrail

Requisitos relacionados: CIS AWS Foundations Benchmark v1.2.0/2.6, CIS AWS Foundations Benchmark v1.4.0/3.6, CIS AWS Foundations Benchmark v3.0.0/3.4, PCI DSS v4.0.1/10.2.1

Categoria: Identificar > Registro em log

Gravidade: baixa

Tipo de recurso: AWS::S3::Bucket

Regra AWS Config: (regra personalizada do Security Hub)

Tipo de programação: Periódico

Parâmetros: nenhum

O registro de acesso ao bucket do S3 gera um log que contém os registros de acesso para cada solicitação feita no bucket do S3. Um registro contém detalhes sobre a solicitação, tais como o tipo da solicitação, os recursos especificados na solicitação e a data e hora em que a solicitação foi processada.

O O CIS recomenda que você ative o registro de acesso ao bucket no bucket do S3 do CloudTrail.

Ao habilitar o registro em log do bucket do S3 em buckets do S3 de destino, é possível capturar todos os eventos que podem afetar objetos em um bucket de destino. Configurar os logs para serem colocados em um bucket separado permite o acesso às informações de log, o que pode ser útil em fluxos de resposta a incidentes e segurança.

Para executar essa verificação, o Security Hub primeiro usa a lógica personalizada para procurar o bucket em que seus logs do CloudTrail estão armazenados e usa a regra gerenciada pelo AWS Config para verificar se o registro em log está habilitado.

Se o CloudTrail entregar arquivos de log de várias Contas da AWS em um único bucket do Amazon S3 de destino, o Security Hub avaliará esse controle somente em relação ao bucket de destino na região em que ele está localizado. Isso simplifica suas descobertas. No entanto, é necessário ativar o CloudTrail em todas as contas que entregam registros ao bucket de destino. Para todas as contas, exceto aquela que contém o bucket de destino, o status do controle é Sem dados.

Correção

Para habilitar o registro de acesso ao servidor para seu bucket do CloudTrail S3, consulte Habilitar registro em log de acesso ao servidor do Amazon S3 no Guia do usuário do Amazon Simple Storage Service.

[CloudTrail.9] As trilhas do CloudTrail devem ser marcadas

Categoria: Identificar > Inventário > Marcação

Gravidade: baixa

Tipo de recurso: AWS::CloudTrail::Trail

Regra AWS Config: tagged-cloudtrail-trail (regra personalizada do Security Hub)

Tipo de programação: acionado por alterações

Parâmetros:

Parameter Descrição Tipo Valores personalizados permitidos Valor padrão do Security Hub
requiredTagKeys A lista de chaves que não são de sistema que o recurso avaliado deve conter. Chaves de tag fazem distinção entre maiúsculas e minúsculas. StringList (máximo de 6 itens) 1 a 6 chaves de tag que atendam aos requisitos da AWS. No default value

Esse controle verifica se uma trilha do AWS CloudTrail tem tags com as chaves específicas definidas no parâmetro requiredTagKeys. O controle falhará se a trilha não tiver nenhuma chave de tag ou se não tiver todas as chaves especificadas no parâmetro requiredTagKeys. Se o parâmetro requiredTagKeys não for fornecido, o controle verificará apenas a existência de uma chave de tag e falhará se a trilha não estiver marcada com nenhuma chave. As tags de sistema, que são aplicadas automaticamente e começam com aws:, são ignoradas.

Uma tag é um rótulo que você atribui a um recurso da AWS e consiste em uma chave e um valor opcional. É possível criar tags para categorizar recursos por finalidade, proprietário, ambiente ou outros critérios. As tags podem ajudar você a identificar, organizar, pesquisar e filtrar recursos. A marcação também ajuda você a rastrear os proprietários de recursos responsáveis por ações e notificações. Ao usar tags, é possível implementar o controle de acesso por atributo (ABAC) como uma estratégia de autorização, que define permissões com base nas tags. É possível anexar tags a entidades do IAM (usuários ou perfis) e a recursos da AWS. É possível criar uma única política de ABAC ou um conjunto separado de políticas para as entidades do IAM. É possível criar essas políticas de ABAC para permitir operações quando a tag da entidade principal corresponder à tag do recurso. Para obter mais informações, consulte O que é ABAC para AWS? no Guia do usuário do IAM.

nota

Não adicione informações de identificação pessoal (PII) nem outras informações confidenciais ou sensíveis em tags. As tags são acessíveis a muitos Serviços da AWS, incluindo o AWS Billing. Para saber mais sobre as práticas recomendadas de marcação, consulte Tagging your AWS resources na Referência geral da AWS.

Correção

Para adicionar tags a uma trilha do CloudTrail, consulte AddTags na AWS CloudTrail API Reference.

[CloudTrail.10] Os armazenamentos de dados de eventos do CloudTrail Lake devem ser criptografados com AWS KMS keys gerenciadas pelo cliente

Requisitos relacionados: NIST.800-53.r5 AU-9, NIST.800-53.r5 CA-9(1), NIST.800-53.r5 CM-3(6), NIST.800-53.r5 SC-7(10), NIST.800-53.r5 SC-12(2), NIST.800-53.r5 SC-13, NIST.800-53.r5 SC-28, NIST.800-53.r5 SC-28(1), NIST.800-53.r5 SI-7(6)

Categoria: Proteger > Proteção de dados > Criptografia de dados em repouso

Gravidade: média

Tipo de recurso: AWS::CloudTrail::EventDataStore

AWS Config Regra: event-data-store-cmk-encryption-enabled

Tipo de programação: Periódico

Parâmetros:

Parameter Descrição Tipo Valores personalizados permitidos Valor padrão do Security Hub

kmsKeyArns

Uma lista de Nomes do recurso da Amazon (ARN) das AWS KMS keys a serem incluídos na avaliação. O controle gerará uma descoberta FAILED se um armazenamento de dados de eventos não estiver criptografado com uma chave do KMS na lista.

StringList (máximo de 3 itens)

De 1 a 3 ARNs de chaves do KMS existentes. Por exemplo: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab.

Nenhum valor padrão

Esse controle verifica se um armazenamento de dados de eventos do AWS CloudTrail Lake é criptografado em repouso com uma AWS KMS key gerenciada pelo cliente. O controle falhará se o armazenamento de dados de eventos não for criptografado com uma chave do KMS gerenciada pelo cliente. Opcionalmente, é possível especificar uma lista de chaves do KMS para o controle incluir na avaliação.

Por padrão, o AWS CloudTrail Lake criptografa os armazenamentos de dados de eventos com chaves gerenciadas pelo Amazon S3 (SSE-S3), usando um algoritmo AES-256. Para controle adicional, é possível configurar o CloudTrail Lake para criptografar um armazenamento de dados do evento com uma AWS KMS key gerenciada pelo cliente (SSE-KMS) em vez disso. Uma chave do KMS gerenciada pelo cliente é uma AWS KMS key que você cria, possui e gerencia na sua Conta da AWS. Você tem controle total sobre esse tipo de chave do KMS. Isso inclui definir e manter a política de chaves, gerenciar concessões, alternar material criptográfico, atribuir tags, criar aliases e habilitar e desabilitar a chave. É possível usar uma chave do KMS gerenciada pelo cliente em operações de criptografia para seus dados do CloudTrail e auditar o uso com os logs do CloudTrail.

Correção

Para obter informações sobre como criptografar um armazenamento de dados de eventos do AWS CloudTrail Lake com uma AWS KMS key especificada por você, consulte Atualização de um armazenamento de dados de eventos no Guia do usuário do AWS CloudTrail. Após associar um armazenamento de dados de eventos a uma chave do KMS, não será possível remover ou alterar a chave do KMS.