Controles de Security Hub para CodeBuild - AWS Security Hub

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Controles de Security Hub para CodeBuild

Estos controles de Security Hub evalúan la AWS CodeBuild servicio y recursos.

Es posible que estos controles no estén disponibles en todos Regiones de AWS. Para obtener más información, consulteDisponibilidad de los controles por región.

[CodeBuild.1] CodeBuild El repositorio fuente de Bitbucket no URLs debe contener credenciales confidenciales

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

Categoría: Proteger - Desarrollo seguro

Gravedad: crítica

Tipo de recurso: AWS::CodeBuild::Project

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

Tipo de horario: provocado por un cambio

Parámetros: ninguno

Este control comprueba si un AWS CodeBuild El repositorio fuente de Bitbucket del proyecto URL contiene tokens de acceso personales o un nombre de usuario y una contraseña. El control falla si el repositorio fuente de Bitbucket URL contiene tokens de acceso personales o un nombre de usuario y una contraseña.

nota

Este control evalúa tanto la fuente principal como las fuentes secundarias de un proyecto de CodeBuild compilación. Para obtener más información sobre las fuentes del proyecto, consulte el ejemplo de múltiples fuentes de entrada y artefactos de salida en el AWS CodeBuild Guía del usuario.

Las credenciales de inicio de sesión no deben almacenarse ni transmitirse en texto claro ni aparecer en el repositorio URL de origen. En lugar de utilizar fichas de acceso personales o credenciales de inicio de sesión, debes acceder a tu proveedor de origen y cambiar tu repositorio de origen URL para que contenga solo la ruta a la ubicación del repositorio de Bitbucket. CodeBuild El uso de tokens de acceso personales o credenciales de inicio de sesión podría provocar la exposición involuntaria de los datos o el acceso no autorizado.

Corrección

Puedes actualizar tu CodeBuild proyecto para usarlo. OAuth

Para eliminar el token de autenticación básica/(GitHub) de acceso personal de la fuente del CodeBuild proyecto
  1. Abra la CodeBuild consola en https://console.aws.amazon.com/codebuild/.

  2. Elija el proyecto de compilación que contiene tokens de acceso personales o un nombre de usuario y una contraseña.

  3. En Edit (Editar), elija Source (Origen).

  4. Selecciona Desconectar de GitHub /Bitbucket.

  5. Selecciona Conectar mediante OAuth y, a continuación, selecciona Conectar a GitHub /Bitbucket.

  6. Cuando se le solicite, elija authorize as appropriate (autorizar según corresponda).

  7. Reconfigura tu repositorio URL y los ajustes de configuración adicionales, según sea necesario.

  8. Elija Update source (Actualizar origen).

Para obtener más información, consulte los ejemplos basados en casos de CodeBuild uso en la AWS CodeBuild Guía del usuario.

[CodeBuild.2] Las variables de entorno CodeBuild del proyecto no deben contener credenciales de texto claro

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

Categoría: Proteger - Desarrollo seguro

Gravedad: crítica

Tipo de recurso: AWS::CodeBuild::Project

AWS Config regla: codebuild-project-envvar-awscred-check

Tipo de horario: provocado por un cambio

Parámetros: ninguno

Este control comprueba si el proyecto contiene las variables de entorno AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY.

Las credenciales de autenticación AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY no deben almacenarse nunca en texto sin cifrar, ya que esto podría conducir a una exposición no intencionada de los datos y a un acceso no autorizado.

Corrección

Para eliminar las variables de entorno de un CodeBuild proyecto, consulte Cambiar la configuración de un proyecto de compilación en AWS CodeBuild en la AWS CodeBuild Guía del usuario. Asegúrese de que no haya nada seleccionado para las Variables de entorno.

Puede almacenar variables de entorno con valores sensibles en la AWS Systems Manager Almacén de parámetros o AWS Secrets Manager y luego recupérelos de sus especificaciones de construcción. Para obtener instrucciones, consulta el recuadro denominado Importante en la sección Medio ambiente del AWS CodeBuild Guía del usuario.

[CodeBuild.3] Los registros de CodeBuild S3 deben estar cifrados

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)

Categoría: Proteger > Protección de datos > Cifrado de data-at-rest

Gravedad: baja

Tipo de recurso: AWS::CodeBuild::Project

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

Tipo de horario: provocado por un cambio

Parámetros: ninguno

Este control comprueba si Amazon S3 registra un AWS CodeBuild los proyectos están cifrados. El control falla si se desactiva el cifrado de los registros de S3 de un CodeBuild proyecto.

El cifrado de los datos en reposo es una práctica recomendada para añadir una capa de gestión del acceso a los datos. El cifrado de los registros en reposo reduce el riesgo de que un usuario no se autentique mediante AWS accederá a los datos almacenados en el disco. Añade otro conjunto de controles de acceso para limitar la capacidad de los usuarios no autorizados de acceder a los datos.

Corrección

Para cambiar la configuración de cifrado de los registros CodeBuild del proyecto S3, consulte Cambiar la configuración de un proyecto de compilación en AWS CodeBuild en la AWS CodeBuild Guía del usuario.

[CodeBuild.4] los entornos de CodeBuild proyectos deben tener un registro AWS Config Duración

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

Categoría: Identificar - Registro

Gravedad: media

Tipo de recurso: AWS::CodeBuild::Project

AWS Config regla: codebuild-project-logging-enabled

Tipo de horario: provocado por un cambio

Parámetros: ninguno

Este control comprueba si el entorno de un CodeBuild proyecto tiene al menos una opción de registro, ya sea para S3 o para CloudWatch los registros habilitados. Este control falla si un entorno de CodeBuild proyecto no tiene habilitada al menos una opción de registro.

Desde una perspectiva de seguridad, el registro es una característica importante para permitir futuros esfuerzos forenses en caso de cualquier incidente de seguridad. La correlación de las anomalías en los CodeBuild proyectos con las detecciones de amenazas puede aumentar la confianza en la precisión de esas detecciones de amenazas.

Corrección

Para obtener más información sobre cómo configurar los ajustes CodeBuild del registro del proyecto, consulte Crear un proyecto de compilación (consola) en la Guía del usuario. CodeBuild

[CodeBuild.5] Los entornos de CodeBuild proyectos no deberían tener habilitado el modo privilegiado

importante

Security Hub retiró este control en abril de 2024. Para obtener más información, consulte Registro de cambios en los controles de 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)

Categoría: Proteger > Administración de acceso seguro

Gravedad: alta

Tipo de recurso: AWS::CodeBuild::Project

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

Tipo de horario: provocado por un cambio

Parámetros: ninguno

Este control comprueba si un AWS CodeBuild el entorno del proyecto tiene el modo privilegiado activado o desactivado. El control falla si el entorno de un CodeBuild proyecto tiene habilitado el modo privilegiado.

De forma predeterminada, los contenedores Docker no permiten el acceso a ningún dispositivo. El modo privilegiado otorga acceso al contenedor Docker de un proyecto de compilación a todos los dispositivos. La configuración privilegedMode con un valor true permite que el daemon de Docker se ejecute dentro de un contenedor de Docker. El daemon de Docker escucha API las solicitudes de Docker y administra los objetos de Docker, como imágenes, contenedores, redes y volúmenes. Este parámetro solo debe establecerse en true si el proyecto de compilación se utiliza para compilar imágenes de Docker. De lo contrario, esta configuración debe estar deshabilitada para evitar el acceso no deseado a Docker y al hardware subyacente del APIs contenedor. Esta configuración de privilegedMode como false a proteger los recursos críticos contra la manipulación y la eliminación.

Corrección

Para configurar los ajustes CodeBuild del entorno del proyecto, consulte Crear un proyecto de compilación (consola) en la Guía del CodeBuild usuario. En la sección Entorno, no seleccione la configuración Privilegiada.

[CodeBuild.7] las exportaciones de grupos de CodeBuild informes deben cifrarse en reposo

Categoría: Proteger > Protección de datos > Cifrado de data-at-rest

Gravedad: media

Tipo de recurso: AWS::CodeBuild::ReportGroup

AWS Config regla: codebuild-report-group-encrypted-at-rest

Tipo de horario: provocado por un cambio

Parámetros: ninguno

Este control comprueba si los resultados de la prueba de un AWS CodeBuild Los grupos de informes que se exportan a un bucket de Amazon Simple Storage Service (Amazon S3) se cifran en reposo. El control falla si la exportación del grupo de informes no está cifrada en reposo.

Los datos en reposo se refieren a los datos que se almacenan en un almacenamiento persistente y no volátil durante cualquier período de tiempo. El cifrado de los datos en reposo ayuda a proteger su confidencialidad, lo que reduce el riesgo de que un usuario no autorizado pueda acceder a ellos.

Corrección

Para cifrar la exportación del grupo de informes a S3, consulte Actualizar un grupo de informes en el AWS CodeBuild Guía del usuario.