En esta página se describe cómo puedes usar el servicio de descubrimiento de Protección de Datos Sensibles para determinar si hay secretos en las variables de entorno de Cloud Run. Protección de Datos Sensibles informa de los resultados a Security Command Center como vulnerabilidades.
Acerca de Security Command Center
Security Command Center es el servicio centralizado de informes de vulnerabilidades y amenazas de Google Cloud. Security Command Center te ayuda a reforzar tu posición de seguridad identificando errores de configuración, vulnerabilidades, observaciones y amenazas. También ofrece recomendaciones para investigar y solucionar los resultados.
Por qué analizar las variables de entorno en busca de secretos
Almacenar secretos, como contraseñas, en variables de entorno no es una práctica segura, ya que las variables de entorno no están cifradas. Sus valores se pueden recoger y exponer en varios sistemas, como los registros. Te recomendamos que uses Secret Manager para almacenar tus secretos. Para obtener más información, consulta la documentación de Cloud Run y Cloud Functions sobre cómo configurar secretos.
Cómo funciona
Para descubrir secretos, crea una configuración de análisis de descubrimiento a nivel de organización o de proyecto. Dentro del ámbito que hayas seleccionado, Protección de Datos Sensibles analiza periódicamente Cloud Run para detectar secretos en las variables de entorno de compilación y de tiempo de ejecución.
Si hay un secreto en una variable de entorno, Protección de Datos Sensibles envía un Secrets in environment variables
hallazgo de vulnerabilidad a Security Command Center. No se generan perfiles de datos. Los resultados solo están disponibles a través de Security Command Center.
Protección de Datos Sensibles genera un máximo de un resultado por recurso. Por ejemplo, si se encuentran secretos en dos variables de entorno de la misma función de Cloud Run, solo se generará un resultado en Security Command Center.
En Security Command Center, puede ver Secrets in environment variables
resultados
cuando haga lo siguiente:
- Revisar los resultados de Protección de Datos Sensibles
- Ver o exportar un informe de cumplimiento del estándar CIS 1.3 o CIS 2.0.
En el siguiente JSON se muestra un ejemplo de un Secrets in environment variables
. En este ejemplo solo se muestran los campos relevantes para esta función. No se proporciona una lista exhaustiva de campos.
Secretos en variables de entorno
{ "finding": { "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID", "category": "SECRETS_IN_ENVIRONMENT_VARIABLES", "compliances": [ { "standard": "cis", "version": "1.3", "ids": [ "1.18" ] } ], "createTime": "DATE_TIME", "description": "The affected resource is storing credentials or other secret information in its environment variables. This is a security vulnerability because environment variables are stored unencrypted, and accessible to all users who have access to the code.", "eventTime": "DATE_TIME", "findingClass": "VULNERABILITY", "findingProviderId": "organizations/ORGANIZATION_ID/firstPartyFindingProviders/dlp", "mute": "MUTE_STATUS", "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID", "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID", "parentDisplayName": "Sensitive Data Protection", "resourceName": "//cloudfunctions.googleapis.com/projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID", }, "resource": { "name": "//cloudfunctions.googleapis.com/projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID", "display_name": "projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID", "type": "google.cloudfunctions.CloudFunction", "project_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "project_display_name": "PROJECT_DISPLAY_NAME", "parent_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "parent_display_name": "PARENT_DISPLAY_NAME" } }
Buscar la latencia de generación
En función del tamaño de tu organización, los resultados de Protección de Datos Sensibles pueden empezar a aparecer en Security Command Center unos minutos después de habilitar la detección de datos sensibles. En el caso de las organizaciones más grandes o de las que tienen configuraciones específicas que afectan a la generación de resultados, pueden pasar hasta 12 horas antes de que aparezcan los primeros resultados en Security Command Center.
Después, Protección de Datos Sensibles genera resultados en Security Command Center unos minutos después de que el servicio de descubrimiento analice tus recursos.
Tipos de secretos notificados
Algunos ejemplos de secretos son las contraseñas, los tokens de autenticación y las Google Cloud credenciales. Para ver una lista completa de los tipos de secretos que analiza Protección de Datos Sensibles en esta función, consulta Credenciales y secretos.
Recursos compatibles
Para el descubrimiento de secretos, Protección de Datos Sensibles admite Cloud Run functions (incluidas las funciones de Cloud de primera generación) y revisiones de servicios de Cloud Run.
Precios
Esta función no conlleva cargos de Protección de Datos Sensibles. Es posible que se te apliquen cargos de Security Command Center según tu nivel de servicio. Protección de Datos Sensibles es compatible con Security Command Center en todos los niveles de servicio.
Residencia de datos
La primera vez que crees una configuración de análisis, especificarás dónde quieres que Sensitive Data Protection la almacene. Todas las configuraciones de análisis posteriores que cree se almacenarán en esa misma región. Protección de Datos Sensibles exporta los metadatos de Cloud Run a la región en la que se almacena la configuración del análisis, pero la revisión de la función o del servicio no se exporta.
Si Protección de Datos Sensibles detecta secretos en las variables de entorno, los resultados se envían a Security Command Center y están sujetos a sus procesos de tratamiento de datos.
Roles de gestión de identidades y accesos necesarios
Para descubrir secretos, necesitas los roles de Gestión de Identidades y Accesos necesarios para crear perfiles de datos:
Para descubrir secretos a nivel de organización, consulta Roles necesarios para trabajar con perfiles de datos a nivel de organización.
Para descubrir secretos a nivel de proyecto, consulta Roles necesarios para trabajar con perfiles de datos a nivel de proyecto.
Además, necesitas los roles adecuados para trabajar con las detecciones de Security Command Center. Para obtener más información, consulta la sección sobre la gestión de identidades y accesos para activaciones a nivel de organización de la documentación de Security Command Center.
Antes de empezar
Comprueba el nivel de activación de Security Command Center en tu organización. Para enviar perfiles de datos a Security Command Center, debes tener activado Security Command Center a nivel de organización en cualquier nivel de servicio. Para obtener más información, consulta el artículo Activar Security Command Center en una organización.
Si Security Command Center solo está activado a nivel de proyecto, los resultados de Protección de Datos Sensibles no aparecerán en Security Command Center.
En Security Command Center, comprueba que Protección de Datos Sensibles esté habilitado como servicio integrado. Para obtener más información, consulta Añadir un servicio integrado.Google Cloud
Configurar el descubrimiento de secretos a nivel de organización
Sigue estos pasos si quieres activar la detección de secretos en toda una organización. Para obtener información sobre el descubrimiento a nivel de proyecto, consulte Configurar el descubrimiento de secretos a nivel de proyecto.
Si no tienes el rol Administrador de la organización (roles/resourcemanager.organizationAdmin
) o Administrador de seguridad (roles/iam.securityAdmin
), puedes crear una configuración de análisis. Sin embargo, después de crear la configuración de análisis, alguien con uno de esos roles debe conceder acceso de detección a tu agente de servicio.
Ve a la página Crear configuración del análisis.
Ve a tu organización. En la barra de herramientas, haz clic en el selector de proyectos y selecciona tu organización.
Después de cada paso de esta página, haga clic en Continuar.
En Selecciona un tipo de descubrimiento, elige Vulnerabilidades de secretos o credenciales.
En Seleccionar ámbito, indica si quieres analizar toda la organización.
En Gestionar contenedor y facturación del agente de servicio, especifica el proyecto que quieras usar como contenedor del agente de servicio. Puedes hacer que Protección de Datos Sensibles cree automáticamente un proyecto o elegir uno que ya tengas.
Si no tienes ningún proyecto que puedas usar como contenedor de agente de servicio, selecciona Crear un proyecto como contenedor de agente de servicio. Protección de Datos Sensibles crea un proyecto llamado DLP Service Agent Container. El agente de servicio de este proyecto se usará para autenticarte en Protección de Datos Sensibles y otras APIs. El sistema te pedirá que selecciones la cuenta que se usará para facturar todas las operaciones facturables relacionadas con este proyecto, incluidas las que no estén relacionadas con el descubrimiento.
Si no tienes los permisos necesarios para crear proyectos, la opción Crear un proyecto como contenedor de agente de servicio estará inhabilitada. En este caso, debes seleccionar un proyecto o pedirle a tu administrador deGoogle Cloud que te conceda el rol Creador de proyectos (
roles/resourcemanager.projectCreator
).Si tienes un contenedor de agente de servicio que quieres reutilizar, selecciona Seleccionar un contenedor de agente de servicio. A continuación, haz clic en Buscar para seleccionar el ID del proyecto del contenedor del agente de servicio.
En Definir la ubicación para almacenar la configuración, selecciona la región en la que quieras almacenar esta configuración de análisis. Todas las configuraciones de análisis que crees posteriormente también se almacenarán en esta ubicación. Para obtener información sobre las consideraciones relativas a la residencia de datos, consulta la sección Residencia de datos de esta página.
Opcional: Si no quieres que el análisis empiece poco después de crear la configuración del análisis, selecciona Crear análisis en modo de pausa.
Esta opción es útil en los siguientes casos:
- Tu administrador aún tiene que Google Cloud conceder acceso de descubrimiento al agente del servicio.
- Quieres crear varias configuraciones de análisis y que algunas anulen a otras.
Haz clic en Crear.
Protección de Datos Sensibles empieza a analizar las variables de entorno de Cloud Run poco después de que crees una configuración de análisis o reanudes una configuración en pausa. Para obtener información sobre cuánto tiempo tardan en aparecer los resultados en Security Command Center, consulta la sección Latencia de generación de resultados de esta página.
Si no tienes el rol Administrador de la organización (roles/resourcemanager.organizationAdmin
) o Administrador de seguridad (roles/iam.securityAdmin
), alguien con uno de esos roles debe conceder acceso de descubrimiento a tu agente de servicio para que pueda empezar el descubrimiento.
Configurar el descubrimiento de secretos a nivel de proyecto
Sigue estos pasos si quieres activar la detección de secretos en un solo proyecto. Para obtener información sobre el descubrimiento a nivel de organización, consulta Configurar el descubrimiento de secretos a nivel de organización.
Ve a la página Crear configuración del análisis.
Ve a tu proyecto. En la barra de herramientas, haz clic en el selector de proyectos y selecciona el proyecto.
Después de cada paso de esta página, haga clic en Continuar.
En Selecciona un tipo de descubrimiento, elige Vulnerabilidades de secretos o credenciales.
En Seleccionar ámbito, asegúrate de que esté seleccionada la opción Analizar todo el proyecto. Si no está seleccionado, asegúrate de que estás en la vista de proyecto.
En Definir la ubicación para almacenar la configuración, selecciona la región en la que quieras almacenar esta configuración de análisis. Todas las configuraciones de análisis que crees posteriormente también se almacenarán en esta ubicación. Para obtener información sobre las consideraciones relativas a la residencia de datos, consulta la sección Residencia de datos de esta página.
Haz clic en Crear.
Protección de Datos Sensibles empieza a analizar las variables de entorno de Cloud Run poco después de que crees una configuración de análisis o reanudes una configuración en pausa. Para obtener información sobre cuánto tiempo tardan en aparecer los resultados en Security Command Center, consulta la sección Latencia de generación de resultados de esta página.
Consulta de resultados de Secrets in environment variables
A continuación, se muestran ejemplos de consultas que puede usar para buscar resultados de Secrets in
environment variables
en Security Command Center. Puede introducir estas consultas en el campo Editor de consultas. Para obtener más información sobre el editor de consultas, consulta el artículo Editar una consulta de resultados en el panel de control de Security Command Center.
Mostrar todos los hallazgos de Secrets in environment variables
state="ACTIVE"
AND NOT mute="MUTED"
AND category="SECRETS_IN_ENVIRONMENT_VARIABLES"
Mostrar todos los resultados de Secrets in environment variables
de un proyecto concreto
state="ACTIVE"
AND NOT mute="MUTED"
AND category="SECRETS_IN_ENVIRONMENT_VARIABLES"
AND resource.project_name="//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"
Haz los cambios siguientes:
- PROJECT_NUMBER: el ID numérico del proyecto para el que quieres hacer la consulta