Controles do Security Hub para CodeBuild - AWS Security Hub

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Controles do Security Hub para CodeBuild

Esses controles do Security Hub avaliam o AWS CodeBuild serviço e os recursos.

Esses controles podem não estar disponíveis em todos Regiões da AWS. Para obter mais informações, consulte Disponibilidade de controles por região.

[CodeBuild.1] O repositório CodeBuild de origem do Bitbucket não URLs deve conter credenciais confidenciais

Requisitos relacionados: PCI DSS v3.2.1/8.2.1 NIST.800-53.r5 SA-3, PCI DSS v4.0.1/8.3.2

Categoria: Proteger > Desenvolvimento seguro

Severidade: crítica

Tipo de recurso: AWS::CodeBuild::Project

Regra do AWS Config : codebuild-project-source-repo-url-check

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

Parâmetros: nenhum

Esse controle verifica se o URL do repositório de origem do Bitbucket do AWS CodeBuild projeto contém tokens de acesso pessoais ou um nome de usuário e senha. O controle falhará se o URL do repositórios Bitbucket de fontes contiver tokens de acesso pessoais ou um nome de usuário e senha.

nota

Esse controle avalia a fonte primária e as fontes secundárias de um projeto de CodeBuild compilação. Para obter mais informações sobre fonte de projetos, consulte Multiple input sources and output artifacts sample no AWS CodeBuild User Guide.

As credenciais de login nunca devem ser armazenadas ou transmitidas em texto puro ou aparecer no URL do repositório de origem. Em vez de tokens de acesso pessoal ou credenciais de login, você deve acessar seu provedor de origem e alterar a URL do repositório de origem para conter somente o caminho para a localização do repositório Bitbucket. CodeBuild O uso de tokens de acesso pessoais ou credenciais de login poderia resultar em exposição não intencional de dados ou acesso não autorizado.

Correção

Você pode atualizar seu CodeBuild projeto para usar OAuth.

Para remover a autenticação básica/(GitHub) Personal Access Token da fonte do CodeBuild projeto
  1. Abra o CodeBuild console em https://console.aws.amazon.com/codebuild/.

  2. Escolha o projeto de compilação que contém tokens de acesso pessoal ou um nome de usuário e uma senha.

  3. Em Edit (Editar), selecione Source (Origem).

  4. Escolha Desconectar de GitHub /Bitbucket.

  5. Escolha Conectar usando OAuth e, em seguida, escolha Conectar a GitHub/Bitbucket.

  6. Quando solicitado, escolha authorize as appropriate (autorizar conforme apropriado).

  7. Redefina as configurações de URL do repositório e configuração adicional, conforme necessário.

  8. Selecione Update source (Atualizar origem).

Para obter mais informações, consulte exemplos baseados em casos de CodeBuild uso no Guia do AWS CodeBuild usuário.

[CodeBuild.2] as variáveis de ambiente CodeBuild do projeto não devem conter credenciais de texto não criptografado

Requisitos relacionados: NIST.800-53.r5 IA-5 (7), PCI DSS v3.2.1/8.2.1 NIST.800-53.r5 SA-3, PCI DSS v4.0.1/8.3.2

Categoria: Proteger > Desenvolvimento seguro

Severidade: crítica

Tipo de recurso: AWS::CodeBuild::Project

Regra do AWS Config : codebuild-project-envvar-awscred-check

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

Parâmetros: nenhum

Este controle verifica se o projeto contém as variáveis de ambiente AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY.

As credenciais de autenticação AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY nunca devem ser armazenadas em texto não criptografado, pois isso poderia levar à exposição não intencional de dados e acesso não autorizado.

Correção

Para remover variáveis de ambiente de um CodeBuild projeto, consulte Alterar as configurações de um projeto de compilação AWS CodeBuild no Guia AWS CodeBuild do usuário. Certifique-se de que nada esteja selecionado para as Variáveis de ambiente.

Você pode armazenar variáveis de ambiente com valores confidenciais no AWS Systems Manager Parameter Store ou AWS Secrets Manager recuperá-las de sua especificação de compilação. Para obter instruções, consulte a caixa chamada Importante na seção Ambiente do Guia do usuário do AWS CodeBuild .

[CodeBuild.3] Os registros do CodeBuild S3 devem ser criptografados

Requisitos relacionados: NIST.800-53.r5 CA-9 (1), NIST.800-53.r5 CM-3(6), NIST.800-53.r5 SC-1 3, 8, NIST.800-53.r5 SC-2 8 (1), NIST.800-53.r5 NIST.800-53.r5 SC-2 SI-7 (6), PCI DSS v4.0.1/10.3.2

Categoria: Proteger > Proteção de dados > Criptografia de data-at-rest

Severidade: baixa

Tipo de recurso: AWS::CodeBuild::Project

Regra do AWS Config : codebuild-project-s3-logs-encrypted

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

Parâmetros: nenhum

Esse controle verifica se os registros do Amazon S3 de um AWS CodeBuild projeto estão criptografados. O controle falhará se a criptografia for desativada para os registros do S3 de um CodeBuild projeto.

A criptografia de dados em repouso é uma prática recomendada para adicionar uma camada de gerenciamento de acesso aos seus dados. Criptografar os registros em repouso reduz o risco de um usuário não autenticado acessar AWS os dados armazenados no disco. Ele adiciona outro conjunto de controles de acesso para limitar a capacidade de usuários não autorizados acessarem os dados.

Correção

Para alterar as configurações de criptografia dos registros CodeBuild do projeto S3, consulte Alterar as configurações de um projeto de compilação AWS CodeBuild no Guia do AWS CodeBuild usuário.

[CodeBuild.4] ambientes de CodeBuild projeto devem ter uma duração de registro AWS Config

Requisitos relacionados: NIST.800-53.r5 AC-2 (12), (4), NIST.800-53.r5 AC-2 (26), (9),, NIST.800-53.r5 AC-4 NIST.800-53.r5 AC-6 (9), NIST.800-53.r5 SI-3 NIST.800-53.r5 SC-7 (8) 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-9(7), NIST.800-53.r5 CA-7, NIST.800-53.r5 SI-4, NIST.800-53.r5 SI-4 (20), NIST.800-53.r5 SI-7 (8)

Categoria: Identificar > Registro em log

Severidade: média

Tipo de recurso: AWS::CodeBuild::Project

Regra do AWS Config : codebuild-project-logging-enabled

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

Parâmetros: nenhum

Esse controle verifica se um ambiente de CodeBuild projeto tem pelo menos uma opção de log, seja para o S3 ou para CloudWatch os logs habilitados. Esse controle falhará se um ambiente de CodeBuild projeto não tiver pelo menos uma opção de log ativada.

Do ponto de vista da segurança, o registro em log é um atributo importante para permitir futuros esforços forenses no caso de incidentes de segurança. Correlacionar anomalias em CodeBuild projetos com detecções de ameaças pode aumentar a confiança na precisão dessas detecções de ameaças.

Correção

Para obter mais informações sobre como definir as configurações CodeBuild do registro do projeto, consulte Criar um projeto de compilação (console) no Guia CodeBuild do usuário.

[CodeBuild.5] ambientes de CodeBuild projeto não devem ter o modo privilegiado ativado

Importante

O Security Hub descontinuou esse controle em abril de 2024. Para obter mais informações, consulte Log de alterações dos controles do Security Hub.

Requisitos relacionados: NIST.800-53.r5 AC-2 (1) NIST.800-53.r5 AC-3,, NIST.800-53.r5 AC-3 (15), NIST.800-53.r5 AC-3 (7), NIST.800-53.r5 AC-5, NIST.800-53.r5 AC-6, NIST.800-53.r5 AC-6 (10), NIST.800-53.r5 AC-6 (2)

Categoria: Proteger > Gerenciamento de acesso seguro

Severidade: alta

Tipo de recurso: AWS::CodeBuild::Project

Regra do AWS Config : codebuild-project-environment-privileged-check

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

Parâmetros: nenhum

Esse controle verifica se um ambiente de AWS CodeBuild projeto tem o modo privilegiado ativado ou desativado. O controle falhará se um ambiente de CodeBuild projeto tiver o modo privilegiado ativado.

Por padrão, os contêineres do Docker não permitem acesso a nenhum dispositivo. O modo privilegiado concede acesso a contêiner Docker de um projeto de compilação a todos os dispositivos. A configuração privilegedMode com valor true permite que o daemon do Docker seja executado dentro de um contêiner do Docker. O daemon do Docker escuta as solicitações da API do Docker e gerencia objetos do Docker, como imagens, contêineres, redes e volumes. Este parâmetro só deve ser definido como true se o projeto de compilação for usado para criar imagens de Docker. Caso contrário, essa configuração deve ser desativada para impedir o acesso não intencional ao Docker APIs e ao hardware subjacente do contêiner. A configuração de privilegedMode para false ajuda a proteger recursos essenciais contra adulteração e exclusão.

Correção

Para definir as configurações do ambiente do CodeBuild projeto, consulte Criar um projeto de compilação (console) no Guia CodeBuild do usuário. Na seção Ambiente, não selecione a configuração Privilegiada.

[CodeBuild.7] as exportações CodeBuild do grupo de relatórios devem ser criptografadas em repouso

Categoria: Proteger > Proteção de dados > Criptografia de data-at-rest

Severidade: média

Tipo de recurso: AWS::CodeBuild::ReportGroup

Regra do AWS Config : codebuild-report-group-encrypted-at-rest

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

Parâmetros: nenhum

Esse controle verifica se os resultados do teste de um grupo de AWS CodeBuild relatórios que são exportados para um bucket do Amazon Simple Storage Service (Amazon S3) estão criptografados em repouso. O controle falhará se o grupo de relatórios não for criptografado em repouso.

Dados em repouso se referem a dados armazenados em um armazenamento persistente e não volátil por qualquer período. Criptografar os dados em repouso ajuda a proteger sua confidencialidade, reduzindo o risco de que um usuário não autorizado possa acessá-los.

Correção

Para criptografar a exportação do grupo de relatórios para o S3, consulte Update a report group no AWS CodeBuild User Guide.