Soluciona errores de Security Command Center

En esta página, se proporciona una lista de guías de referencia y técnicas para corregir errores de SCC.

Antes de comenzar

Necesitas funciones adecuadas de Identity and Access Management (IAM) para ver o editar los resultados, y acceder o modificar los recursos de Google Cloud. Si encuentras errores de permiso cuando accedes a Security Command Center en la consola de Google Cloud, pídele asistencia al administrador. Para obtener más información sobre los roles, consulta Control de acceso. Para resolver errores de recursos, consulta la documentación de los productos afectados.

Revisa los resultados en la consola de Google Cloud

Los errores de SCC son errores de configuración que impiden que Security Command Center funcione según lo esperado. La fuente Security Command Center genera estos resultados.

Siempre que Security Command Center esté configurado para tu organización o proyecto, generará resultados de errores a medida que los detecte. Puedes ver los errores de SCC en la consola de Google Cloud.

Usa el siguiente procedimiento para revisar los resultados en la consola de Google Cloud:

Consola de Google Cloud

  1. En la consola de Google Cloud, ve a la página Resultados de Security Command Center.

    Ir a hallazgos

  2. Selecciona tu organización o proyecto de Google Cloud.
  3. En la sección Filtros rápidos, en la subsección Nombre visible de la fuente, selecciona Security Command Center. Los resultados de la búsqueda de hallazgos se actualizan para mostrar solo los hallazgos de esta fuente.
  4. Para ver los detalles de un resultado específico, haz clic en el nombre del resultado en la columna Categoría. Se abre el panel de detalles del hallazgo y se muestra la pestaña Resumen.
  5. En la pestaña Resumen, revisa los detalles del hallazgo, incluida la información sobre lo que se detectó, el recurso afectado y, si está disponible, los pasos que puedes seguir para solucionar el problema.
  6. Para ver la definición completa de JSON del resultado, haz clic en la pestaña JSON (opcional).

Consola de operaciones de seguridad

  1. En la consola de Security Operations, ve a la página Resultados.
    https://CUSTOMER_SUBDOMAIN.backstory.chronicle.security/posture/findings
    

    Reemplaza CUSTOMER_SUBDOMAIN por tu identificador específico del cliente.

  2. En la sección Agregaciones, haz clic para expandir la subsección Nombre visible de la fuente.
  3. Selecciona Security Command Center. Los resultados de la búsqueda de hallazgos se actualizan para mostrar solo los hallazgos de esta fuente.
  4. Para ver los detalles de un resultado específico, haz clic en el nombre del resultado en la columna Categoría. Se abre el panel de detalles del hallazgo y se muestra la pestaña Resumen.
  5. En la pestaña Resumen, revisa los detalles del hallazgo, incluida la información sobre lo que se detectó, el recurso afectado y, si está disponible, los pasos que puedes seguir para solucionar el problema.
  6. Para ver la definición completa de JSON del resultado, haz clic en la pestaña JSON (opcional).

Desactivación de errores de SCC después de la solución

Después de corregir un resultado SCC error, Security Command Center establece automáticamente el estado del resultado en INACTIVE durante el siguiente análisis. El tiempo que tarda Security Command Center en establecer el estado de un resultado solucionado en INACTIVE depende de cuándo corrijas el resultado y de la programación del análisis que detecta el error.

Para obtener información sobre la frecuencia de análisis de un resultado SCC error, consulta el resumen del resultado en Detectores de errores.

Corrige los errores de SCC

En esta sección, se incluyen instrucciones de solución para todos los errores de SCC.

API disabled

Nombre de categoría en la API: API_DISABLED

Uno de los siguientes servicios está inhabilitado para el proyecto:

El servicio inhabilitado no puede generar resultados.

Para solucionar el problema, sigue estos pasos:

  1. A fin de determinar qué API está inhabilitada, revisa el resultado.
  2. Habilita la API

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

APS no resource value configs match any resources

Nombre de categoría en la API: APS_NO_RESOURCE_VALUE_CONFIGS_MATCH_ANY_RESOURCES

Las configuraciones de valores de recursos se definen para las simulaciones de rutas de ataque, pero no coinciden con ninguna instancia de recursos de tu entorno. En su lugar, las simulaciones usan el conjunto de recursos de alto valor predeterminado.

Es posible que las configuraciones de valores de recursos no coincidan con ningún recurso por los siguientes motivos, que se identifican en la descripción del hallazgo en la consola de Google Cloud:

  • Ninguna de las configuraciones de valores de recursos coincide con ninguna instancia de recursos.
  • Uno o más parámetros de configuración de valor de recursos que especifiquen NONE anula cualquier otra configuración válida.
  • Todas las configuraciones de valores de recursos definidas especifican un valor de NONE.

Para solucionar el problema, sigue estos pasos:

  1. Ve a la página Simulación de rutas de ataque en la Configuración de Security Command Center:

    Ir a la configuración

  2. Selecciona tu organización. Se abrirá la página Simulación de ruta de ataque con las configuraciones existentes.

  3. En la columna Valor del recurso de la lista Configuraciones de valor del recurso, verifica si hay valores de None.

  4. Para cualquier configuración que especifique None, haz lo siguiente:

    1. Haz clic en el nombre de cualquier configuración de valor de recurso para mostrar las especificaciones de configuración.
    2. Si es necesario, edita las especificaciones de los atributos de recursos para reducir la cantidad de instancias de recursos que coinciden con la configuración.
  5. Si el problema no se debe a una especificación None demasiado amplia, haz lo siguiente:

    1. Haz clic en los nombres de cada configuración que especifique un valor de HIGH, MEDIUM o LOW para mostrar las especificaciones de los atributos de recursos.
    2. Revisa y, si es necesario, edita la configuración para corregir el alcance, el tipo de recurso, la etiqueta o la especificación de la etiqueta para que coincidan con los recursos previstos.
  6. Si es necesario, crea una nueva configuración de valor de recurso.

Tus cambios se aplicarán a la próxima simulación de ruta de ataque.

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

APS resource value assignment limit exceeded

Nombre de categoría en la API: APS_RESOURCE_VALUE_ASSIGNMENT_LIMIT_EXCEEDED

En la última simulación de ruta de ataque, la cantidad de instancias de recursos de alto valor, como lo identificó la configuración de valores de recursos, superó el límite de 1,000 instancias de recursos en un conjunto de recursos de alto valor. Como resultado, Security Command Center excluyó la cantidad excesiva de instancias del conjunto de recursos de alto valor.

Para solucionar este problema, puedes probar las siguientes acciones:

  • Usa etiquetas o etiquetas para reducir la cantidad de coincidencias de un tipo de recurso determinado o dentro de un alcance específico. Las etiquetas deben aplicarse a las instancias de recursos antes de que puedan coincidir con una configuración de valor de recurso.
  • Crea una configuración de valor de recurso que asigne un valor de recurso de NONE a un subconjunto de los recursos que se especifican en otra configuración.

    Especificar un valor de NONE anula cualquier otra configuración y excluye las instancias de recursos de tu conjunto de recursos de alto valor.

  • Reduce la especificación del atributo de recurso de alcance en la configuración de valor del recurso.

  • Borra las configuraciones de valor de recursos que asignan un valor de LOW.

Si deseas obtener instrucciones para crear, editar o borrar la configuración de un valor de recurso, consulta Define y administra tu conjunto de recursos de alto valor.

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

CIEM service account missing permissions

Nombre de categoría en la API: CIEM_SERVICE_ACCOUNT_MISSING_PERMISSIONS

Faltan permisos a la cuenta de servicio que usa el servicio de CIEM. El CIEM no puede generar una o más categorías de hallazgos.

Para solucionar este problema, restablece los roles de IAM necesarios en la cuenta de servicio de CIEM:

  1. En la consola de Google Cloud, ve a la página IAM.

    Ir a IAM

  2. Selecciona la cuenta de servicio de CIEM de tu organización. El identificador de la cuenta de servicio es una dirección de correo electrónico con el siguiente formato:

    service-org-ORGANIZATION_ID@gcp-sa-ciem.iam.gserviceaccount.com
    

    Reemplaza ORGANIZATION_ID por el ID numérico de la organización.

    Si no ves la cuenta de servicio en la lista, haz clic en OTORGAR ACCESO en la parte superior de la página y, luego, ingresa la cuenta de servicio como un principal nuevo.

  3. Otorga el rol de agente de servicio de CIEM (roles/ciem.serviceAgent) a la cuenta de servicio. Si usas roles personalizados, asegúrate de que incluyan los siguientes permisos:

    • cloudasset.assets.exportResource
    • cloudasset.assets.exportIamPolicy
  4. Haz clic en Guardar.

CIEM AWS CloudTrail configuration error

Nombre de categoría en la API: AWS_CLOUDTRAIL_CONFIGURATION_ERROR

No se envían todos o algunos de los resultados de CIEM de AWS a Security Command Center. El feed de AWS CloudTrail falló y no puede recuperar datos correctamente debido a un error de configuración.

Existen tres posibles causas para este hallazgo:

  • Falta el feed de AWS CloudTrail

    Para solucionar este problema, crea y configura un feed en la consola de Security Operations para transferir los registros de AWS CloudTrail. Establece el par clave-valor Etiqueta de transferencia en CIEM y TRUE.

    Para obtener instrucciones sobre cómo crear un feed, consulta Crea el feed en la documentación de SecOps de Google.

  • Errores en la configuración del feed

    Asegúrate de haber configurado el feed correctamente.

    Para configurar un feed, consulta Configura un feed en Google Security Operations para transferir registros de AWS en la documentación de Google SecOps.

  • Configuración incompleta de AWS CloudTrail

    Para solucionar este problema, configura el bucket de S3 en la configuración de AWS CloudTrail para registrar los eventos de datos y los eventos de administración de todas las cuentas de AWS en las que deseas usar CIEM.

    Para configurar CloudTrail, consulta Configura AWS CloudTrail (o algún otro servicio) en la documentación de SecOps de Google.

GKE service account missing permissions

Nombre de categoría en la API: GKE_SERVICE_ACCOUNT_MISSING_PERMISSIONS

La detección de amenazas a contenedores no puede generar resultados para un clúster de Google Kubernetes Engine, ya que a la cuenta de servicio predeterminada de GKE del clúster le faltan permisos. Esto impide que la detección de amenazas a contenedores se habilite de forma correcta en el clúster.

Para solucionar este problema, restablece la cuenta de servicio predeterminada de GKE y confirma que la cuenta de servicio tenga el rol Kubernetes Engine Service Agent (roles/container.serviceAgent).

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

KTD blocked by admission controller

Nombre de categoría en la API: KTD_BLOCKED_BY_ADMISSION_CONTROLLER

La detección de amenazas a contenedores no se puede habilitar en un clúster porque un controlador de admisión de terceros impide la implementación del objeto DaemonSet de Kubernetes requerido.

Para solucionar este problema, asegúrate de que los controladores de admisión que se ejecutan en el clúster permitan que Container Threat Detection cree los objetos de Kubernetes necesarios.

Verifica el controlador de admisión

Verifica si el controlador de admisión de tu clúster rechaza la implementación del objeto DaemonSet de la detección de amenazas a contenedores.

  1. En la descripción del hallazgo en los detalles de la consola de Google Cloud, revisa el mensaje de error incluido de Kubernetes. El mensaje de error de Kubernetes debería ser similar al siguiente:

    generic::failed_precondition: incompatible admission webhook:
    admission webhook "example.webhook.sh" denied the request:
    [example-constraint] you must provide labels: {"example-required-label"}.
    
  2. En los registros de auditoría de actividad de administrador de Cloud del proyecto que contiene tu clúster, busca el mensaje de error que se muestra en el campo Descripción de los detalles del hallazgo.

  3. Si el controlador de admisión funciona, pero rechaza la implementación del objeto DaemonSet de Container Threat Detection, configúralo para permitir que el agente de servicio de Container Threat Detection administre objetos en el espacio de nombres kube-system.

    El agente de servicio de Container Threat Detection debe poder administrar objetos específicos de Kubernetes.

Para obtener más información sobre el uso de controladores de admisión con la detección de amenazas de contenedores, consulta PodSecurityPolicy y controladores de admisión.

Confirma la corrección

Después de corregir el error, Security Command Center intentará habilitar automáticamente la detección de amenazas a contenedores. Después de esperar a que se complete la habilitación, puedes verificar si la Detección de amenazas de contenedores está activa siguiendo estos pasos:

  1. Ve a la página Cargas de trabajo de Kubernetes Engine en la consola.

    Ir a Cargas de trabajo de Kubernetes

  2. Si es necesario, selecciona Mostrar cargas de trabajo del sistema.

  3. En la página Cargas de trabajo, filtra las cargas de trabajo primero por el nombre del clúster.

  4. Busca la carga de trabajo container-watcher. Si container-watcher está presente y su estado muestra OK, la detección de amenazas a contenedores está activa.

KTD image pull failure

Nombre de categoría en la API: KTD_IMAGE_PULL_FAILURE

La detección de amenazas a contenedores no se puede habilitar en el clúster porque no se puede extraer (descargar) una imagen de contenedor requerida de gcr.io, el host de imágenes de Container Registry.

La extracción o descarga de una imagen de contenedor puede fallar por varios motivos.

Verifica lo siguiente:

  • Asegúrate de que la configuración de la red de VPC, el DNS o el firewall no bloqueen el acceso de red del clúster al host de imágenes gcr.io.
  • Si el clúster es privado, asegúrate de que el Acceso privado a Google esté habilitado para permitir el acceso al host de imágenes gcr.io.
  • Si la configuración de red y el Acceso privado a Google no son la causa de la falla, consulta la documentación de solución de problemas de GKE para ver los errores ImagePullBackOff y ErrImagePull.

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

KTD service account missing permissions

Nombre de categoría en la API: KTD_SERVICE_ACCOUNT_MISSING_PERMISSIONS

A la cuenta de servicio de detección de amenazas a contenedores que se identifica en los detalles del resultado en la consola de Google Cloud le faltan los permisos necesarios. No se envían todos o algunos de los resultados de Container Threat Detection a Security Command Center.

Para solucionar el problema, sigue estos pasos:

  1. Otorga el rol de agente de servicio de Container Threat Detection (roles/containerthreatdetection.serviceAgent) a la cuenta de servicio. Para obtener más información, consulta Otorga un solo rol.

    Como alternativa, si deseas usar un rol personalizado, asegúrate de que tenga los permisos del agente de servicio de Container Threat Detection.

  2. Asegúrate de que no haya políticas de denegación de IAM que impidan que la cuenta de servicio use alguno de los permisos del rol de agente de servicio de detección de amenazas a contenedores. Si hay una política de denegación que bloquea el acceso, agrega la cuenta de servicio como un principal de excepción en la política de denegación.

Para obtener más información sobre la cuenta de servicio de Detección de amenazas de contenedores y el rol y los permisos que requiere, consulta Permisos de IAM obligatorios.

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

Misconfigured Cloud Logging Export

Nombre de categoría en la API: MISCONFIGURED_CLOUD_LOGGING_EXPORT

El proyecto configurado para la exportación continua a Cloud Logging no está disponible. Como resultado, Security Command Center no puede enviar resultados a Logging.

Realiza una de las siguientes acciones para solucionar este problema:

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

VPC Service Controls Restriction

Nombre de categoría en la API: VPC_SC_RESTRICTION

Las estadísticas del estado de la seguridad no pueden producir ciertos resultados para un proyecto, ya que está protegido por un perímetro de servicio. Debes otorgar a la cuenta de servicio de Security Command Center acceso entrante al perímetro de servicio.

El identificador de la cuenta de servicio es una dirección de correo electrónico con el siguiente formato:

service-RESOURCE_KEYWORD-RESOURCE_ID@security-center-api.iam.gserviceaccount.com

Reemplaza lo siguiente:

  • RESOURCE_KEYWORD: La palabra clave org o project, según el recurso al que pertenezca la cuenta de servicio
  • RESOURCE_ID: Uno de los siguientes:

    • El ID de la organización si la cuenta de servicio es propiedad de la organización
    • El número de proyecto si la cuenta de servicio es propiedad de un proyecto

Si tienes cuentas de servicio a nivel de la organización y a nivel del proyecto, aplica la remediación a ambas.

Para solucionar el problema, sigue estos pasos.

Paso 1: Determina qué perímetro de servicio bloquea las estadísticas del estado de seguridad

  1. Obtén el ID único de los Controles del servicio de VPC y el ID del proyecto asociado con el resultado:

    1. Para ver los detalles del resultado, haz clic en el nombre de su categoría.
    2. En el campo Descripción, copia el ID único de los Controles del servicio de VPC, por ejemplo, 5e4GI409D6BTWfOp_6C-uSwmTpOQWcmW82sfZW9VIdRhGO5pXyCJPQ.
    3. En el campo Ruta de acceso del recurso, copia el ID del proyecto.
  2. Obtén el ID de la política de acceso y el nombre del perímetro de servicio:

    1. En la consola de Google Cloud, ve a la página Explorador de registros.

      Ir al Explorador de registros

    2. En la barra de herramientas, selecciona el proyecto asociado al resultado.

      Selector de proyectos

    3. En el cuadro de búsqueda, ingresa el ID único del error.

      Busca por UID de error

      Si el error no aparece en los resultados de la consulta, extiende el cronograma en Histograma y, luego, vuelve a ejecutar la consulta.

    4. Haz clic en el error que aparece.

    5. Haz clic en Expand nested fields.

    6. Copia el valor del campo servicePerimeterName. El valor tiene el siguiente formato:

      accessPolicies/ACCESS_POLICY/servicePerimeters/SERVICE_PERIMETER
      

      En este ejemplo, el nombre completo del recurso del perímetro de servicio es accessPolicies/540107806624/servicePerimeters/vpc_sc_misconfigured.

      • ACCESS_POLICY es el ID de la política de acceso, por ejemplo, 540107806624.
      • SERVICE_PERIMETER es el nombre del perímetro de servicio, por ejemplo, vpc_sc_misconfigured.

        Nombre completo del recurso del perímetro de servicio

    7. Para obtener el nombre visible que corresponde al ID de la política de acceso, usa gcloud CLI.

      Si no puedes realizar consultas a nivel de la organización, pídele al administrador que realice este paso.

      gcloud access-context-manager policies list \
          --organization ORGANIZATION_ID
      

      Reemplaza ORGANIZATION_ID por el ID numérico de la organización.

      Obtendrás un resultado similar al siguiente:

      NAME          ORGANIZATION  SCOPES                 TITLE           ETAG
      540107806624  549441802605                         default policy  2a9a7e30cbc14371
      352948212018  549441802605  projects/393598488212  another_policy  d7b47a9ecebd4659
      

      El nombre visible es el título que corresponde al ID de la política de acceso. Toma nota del nombre visible de la política de acceso y del nombre del perímetro de servicio. Los necesitarás en la siguiente sección.

Paso 2: Crea una regla de entrada que otorgue acceso al proyecto

Para esta sección, debes tener acceso a nivel de la organización a los Controles del servicio de VPC. Si no tienes acceso a nivel de la organización, pídele al administrador que realice estos pasos.

En los siguientes pasos, crearás una regla de entrada en el perímetro de servicio que identificaste en el paso 1.

Para otorgar acceso entrante a una cuenta de servicio a un perímetro de servicio, sigue estos pasos.

  1. Ve a los Controles del servicio de VPC.

    Ir a los Controles del servicio de VPC

  2. En la barra de herramientas, selecciona tu organización de Google Cloud.

    Selector de proyectos

  3. En la lista desplegable, selecciona la política de acceso que contiene el perímetro de servicio al que deseas otorgar acceso.

    Lista de políticas de acceso

    Los perímetros de servicio asociados con la política de acceso aparecen en la lista.

  4. Haz clic en el nombre del perímetro de servicio.

  5. Haz clic en Editar perímetro.

  6. En el menú de navegación, haz clic en Política de entrada.

  7. Haga clic en Agregar regla.

  8. Configura la regla de la siguiente manera:

    Atributos FROM del cliente de la API

    1. En Fuente, selecciona Todas las fuentes.
    2. En Identidad, selecciona Identidades seleccionadas.
    3. En el campo Agregar usuario o cuenta de servicio, haz clic en Seleccionar.
    4. Ingresa la dirección de correo electrónico de la cuenta de servicio. Si tienes cuentas de servicio a nivel de la organización y del proyecto, agrégalas ambas.
    5. Haz clic en Guardar.

    Atributos TO de los recursos y servicios de GCP

    1. En Proyecto, selecciona Todos los proyectos o selecciona el proyecto especificado en el resultado.

    2. En Servicios, selecciona Todos los servicios o cada uno de los siguientes servicios individuales que requiere Security Health Analytics:

      • API de BigQuery
      • API de Autorización Binaria
      • API de Cloud Logging
      • Cloud Monitoring API
      • API de Compute Engine
      • API de Kubernetes Engine

    Si un perímetro de servicio restringe el acceso a un servicio obligatorio, Security Health Analytics no puede producir resultados para ese servicio.

  9. En el menú de navegación, haz clic en Guardar.

Para obtener más información, consulta Configura políticas de entrada y salida.

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

Security Command Center service account missing permissions

Nombre de categoría en la API: SCC_SERVICE_ACCOUNT_MISSING_PERMISSIONS

Al agente de servicio de Security Command Center le faltan los permisos necesarios para funcionar de forma correcta.

El identificador de la cuenta de servicio es una dirección de correo electrónico con el siguiente formato:

service-RESOURCE_KEYWORD-RESOURCE_ID@security-center-api.iam.gserviceaccount.com

Reemplaza lo siguiente:

  • RESOURCE_KEYWORD: La palabra clave org o project, según el recurso al que pertenezca la cuenta de servicio
  • RESOURCE_ID: Uno de los siguientes:

    • El ID de la organización si la cuenta de servicio es propiedad de la organización
    • El número de proyecto si la cuenta de servicio es propiedad de un proyecto

Si tienes cuentas de servicio a nivel de la organización y a nivel del proyecto, aplica la remediación a ambas.

Para solucionar el problema, sigue estos pasos:

  1. Otorga el rol de agente de servicio de Security Center (roles/securitycenter.serviceAgent) a la cuenta de servicio.

    Para obtener más información, consulta Otorga un solo rol.

    Como alternativa, si deseas usar un rol personalizado, asegúrate de que tenga los permisos del rol de agente de servicio de Security Center.

  2. Asegúrate de que no haya políticas de denegación de IAM que impidan que la cuenta de servicio use alguno de los permisos de los roles requeridos. Si hay una política de denegación que bloquea el acceso, agrega la cuenta de servicio como un principal de excepción en la política de denegación.

Obtén información sobre los elementos admitidos y la configuración de análisis de este tipo de resultados.

¿Qué sigue?

Obtén más información sobre los errores de Security Command Center.