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ços e recursos.

Esses controles podem não estar disponíveis em todos Regiões da AWS. Para obter mais informações, consulteDisponibilidade 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

Categoria: Proteger > Desenvolvimento seguro

Severidade: crítica

Tipo de recurso: AWS::CodeBuild::Project

AWS Config regra: codebuild-project-source-repo-url-check

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

Parâmetros: nenhum

Esse controle verifica se um AWS CodeBuild O repositório de origem do projeto Bitbucket URL contém tokens de acesso pessoal ou um nome de usuário e senha. O controle falhará se o repositório de origem do Bitbucket URL 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 fontes do projeto, consulte Exemplo de várias fontes de entrada e artefatos de saída no AWS CodeBuild Guia do usuário.

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

Correção

Você pode atualizar seu CodeBuild projeto para usarOAuth.

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 seu repositório URL e as configurações adicionais, conforme necessário.

  8. Selecione Update source (Atualizar origem).

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

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

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

Categoria: Proteger > Desenvolvimento seguro

Severidade: crítica

Tipo de recurso: AWS::CodeBuild::Project

AWS Config regra: 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 em AWS CodeBuild no AWS CodeBuild Guia 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 e, em seguida, recupere-os de sua especificação de construção. Para obter instruções, consulte a caixa denominada Importante na seção Meio Ambiente no AWS CodeBuild Guia do usuário.

[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, NIST.800-53.r5 SC-2 8, NIST.800-53.r5 SC-2 8 (1), NIST .800-53.r5 SI-7 (6)

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

Severidade: baixa

Tipo de recurso: AWS::CodeBuild::Project

AWS Config regra: codebuild-project-s3-logs-encrypted

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

Parâmetros: nenhum

Esse controle verifica se o Amazon S3 registra um AWS CodeBuild os projetos sã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 ser autenticado pelo AWS acessará 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 em AWS CodeBuild no AWS CodeBuild Guia do usuário.

[CodeBuild.4] os ambientes CodeBuild do projeto devem ter um registro AWS Config duração

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

Categoria: Identificar > Registro em log

Severidade: média

Tipo de recurso: AWS::CodeBuild::Project

AWS Config regra: 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 retirou 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

AWS Config regra: codebuild-project-environment-privileged-check

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

Parâmetros: nenhum

Esse controle verifica se um AWS CodeBuild o ambiente do 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 API solicitações 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

AWS Config regra: 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 AWS CodeBuild grupos de relatórios que são exportados para um bucket do Amazon Simple Storage Service (Amazon S3) são criptografados em repouso. O controle falhará se a exportação do grupo de relatórios não for criptografada em repouso.

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

Correção

Para criptografar a exportação do grupo de relatórios para o S3, consulte Atualizar um grupo de relatórios no AWS CodeBuild Guia do usuário.