Integra Security Command Center en Google SecOps

En este documento, se explica cómo integrar Security Command Center con Google Security Operations (Google SecOps).

Versión de integración: 13.0

Antes de comenzar

Para usar la integración, necesitas un rol personalizado de Identity and Access Management (IAM) y una Google Cloud cuenta de servicio. Puedes usar una cuenta de servicio existente o crear una nueva.

Crea y configura un rol de IAM

Para crear y configurar un rol de IAM personalizado para la integración, completa los siguientes pasos:

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

    Ir a Funciones

  2. Haz clic en Crear rol para crear un rol personalizado con los permisos necesarios para la integración.

  3. Para un nuevo rol personalizado, ingresa un Título, una Descripción y un ID único.

  4. Establece la etapa de lanzamiento del rol en Disponibilidad general.

  5. Agrega los siguientes permisos al rol creado:

    • securitycenter.assets.list
    • securitycenter.findings.list
    • securitycenter.findings.setMute
    • securitycenter.findings.setState

Crea y configura una clave de API

Para crear la clave de API, completa los siguientes pasos:

  1. En la consola de Google Cloud , ve a APIs y servicios > Credenciales > Crear credenciales.

  2. Selecciona Clave de API. Aparecerá un diálogo con una clave de API generada. Copia la clave de API y guárdala de forma segura.

Para configurar la restricción de la API para la clave de API, completa los siguientes pasos:

  1. Haz clic en Restringir clave > Restricciones de API > Restringir clave.

  2. Selecciona API de Security Command Center en la lista de APIs, configura las restricciones aplicables y haz clic en Guardar.

Otorga acceso a la clave de API

Para otorgar acceso a Security Command Center a tu clave de API, completa los siguientes pasos:

  1. En la consola de Google Cloud , ve a IAM y administración > Cuentas de servicio.

  2. Selecciona la cuenta de servicio que usas en la integración de Security Command Center.

  3. Haz clic en la dirección de correo electrónico de la cuenta de servicio.

  4. Selecciona Otorgar acceso.

  5. En el campo Miembros nuevos, ingresa la dirección de correo electrónico de la cuenta de servicio.

  6. En Security Center, selecciona el rol de Security Center Findings Editor y haz clic en Guardar.

Parámetros de integración

La integración de Security Command Center requiere los siguientes parámetros:

Parámetro Descripción
API Root

Obligatorio.

Es la raíz de la API de la instancia de Security Command Center.

Organization ID

Opcional.

Es el ID de la organización que se usará en la integración de Security Command Center.

Project ID

Opcional.

Es el ID del proyecto de la instancia de Security Command Center.

Quota Project ID

Opcional.

El ID del proyecto Google Cloud que usas para las APIs y la facturación. Google Cloud Este parámetro requiere que otorgues el rol Service Usage Consumer a tu cuenta de servicio.

Si no configuras un valor para este parámetro, la integración recupera el ID del proyecto de tu cuenta de servicio de Google Cloud .

User's Service Account

Obligatorio.

Es el contenido del archivo JSON de la clave de la cuenta de servicio.

Puedes configurar este parámetro o el parámetro Workload Identity Email.

Para configurar este parámetro, proporciona el contenido completo del archivo JSON de la clave de la cuenta de servicio que descargaste cuando creaste una cuenta de servicio.

Workload Identity Email

Opcional.

Es la dirección de correo electrónico del cliente de tu cuenta de servicio.

Puedes configurar este parámetro o el parámetro User's Service Account.

Si estableces este parámetro, configura el parámetro Quota Project ID.

Para actuar como cuentas de servicio con la federación de identidades para cargas de trabajo, otorga el rol Service Account Token Creator a tu cuenta de servicio. Para obtener más detalles sobre las identidades de cargas de trabajo y cómo trabajar con ellas, consulta Identidades para cargas de trabajo.

Verify SSL

Obligatorio.

Si se selecciona esta opción, la integración valida el certificado SSL cuando se conecta al servidor de Security Command Center.

Esta opción se selecciona de forma predeterminada.

Si quieres obtener instrucciones para configurar una integración en Google SecOps, consulta Configura integraciones.

Si es necesario, puedes hacer cambios más adelante. Después de configurar una instancia de integración, puedes usarla en las guías. Para obtener más información sobre cómo configurar y admitir varias instancias, consulta Compatibilidad con varias instancias.

Acciones

Para obtener más información sobre las acciones, consulta Cómo responder a las acciones pendientes desde Tu escritorio y Cómo realizar una acción manual.

Obtén detalles del hallazgo

Usa la acción Get Finding Details para recuperar detalles sobre un hallazgo en Security Command Center.

Esta acción no se ejecuta en las entidades de Google SecOps.

Entradas de acción

La acción Get Finding Details requiere los siguientes parámetros:

Parámetro Descripción
Finding Name

Obligatorio.

Se buscan nombres para devolver detalles. Este parámetro acepta varios valores como una lista separada por comas.

El ejemplo para encontrar nombres es el siguiente:

organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID

Resultados de la acción

La acción Get Finding Details proporciona los siguientes resultados:

Tipo de salida de la acción Disponibilidad
Adjunto del muro de casos No disponible
Vínculo al muro de casos No disponible
Tabla del muro de casos Disponible
Tabla de enriquecimiento No disponible
Resultado de JSON Disponible
Mensajes de salida Disponible
Resultado de secuencia de comandos Disponible
Tabla del muro de casos

La acción Get Finding Details puede devolver la siguiente tabla:

Título de la tabla: Detalles del hallazgo

Columnas de la tabla:

  • Categoría
  • Estado
  • Gravedad
  • Tipo
Resultado de JSON

En el siguiente ejemplo, se muestra el resultado en formato JSON que se recibe cuando se usa la acción Get Finding Details:

{
   {
      "finding_name": "organizations/ORGANIZATION_ID/sources/2678067631293752869/findings/hvX6WwbvFyBGqPbEs9WH9m",
      "finding": {
        "name": "organizations/ORGANIZATION_ID/sources/2678067631293752869/findings/hvX6WwbvFyBGqPbEs9WH9m",
        "parent": "organizations/ORGANIZATION_ID/sources/2678067631293752869",
        "resourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
        "state": "ACTIVE",
        "category": "Discovery: Service Account Self-Investigation",
        "sourceProperties": {
          "sourceId": {
            "projectNumber": "PROJECT_ID",
            "customerOrganizationNumber": "ORGANIZATION_ID"
          },
          "detectionCategory": {
            "technique": "discovery",
            "indicator": "audit_log",
            "ruleName": "iam_anomalous_behavior",
            "subRuleName": "service_account_gets_own_iam_policy"
          },
          "detectionPriority": "LOW",
          "affectedResources": [
            {
              "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID"
            }
          ],
          "evidence": [
            {
              "sourceLogId": {
                "projectId": "PROJECT_ID",
                "resourceContainer": "projects/PROJECT_ID",
                "timestamp": {
                  "seconds": "1622678907",
                  "nanos": 448368000
                },
                "insertId": "ID"
              }
            }
          ],
          "properties": {
            "serviceAccountGetsOwnIamPolicy": {
              "principalEmail": "prisma-cloud-serv@PROJECT_ID.iam.gserviceaccount.com",
              "projectId": "PROJECT_ID",
              "callerIp": "192.0.2.41",
              "callerUserAgent": "Redlock/GC-MDC/resource-manager/PROJECT_ID Google-API-Java-Client HTTP-Java-Client/1.34.0 (gzip),gzip(gfe)",
              "rawUserAgent": "Redlock/GC-MDC/resource-manager/PROJECT_ID Google-API-Java-Client HTTP-Java-Client/1.34.0 (gzip),gzip(gfe)"
            }
          },
          "contextUris": {
            "mitreUri": {
              "displayName": "Permission Groups Discovery: Cloud Groups",
              "url": "https://attack.mitre.org/techniques/ID/003/"
            },
            "cloudLoggingQueryUri": [
              {
                "displayName": "Cloud Logging Query Link",
                "url": "https://console.cloud.google.com/logs/query;query=timestamp%3D%222021-06-03T00:08:27.448368Z%22%0AinsertId%3D%22ID%22%0Aresource.labels.project_id%3D%22PROJECT_ID%22?project=PROJECT_ID"
              }
            ]
          }
        },
        "securityMarks": {
          "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID/securityMarks"
        },
        "eventTime": "2021-06-03T00:08:27.448Z",
        "createTime": "2021-06-03T00:08:31.074Z",
        "severity": "LOW",
        "canonicalName": "projects/PROJECT_ID/sources/SOURCE_ID/findings/FINDING_ID",
        "mute": "UNDEFINED",
        "findingClass": "THREAT",
        "mitreAttack": {
          "primaryTactic": "DISCOVERY",
          "primaryTechniques": [
            "PERMISSION_GROUPS_DISCOVERY",
            "CLOUD_GROUPS"
          ]
        }
      },
      "resource": {
        "name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
        "projectName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_ID",
        "projectDisplayName": "PROJECT_ID",
        "parentName": "//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID",
        "parentDisplayName": "example.net",
        "type": "google.cloud.resourcemanager.Project",
        "displayName": "PROJECT_ID"
      }
    }
}
Mensajes de salida

La acción Get Finding Details puede devolver los siguientes mensajes de salida:

Mensaje de salida Descripción del mensaje

Successfully returned details about the following findings in Security Command Center: FINDING_NAMES.

Action wasn't able to find the following findings in Security Command Center: FINDING_NAMES.

None of the provided findings were found in Security Command Center.

La acción se completó correctamente.
Error executing action "Get Finding Details". Reason: ERROR_REASON

No se pudo realizar la acción.

Verifica la conexión al servidor, los parámetros de entrada o las credenciales.

Resultado de secuencia de comandos

En la siguiente tabla, se indica el valor del resultado del script cuando se usa la acción Get Finding Details:

Nombre del resultado de la secuencia de comandos Valor
is_success True o False

Enumera las vulnerabilidades de los activos

Usa la acción List Asset Vulnerabilities para enumerar las vulnerabilidades relacionadas con las entidades en Security Command Center.

Esta acción no se ejecuta en las entidades de Google SecOps.

Entradas de acción

La acción List Asset Vulnerabilities requiere los siguientes parámetros:

Parámetro Descripción
Asset Resource Names

Obligatorio.

Son los nombres de los recursos de los activos para los que se devolverán datos. Este parámetro acepta varios valores como una lista separada por comas.

Timeframe

Opcional.

Es un período para buscar las vulnerabilidades o los parámetros de configuración incorrectos.

Los valores posibles son los siguientes:

  • Last Week
  • Last Month
  • Last Year
  • All Time

El valor predeterminado es All Time.

Record Types

Opcional.

Es el tipo de registro que se devolverá.

Los valores posibles son los siguientes:

  • Vulnerabilities Misconfigurations
  • Vulnerabilities + Misconfigurations

El valor predeterminado es Vulnerabilities + Misconfigurations.

Output Type

Opcional.

Es el tipo de resultado que se devolverá en el resultado JSON para cada recurso.

Los valores posibles son los siguientes:

  • Statistics
  • Data
  • Statistics + Data

El valor predeterminado es Statistics.

Max Records To Return

Opcional.

Es la cantidad máxima de registros que se devolverán para cada tipo de registro.

El valor predeterminado es 100.

Resultados de la acción

La acción List Asset Vulnerabilities proporciona los siguientes resultados:

Tipo de salida de la acción Disponibilidad
Adjunto del muro de casos No disponible
Vínculo al muro de casos No disponible
Tabla del muro de casos Disponible
Tabla de enriquecimiento No disponible
Resultado de JSON Disponible
Mensajes de salida Disponible
Resultado de secuencia de comandos Disponible
Tabla del muro de casos

La acción List Asset Vulnerabilities puede devolver las siguientes tablas:

Título de la tabla: ASSET_ID Vulnerabilities

Columnas de la tabla:

  • Categoría
  • Descripción
  • Gravedad
  • Hora del evento
  • CVE

Título de la tabla: ASSET_ID Configuraciones incorrectas

Columnas de la tabla:

  • Categoría
  • Descripción
  • Gravedad
  • Hora del evento
  • Recomendación
Resultado de JSON

En el siguiente ejemplo, se muestra el resultado JSON que se recibe cuando se usa la acción List Asset Vulnerabilities:

{
   ."siemplify_asset_display_name":[1] [2]  ""
"vulnerabilities": {
        "statistics": {
            "critical": 1,
            "high": 1,
            "medium": 1,
            "low": 1,
            "undefined": 1
        },
        "data": [
            {
                "category": "CATEGORY"
                "description": "DESCRIPTION"
                "cve_id": "CVE_ID"
                "event_time": "EVENT_TIME"
                "related_references": "RELATED_REFERENCES"
                "severity": "SEVERITY"
            }
        ]
    },
    "misconfigurations": {
        "statistics": {
            "critical": 1,
            "high": 1,
            "medium": 1,
            "low": 1,
            "undefined": 1
        },
        "data": [
            {
                "category": "CATEGORY"
                "description": "DESCRIPTION"
                "recommendation": "RECOMMENDATION"
                "event_time": "EVENT_TIME"
                "severity": "SEVERITY"
            }
        ]
    },
}
Mensajes de salida

La acción List Asset Vulnerabilities puede devolver los siguientes mensajes de salida:

Mensaje de salida Descripción del mensaje

Successfully returned related vulnerabilities and misconfigurations to the following entities in Security Command Center: ASSET_IDS.

No vulnerabilities and misconfigurations were found to the following entities in Security Command Center: ASSET_IDS.

No vulnerabilities and misconfigurations were found for the provided assets in Security Command Center.

La acción se completó correctamente.
Error executing action "List Asset Vulnerabilities". Reason: ERROR_REASON

No se pudo realizar la acción.

Verifica la conexión al servidor, los parámetros de entrada o las credenciales.

Resultado de secuencia de comandos

En la siguiente tabla, se indica el valor del resultado del script cuando se usa la acción List Asset Vulnerabilities:

Nombre del resultado de la secuencia de comandos Valor
is_success True o False

Ping

Usa la acción Ping para probar la conectividad a Security Command Center.

Esta acción no se ejecuta en las entidades de Google SecOps.

Entradas de acción

Ninguno

Resultados de la acción

La acción Ping proporciona los siguientes resultados:

Tipo de salida de la acción Disponibilidad
Adjunto del muro de casos No disponible
Vínculo al muro de casos No disponible
Tabla del muro de casos No disponible
Tabla de enriquecimiento No disponible
Resultado de JSON No disponible
Mensajes de salida Disponible
Resultado de secuencia de comandos Disponible
Mensajes de salida

La acción Ping puede devolver los siguientes mensajes de salida:

Mensaje de salida Descripción del mensaje
Successfully connected to the Security Command Center server with the provided connection parameters! La acción se completó correctamente.
Failed to connect to the Security Command Center server! Error is ERROR_REASON

No se pudo realizar la acción.

Verifica la conexión al servidor, los parámetros de entrada o las credenciales.

Resultado de secuencia de comandos

En la siguiente tabla, se indica el valor del resultado de la secuencia de comandos cuando se usa la acción Ping:

Nombre del resultado de la secuencia de comandos Valor
is_success True o False

Actualiza el hallazgo

Usa la acción Actualizar hallazgo para actualizar el hallazgo en Security Command Center.

Esta acción no se ejecuta en las entidades de Google SecOps.

Entradas de acción

La acción Update finding requiere los siguientes parámetros:

Parámetro Descripción
Finding Name

Obligatorio.

Se buscan los nombres para actualizar. Este parámetro acepta varios valores como una lista separada por comas.

El ejemplo para encontrar nombres es el siguiente: organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID

Mute Status

Opcional.

Es el estado de silencio del hallazgo.

Los valores posibles son los siguientes:

  • Select One
  • Mute
  • Unmute
State Status

Opcional.

Es el estado del hallazgo.

Los valores posibles son los siguientes:

  • Select One
  • Active
  • Inactive

Resultados de la acción

La acción Update finding proporciona los siguientes resultados:

Tipo de salida de la acción Disponibilidad
Adjunto del muro de casos No disponible
Vínculo al muro de casos No disponible
Tabla del muro de casos No disponible
Tabla de enriquecimiento No disponible
Resultado de JSON No disponible
Mensajes de salida Disponible
Resultado de secuencia de comandos Disponible
Mensajes de salida

La acción Update finding puede devolver los siguientes mensajes de salida:

Mensaje de salida Descripción del mensaje

Successfully updated the following findings in Security Command Center: FINDING_NAMES

Action wasn't able to find the following findings in Security Command Center: FINDING_NAMES

None of the provided findings were found in Security Command Center.

La acción se completó correctamente.
Error executing action "Update finding". Reason: ERROR_REASON

No se pudo realizar la acción.

Verifica la conexión al servidor, los parámetros de entrada o las credenciales.

Resultado de secuencia de comandos

En la siguiente tabla, se indica el valor del resultado de la secuencia de comandos cuando se usa la acción Update finding:

Nombre del resultado de la secuencia de comandos Valor
is_success True o False

Conectores

Para obtener más detalles sobre cómo configurar conectores en Google SecOps, consulta Ingiere tus datos (conectores).

Google Security Command Center: conector de Findings

Usa el Conector de Google Security Command Center - Findings para recuperar información sobre los hallazgos de Security Command Center.

El filtro de lista dinámico funciona con categorías.

Entradas del conector

El conector de Google Security Command Center - Findings requiere los siguientes parámetros:

Parámetro Descripción
Product Field Name

Obligatorio.

Es el nombre del campo en el que se almacena el nombre del producto.

El nombre del producto afecta principalmente la asignación. Para optimizar y mejorar el proceso de asignación del conector, el valor predeterminado se resuelve en un valor de resguardo al que se hace referencia desde el código. De forma predeterminada, cualquier entrada no válida para este parámetro se resuelve en un valor de resguardo.

El valor predeterminado es Product Name.

Event Field Name

Obligatorio.

Es el nombre del campo que determina el nombre del evento (subtipo).

El valor predeterminado es category.

Environment Field Name

Opcional.

Nombre del campo en el que se almacena el nombre del entorno.

Si falta el campo environment, el conector usa el valor predeterminado.

Environment Regex Pattern

Opcional.

Es un patrón de expresión regular que se ejecutará en el valor que se encuentra en el campo Environment Field Name. Este parámetro te permite manipular el campo del entorno con la lógica de expresiones regulares.

Usa el valor predeterminado .* para recuperar el valor Environment Field Name sin procesar requerido.

Si el patrón de expresión regular es nulo o está vacío, o si el valor del entorno es nulo, el resultado final del entorno es el entorno predeterminado.

Script Timeout (Seconds)

Obligatorio.

Es el límite de tiempo de espera, en segundos, para el proceso de Python que ejecuta la secuencia de comandos actual.

El valor predeterminado es 180.

API Root

Obligatorio.

Es la raíz de la API de la instancia de Security Command Center.

El valor predeterminado es https://securitycenter.googleapis.com.

Organization ID

Opcional.

Es el ID de una organización que se usará en la integración de Security Command Center.

Project ID

Opcional.

Es el ID del proyecto de la instancia de Security Command Center.

Quota Project ID

Opcional.

El ID del proyecto Google Cloud que usas para las APIs y la facturación. Google Cloud Este parámetro requiere que otorgues el rol Service Usage Consumer a tu cuenta de servicio.

Si no configuras un valor para este parámetro, la integración recupera el ID del proyecto de tu cuenta de servicio de Google Cloud .

User's Service Account

Obligatorio.

Es el contenido del archivo JSON de la clave de la cuenta de servicio.

Puedes configurar este parámetro o el parámetro Workload Identity Email.

Para configurar este parámetro, proporciona el contenido completo del archivo JSON de la clave de la cuenta de servicio que descargaste cuando creaste una cuenta de servicio.

Workload Identity Email

Opcional.

Es la dirección de correo electrónico del cliente de tu cuenta de servicio.

Puedes configurar este parámetro o el parámetro User's Service Account.

Si estableces este parámetro, configura el parámetro Quota Project ID.

Para actuar como cuentas de servicio con la federación de identidades para cargas de trabajo, otorga el rol Service Account Token Creator a tu cuenta de servicio. Para obtener más detalles sobre las identidades de cargas de trabajo y cómo trabajar con ellas, consulta Identidades para cargas de trabajo.

Finding Class Filter

Opcional.

Son las clases de hallazgos que el conector puede transferir.

Los valores posibles son los siguientes:

  • Threat
  • Vulnerability
  • Misconfiguration
  • SCC_Error
  • Observation

Si no estableces un valor, el conector ingiere hallazgos de todas las clases.

El valor predeterminado es Threat,Vulnerability,Misconfiguration,SCC_Error,Observation.

Lowest Severity To Fetch

Opcional.

Es la gravedad más baja de las alertas que se recuperarán.

Si no configuras este parámetro, el conector transferirá alertas con todos los niveles de gravedad.

El conector trata las alertas con gravedad indefinida como aquellas con gravedad Medium.

Los valores posibles son los siguientes:

  • Low
  • Medium
  • High
  • Critical

El valor predeterminado es High.

Max Hours Backwards

Opcional.

Cantidad de horas previas al momento actual para recuperar los hallazgos.

Este parámetro se puede aplicar a la iteración inicial del conector después de que lo habilites por primera vez o al valor de resguardo para una marca de tiempo del conector vencida.

El valor máximo es 24.

El valor predeterminado es 1.

Max Findings To Fetch

Opcional.

Es la cantidad de hallazgos que se procesarán en cada iteración del conector.

El valor máximo es 1000.

El valor predeterminado es 100.

Use dynamic list as a blacklist

Obligatorio.

Si se selecciona esta opción, el conector usa la lista dinámica como lista de bloqueo.

No está seleccionada de forma predeterminada.

Verify SSL

Obligatorio.

Si se selecciona esta opción, la integración valida el certificado SSL cuando se conecta al servidor de Security Command Center.

No está seleccionada de forma predeterminada.

Proxy Server Address

Opcional.

Es la dirección del servidor proxy que se usará.

Proxy Username

Opcional.

Nombre de usuario del proxy con el que se realizará la autenticación.

Proxy Password

Opcional.

Contraseña del proxy para la autenticación.

Reglas del conector

El conector de Google Security Command Center - Findings admite proxies.

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.