Integra Security Command Center con Google SecOps

Questo documento spiega come integrare Security Command Center con Google Security Operations (Google SecOps).

Versione integrazione: 13.0

Prima di iniziare

Per utilizzare l'integrazione, devi disporre di un ruolo IAM (Identity and Access Management) personalizzato e di un service account Google Cloud . Puoi utilizzare un account di servizio esistente o crearne uno nuovo.

Crea e configura un ruolo IAM

Per creare e configurare un ruolo IAM personalizzato per l'integrazione, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai alla pagina Ruoli di IAM.

    Vai a Ruoli.

  2. Fai clic su Crea ruolo per creare un ruolo personalizzato con le autorizzazioni richieste per l'integrazione.

  3. Per un nuovo ruolo personalizzato, inserisci un titolo, una descrizione e un ID univoco.

  4. Imposta Fase di lancio del ruolo su Disponibilità generale.

  5. Aggiungi le seguenti autorizzazioni al ruolo creato:

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

Crea e configura una chiave API

Per creare la chiave API, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai a API e servizi > Credenziali > Crea credenziali.

  2. Seleziona Chiave API. Viene visualizzata una finestra di dialogo con una chiave API generata. Copia la chiave API e memorizzala in modo sicuro.

Per configurare la limitazione dell'API per la chiave API, completa i seguenti passaggi:

  1. Fai clic su Limita chiave > Limitazioni API > Limita chiave.

  2. Seleziona API Security Command Center dall'elenco delle API e configura le restrizioni applicabili, quindi fai clic su Salva.

Concedere l'accesso alla chiave API

Per concedere a Security Command Center l'accesso alla tua chiave API, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai a IAM e amministrazione > Service account.

  2. Seleziona il account di servizio che utilizzi nell'integrazione di Security Command Center.

  3. Fai clic sull'indirizzo email del account di servizio.

  4. Seleziona Concedi l'accesso.

  5. Nel campo Nuovi membri, inserisci l'indirizzo email del account di servizio.

  6. In Centro sicurezza, seleziona il ruolo Security Center Findings Editor e fai clic su Salva.

Parametri di integrazione

L'integrazione di Security Command Center richiede i seguenti parametri:

Parametro Descrizione
API Root

Obbligatorio.

La radice dell'API dell'istanza di Security Command Center.

Organization ID

Facoltativo.

L'ID organizzazione da utilizzare nell'integrazione di Security Command Center.

Project ID

Facoltativo.

L'ID progetto dell'istanza di Security Command Center.

Quota Project ID

Facoltativo.

L'ID progetto Google Cloud che utilizzi per le API e la fatturazione. Google Cloud Questo parametro richiede che tu conceda il ruolo Service Usage Consumer al tuo account di servizio.

Se non imposti un valore per questo parametro, l'integrazione recupera l'ID progetto dal tuo account di servizio Google Cloud .

User's Service Account

Obbligatorio.

Il contenuto del file JSON della chiave dell'account di servizio.

Puoi configurare questo parametro o il parametro Workload Identity Email.

Per configurare questo parametro, fornisci l'intero contenuto del file JSON della chiave dell'account di servizio che hai scaricato quando hai creato un account di servizio.

Workload Identity Email

Facoltativo.

L'indirizzo email client del tuo account di servizio.

Puoi configurare questo parametro o il parametro User's Service Account.

Se imposti questo parametro, configura il parametro Quota Project ID.

Per simulare l'identità dei service account con la federazione delle identità per i carichi di lavoro, concedi il ruolo Service Account Token Creator al tuo account di servizio. Per ulteriori dettagli sulle identità dei workload e su come utilizzarle, consulta Identità per i workload.

Verify SSL

Obbligatorio.

Se selezionata, l'integrazione convalida il certificato SSL quando si connette al server Security Command Center.

Questa opzione è selezionata per impostazione predefinita.

Per istruzioni su come configurare un'integrazione in Google SecOps, consulta Configurare le integrazioni.

Se necessario, potrai apportare modifiche in un secondo momento. Dopo aver configurato un'istanza di integrazione, puoi utilizzarla nei playbook. Per saperne di più su come configurare e supportare più istanze, consulta Supportare più istanze.

Azioni

Per ulteriori informazioni sulle azioni, vedi Rispondere alle azioni in attesa dalla tua scrivania e Eseguire un'azione manuale.

Recupero dettagli del risultato

Utilizza l'azione Ottieni dettagli risultato per recuperare i dettagli di un risultato in Security Command Center.

Questa azione non viene eseguita sulle entità Google SecOps.

Input azione

L'azione Ottieni dettagli del risultato richiede i seguenti parametri:

Parametro Descrizione
Finding Name

Obbligatorio.

Ricerca dei nomi per restituire i dettagli. Questo parametro accetta più valori come elenco separato da virgole.

L'esempio per trovare i nomi è il seguente:

organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID

Output dell'azione

L'azione Ottieni dettagli risultato fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca richieste Non disponibile
Tabella della bacheca casi Disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Tabella della bacheca casi

L'azione Ottieni dettagli del risultato può restituire la seguente tabella:

Titolo della tabella: Dettagli del risultato

Colonne della tabella:

  • Category
  • Stato
  • Gravità
  • Tipo
Risultato JSON

Il seguente esempio mostra l'output del risultato JSON ricevuto quando si utilizza l'azione Ottieni dettagli del problema:

{
   {
      "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"
      }
    }
}
Messaggi di output

L'azione Ottieni dettagli del risultato può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

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.

L'azione è riuscita.
Error executing action "Get Finding Details". Reason: ERROR_REASON

L'azione non è riuscita.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La tabella seguente elenca il valore dell'output del risultato dello script quando utilizzi l'azione Ottieni dettagli risultato:

Nome del risultato dello script Valore
is_success True o False

List Asset Vulnerabilities

Utilizza l'azione Elenca vulnerabilità asset per elencare le vulnerabilità correlate alle entità in Security Command Center.

Questa azione non viene eseguita sulle entità Google SecOps.

Input azione

L'azione Elenca vulnerabilità asset richiede i seguenti parametri:

Parametro Descrizione
Asset Resource Names

Obbligatorio.

Nomi delle risorse degli asset per restituire i dati. Questo parametro accetta più valori come elenco separato da virgole.

Timeframe

Facoltativo.

Un periodo in cui cercare le vulnerabilità o gli errori di configurazione.

I valori possibili sono:

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

Il valore predefinito è All Time.

Record Types

Facoltativo.

Il tipo di record da restituire.

I valori possibili sono:

  • Vulnerabilities Misconfigurations
  • Vulnerabilities + Misconfigurations

Il valore predefinito è Vulnerabilities + Misconfigurations.

Output Type

Facoltativo.

Il tipo di output da restituire nel risultato JSON per ogni asset.

I valori possibili sono:

  • Statistics
  • Data
  • Statistics + Data

Il valore predefinito è Statistics.

Max Records To Return

Facoltativo.

Il numero massimo di record da restituire per ogni tipo di record.

Il valore predefinito è 100.

Output dell'azione

L'azione Elenca vulnerabilità asset fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca richieste Non disponibile
Tabella della bacheca casi Disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Tabella della bacheca casi

L'azione Elenca vulnerabilità asset può restituire le seguenti tabelle:

Titolo tabella: Vulnerabilità ASSET_ID

Colonne della tabella:

  • Category
  • Descrizione
  • Gravità
  • Ora dell'evento
  • CVE

Titolo tabella: ASSET_ID Errori di configurazione

Colonne della tabella:

  • Category
  • Descrizione
  • Gravità
  • Ora dell'evento
  • Consiglio
Risultato JSON

L'esempio seguente mostra l'output del risultato JSON ricevuto quando si utilizza l'azione Elenca vulnerabilità asset:

{
   ."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"
            }
        ]
    },
}
Messaggi di output

L'azione List Asset Vulnerabilities può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

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.

L'azione è riuscita.
Error executing action "List Asset Vulnerabilities". Reason: ERROR_REASON

L'azione non è riuscita.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La seguente tabella elenca il valore dell'output del risultato dello script quando utilizzi l'azione Elenca vulnerabilità asset:

Nome del risultato dello script Valore
is_success True o False

Dindin

Utilizza l'azione Ping per testare la connettività a Security Command Center.

Questa azione non viene eseguita sulle entità Google SecOps.

Input azione

Nessuno.

Output dell'azione

L'azione Ping fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca richieste Non disponibile
Tabella della bacheca casi Non disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Non disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Messaggi di output

L'azione Ping può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio
Successfully connected to the Security Command Center server with the provided connection parameters! L'azione è riuscita.
Failed to connect to the Security Command Center server! Error is ERROR_REASON

L'azione non è riuscita.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La seguente tabella elenca il valore dell'output del risultato dello script quando utilizzi l'azione Ping:

Nome del risultato dello script Valore
is_success True o False

Aggiorna esito

Utilizza l'azione Aggiorna risultato per aggiornare il risultato in Security Command Center.

Questa azione non viene eseguita sulle entità Google SecOps.

Input azione

L'azione Aggiorna risultato richiede i seguenti parametri:

Parametro Descrizione
Finding Name

Obbligatorio.

Trovare i nomi da aggiornare. Questo parametro accetta più valori come elenco separato da virgole.

L'esempio per trovare i nomi è il seguente: organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID

Mute Status

Facoltativo.

Lo stato di disattivazione dell'esito.

I valori possibili sono:

  • Select One
  • Mute
  • Unmute
State Status

Facoltativo.

Lo stato del risultato.

I valori possibili sono:

  • Select One
  • Active
  • Inactive

Output dell'azione

L'azione Aggiorna risultato fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca richieste Non disponibile
Tabella della bacheca casi Non disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Non disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Messaggi di output

L'azione Aggiorna risultato può restituire i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

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.

L'azione è riuscita.
Error executing action "Update finding". Reason: ERROR_REASON

L'azione non è riuscita.

Controlla la connessione al server, i parametri di input o le credenziali.

Risultato dello script

La tabella seguente elenca il valore dell'output del risultato dello script quando utilizzi l'azione Aggiorna risultato:

Nome del risultato dello script Valore
is_success True o False

Connettori

Per maggiori dettagli su come configurare i connettori in Google SecOps, consulta Importare i dati (connettori).

Google Security Command Center - Findings Connector

Utilizza il connettore Google Security Command Center - Findings per recuperare informazioni sugli esiti di Security Command Center.

Il filtro dell'elenco dinamico funziona con le categorie.

Input del connettore

Il connettore Google Security Command Center - Findings richiede i seguenti parametri:

Parametro Descrizione
Product Field Name

Obbligatorio.

Il nome del campo in cui è memorizzato il nome del prodotto.

Il nome del prodotto influisce principalmente sulla mappatura. Per semplificare e migliorare la procedura di mappatura per il connettore, il valore predefinito viene risolto in un valore di riserva a cui viene fatto riferimento dal codice. Qualsiasi input non valido per questo parametro viene risolto in un valore di riserva per impostazione predefinita.

Il valore predefinito è Product Name.

Event Field Name

Obbligatorio.

Il nome del campo che determina il nome (sottotipo) dell'evento.

Il valore predefinito è category.

Environment Field Name

Facoltativo.

Il nome del campo in cui è memorizzato il nome dell'ambiente.

Se il campo ambiente non è presente, il connettore utilizza il valore predefinito.

Environment Regex Pattern

Facoltativo.

Un pattern di espressione regolare da eseguire sul valore trovato nel campo Environment Field Name. Questo parametro ti consente di manipolare il campo dell'ambiente utilizzando la logica delle espressioni regolari.

Utilizza il valore predefinito .* per recuperare il valore Environment Field Name non elaborato richiesto.

Se il pattern dell'espressione regolare è nullo o vuoto oppure il valore dell'ambiente è nullo, l'ambiente finale è quello predefinito.

Script Timeout (Seconds)

Obbligatorio.

Il limite di timeout, in secondi, per il processo Python che esegue lo script corrente.

Il valore predefinito è 180.

API Root

Obbligatorio.

La radice dell'API dell'istanza di Security Command Center.

Il valore predefinito è https://securitycenter.googleapis.com.

Organization ID

Facoltativo.

L'ID di un'organizzazione da utilizzare nell'integrazione di Security Command Center.

Project ID

Facoltativo.

L'ID progetto dell'istanza di Security Command Center.

Quota Project ID

Facoltativo.

L'ID progetto Google Cloud che utilizzi per le API e la fatturazione. Google Cloud Questo parametro richiede che tu conceda il ruolo Service Usage Consumer al tuo account di servizio.

Se non imposti un valore per questo parametro, l'integrazione recupera l'ID progetto dal tuo account di servizio Google Cloud .

User's Service Account

Obbligatorio.

Il contenuto del file JSON della chiave dell'account di servizio.

Puoi configurare questo parametro o il parametro Workload Identity Email.

Per configurare questo parametro, fornisci l'intero contenuto del file JSON della chiave dell'account di servizio che hai scaricato quando hai creato un service account.

Workload Identity Email

Facoltativo.

L'indirizzo email client del tuo account di servizio.

Puoi configurare questo parametro o il parametro User's Service Account.

Se imposti questo parametro, configura il parametro Quota Project ID.

Per simulare l'identità dei service account con la federazione delle identità per i carichi di lavoro, concedi il ruolo Service Account Token Creator al tuo account di servizio. Per ulteriori dettagli sulle identità dei workload e su come utilizzarle, consulta Identità per i workload.

Finding Class Filter

Facoltativo.

Le classi di risultati da importare per il connettore.

I valori possibili sono:

  • Threat
  • Vulnerability
  • Misconfiguration
  • SCC_Error
  • Observation

Se non imposti un valore, il connettore acquisisce i risultati di tutte le classi.

Il valore predefinito è Threat,Vulnerability,Misconfiguration,SCC_Error,Observation.

Lowest Severity To Fetch

Facoltativo.

La gravità minima degli avvisi da recuperare.

Se non configuri questo parametro, il connettore acquisisce gli avvisi con tutti i livelli di gravità.

Il connettore considera gli avvisi con gravità non definita come quelli con gravità Medium.

I valori possibili sono:

  • Low
  • Medium
  • High
  • Critical

Il valore predefinito è High.

Max Hours Backwards

Facoltativo.

Il numero di ore prima di ora per recuperare i risultati.

Questo parametro può essere applicato all'iterazione iniziale del connettore dopo l'attivazione del connettore per la prima volta o al valore di riserva per un timestamp del connettore scaduto.

Il valore massimo è 24.

Il valore predefinito è 1.

Max Findings To Fetch

Facoltativo.

Il numero di risultati da elaborare in ogni iterazione del connettore.

Il valore massimo è 1000.

Il valore predefinito è 100.

Use dynamic list as a blacklist

Obbligatorio.

Se selezionato, il connettore utilizza l'elenco dinamico come blocklist.

Non selezionato per impostazione predefinita.

Verify SSL

Obbligatorio.

Se selezionata, l'integrazione convalida il certificato SSL quando si connette al server Security Command Center.

Non selezionato per impostazione predefinita.

Proxy Server Address

Facoltativo.

L'indirizzo del server proxy da utilizzare.

Proxy Username

Facoltativo.

Il nome utente del proxy con cui eseguire l'autenticazione.

Proxy Password

Facoltativo.

La password del proxy per l'autenticazione.

Regole del connettore

Google Security Command Center - Findings Connector supporta i proxy.

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.