Google Cloud Storage

Questo documento fornisce indicazioni su come integrare Cloud Storage con il modulo SOAR di Google Security Operations.

Questa integrazione utilizza uno o più componenti open source. Puoi scaricare una copia del codice sorgente di questa integrazione da un bucket Cloud Storage.

Casi d'uso

Nella piattaforma Google SecOps SOAR, l'integrazione di Google Cloud Storage risolve i seguenti casi d'uso:

  • Archiviazione delle prove degli incidenti: i playbook possono raccogliere e archiviare automaticamente le prove relative agli incidenti, come log e campioni di malware, nei bucket Cloud Storage per fornire un repository a prova di manomissione per la conservazione delle prove.

  • Condivisione di threat intelligence:il tuo team di sicurezza può utilizzare Cloud Storage per condividere in modo sicuro feed di threat intelligence, come elenchi di indirizzi IP e domini dannosi, con altri team o organizzazioni. La condivisione dei feed consente una difesa collaborativa dalle minacce e tempi di risposta più rapidi.

  • Integrazione della sandbox di analisi del malware: i playbook possono inviare automaticamente i file sospetti di un incidente a una sandbox di analisi del malware basata sul cloud. Puoi archiviare i risultati dell'analisi in Cloud Storage per la revisione e ulteriori azioni per fornire un'analisi del malware efficiente e scalabile.

  • Backup della configurazione di sicurezza: utilizza le funzionalità SOAR di Google SecOps per automatizzare i backup regolari delle configurazioni di sicurezza critiche, come le regole firewall e le firme del sistema di rilevamento delle intrusioni, in Cloud Storage. L'automazione dei backup garantisce la continuità operativa e un ripristino più rapido in caso di modifiche accidentali o dannose.

  • Archiviazione degli artefatti della campagna di phishing: utilizza le funzionalità SOAR di Google SecOps per archiviare email di phishing, allegati e altri artefatti in Cloud Storage durante l'analisi di una campagna di phishing. L'archiviazione degli artefatti consente l'analisi e la conservazione centralizzate delle prove per potenziali azioni legali.

Prima di iniziare

Prima di configurare l'integrazione di Cloud Storage in Google SecOps, completa i seguenti passaggi preliminari:

  1. Crea un account di servizio.

  2. Concedi i ruoli necessari al service account.

  3. Scegli e configura un metodo di autenticazione.

Crea un account di servizio

Per creare un account di servizio, completa i seguenti passaggi:

  1. Nella console Google Cloud , vai a Credenziali. Vai a Credenziali

  2. Nel menu Crea credenziali, seleziona Service account.

  3. Inserisci un nome nel campo Nome service account e fai clic su Crea e continua.

  4. Salta le schermate facoltative di assegnazione dei ruoli e accesso alle entità facendo clic su Continua > Fine.

Concedi ruoli al tuo account di servizio

Per consentire all'integrazione di accedere e gestire i bucket e gli oggetti di archiviazione, concedi i ruoli necessari alaccount di serviziot:

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

  2. Individua il account di servizio e fai clic su ModificaModifica entità.

  3. Fai clic su Aggiungi un altro ruolo e seleziona quanto segue:

    • Amministratore storage: fornisce il controllo completo di bucket e oggetti.

    • Service Usage Consumer: obbligatorio solo se utilizzi un Quota Project ID ai fini della fatturazione.

  4. Fai clic su Salva.

Scegliere e configurare un metodo di autenticazione

Workload Identity è il metodo di autenticazione consigliato perché utilizza token di breve durata anziché secret statici.

  1. Chiave JSON: si basa su un file di chiave segreta statica.

  2. Workload Identity (consigliato): utilizza token di accesso temporanei.

Configurare una chiave JSON

Utilizza la seguente procedura per generare un file della chiave del account di servizio in formato JSON:

  1. Seleziona il account di servizio nella console Google Cloud e vai a Chiavi.

  2. Fai clic su Aggiungi chiave > Crea nuova chiave.

  3. Seleziona JSON e fai clic su Crea. Il file della chiave viene scaricato sul tuo computer.

Configurare le credenziali di Workload Identity

Workload Identity consente a Google SecOps di simulare in modo sicuro il tuo account di servizio. Completa i seguenti passaggi per configurare l'identità del workload.

Configura l'istanza di integrazione

Per attivare la procedura di rilevamento dell'identità, devi prima configurare i parametri di connessione di base in Google SecOps:

  1. Vai a Hub dei contenuti > Integrazioni delle risposte.

  2. Cerca e seleziona l'integrazione Google Cloud Storage.

  3. Configura i seguenti parametri obbligatori:

    • API Root: inserisci l'URL di base (ad esempio https://storage.googleapis.com).

    • Email di Workload Identity: inserisci l'indirizzo email del account di servizio che hai creato in precedenza.

    • Verifica SSL: assicurati che questa opzione sia abilitata.

  4. Lascia vuoto il campo Account di servizio dell'utente (JSON).

  5. Fai clic su Salva.

Identificare l'email dell'identità univoca

L'identificazione dell'indirizzo dell'identità specifica richiede l'attivazione di un test di connessione perché Google SecOps utilizza un principal interno specifico per comunicare con le tue risorse Google Cloud . Questo passaggio ti assicura di concedere le autorizzazioni all'entità di backend corretta.

  1. Fai clic su Test. Il test dovrebbe non riuscire.

  2. Fai clic sul pulsante close_small accanto a Test.

  3. Cerca nel messaggio di errore un indirizzo email che inizia con gke-init-python@... o soar-python@.... Copia questa email univoca.

Concedere le autorizzazioni di rappresentazione

La creazione di una relazione di trust richiede la concessione dell'autorità all'identità univoca di agire per conto del tuo account di servizio. Questo passaggio finale stabilisce il bridge sicuro che consente all'integrazione di accedere alle tue risorse utilizzando token temporanei di breve durata.

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

  2. Seleziona il account di servizio di destinazione e vai ad Autorizzazioni.

  3. Fai clic su Concedi l'accesso.

  4. Nel campo Nuove entità, incolla l'email dell'identità univoca che hai copiato da Google SecOps.

  5. Nel campo Assegna i ruoli, seleziona il ruolo Service Account Token Creator (roles/iam.serviceAccountTokenCreator).

  6. Fai clic su Salva.

Integra Cloud Storage con Google SecOps

L'integrazione richiede i seguenti parametri:

Parametri Descrizione
Service Account Optional

L'intero contenuto del file della chiave JSON del account di servizio.

Workload Identity Email (Facoltativo)

L'indirizzo email client del account di servizio utilizzato per la simulazione dell'identità di Workload Identity.

Project ID Optional

L'ID progetto da utilizzare per l'integrazione di Cloud Storage. Se non imposti alcun valore per questo parametro, l'ID progetto viene recuperato dal contenuto del file JSON fornito nel parametro Service Account.

Quota Project ID Optional

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 viene fornito alcun valore, l'ID progetto viene recuperato dal contenuto del file JSON fornito nel parametro Service Account.

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.

Scaricare un oggetto da un bucket

Utilizza questa azione per scaricare un oggetto (file) specifico da un bucket Cloud Storage.

Questa azione non viene eseguita sulle entità.

Input azione

L'azione Scarica un oggetto da un bucket richiede i seguenti parametri:

Parametri Descrizione
Bucket Name Obbligatorio

Il nome del bucket Cloud Storage che contiene l'oggetto da scaricare.

Object Name Obbligatorio

Il nome completo dell'oggetto da scaricare.

Se l'oggetto si trova all'interno di una cartella nel bucket, includi il percorso della cartella, ad esempio folderA/mydocument.pdf.

Download Path Obbligatorio

Il percorso assoluto dell'oggetto scaricato che porta a una directory esistente, ad esempio, /tmp/downloads/.

Output dell'azione

L'azione Scarica un oggetto da un bucket fornisce i seguenti output:

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

L'esempio seguente descrive l'output del risultato JSON ricevuto quando si utilizza l'azione Scarica un oggetto da un bucket:

{
"object_name": "123.txt"
"download_path": "/usr/bin/share/download.txt"
}
Messaggi di output

In una bacheca casi, l'azione Scarica un oggetto da un bucket fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

OBJECT_NAME successfully downloaded to DESTINATION_PATH.

Action wasn't able to download OBJECT_NAME. Reason: Bucket BUCKET_NAME not found.

Action wasn't able to download OBJECT_NAME. Reason: No such object.

Azione riuscita.
Error executing action "Download an Object From a Bucket". Reason: ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La tabella seguente descrive i valori per l'output del risultato dello script quando utilizzi l'azione Scarica un oggetto da un bucket:

Nome del risultato dello script Valore
is_success True o False

Recuperare l'elenco di controllo dell'accesso di un bucket

Utilizza l'azione Recupera elenco di controllo dell'accesso di un bucket per recuperare e visualizzare gli ACL per i bucket Cloud Storage specificati.

Questa azione non viene eseguita sulle entità.

Input azione

L'azione Recupera elenco di controllo dell'accesso di un bucket richiede i seguenti parametri:

Parametri Descrizione
Bucket Name Obbligatorio

Il nome del bucket Cloud Storage per cui vuoi recuperare l'ACL. Per recuperare gli ACL per più bucket, inserisci i nomi dei bucket come stringa separata da virgole, ad esempio bucket1,bucket2,bucket3.

Output dell'azione

L'azione Recupera elenco di controllo dell'accesso di un bucket fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca casi 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
Risultato JSON
[
  {"BucketName": "ziv",
   "BucketACLs": [
                  {"Entity": "project-owners-ID",
                   "Role": "OWNER"}
                 ]
  }
]
Messaggi di output

In una bacheca casi, l'azione Recupera elenco di controllo dell'accesso di un bucket fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully retrieved the access control list (ACL) for the Cloud Storage buckets BUCKET_NAMES

Action wasn't able to return the access control list(ACL) for the Cloud Storage buckets BUCKET_NAMES. Reason: Cannot get legacy ACL for a bucket that has uniform bucket-level access. Read more at https://cloud.google.com/storage/docs/uniform-bucket-level-access

Action wasn't able to return the access control list(ACL) for the Cloud Storage buckets BUCKET_NAMES.

Azione riuscita.
Error executing action "Get a Bucket's Access Control List". Reason: ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La tabella seguente descrive i valori dell'output del risultato dello script quando utilizzi l'azione Recupera elenco di controllo dell'accesso di un bucket:

Nome del risultato dello script Valore
is_success True o False

Elenco degli oggetti bucket

Utilizza l'azione Elenca oggetti bucket per elencare gli oggetti archiviati nel bucket Cloud Storage.

Questa azione non viene eseguita sulle entità.

Input azione

L'azione Elenca oggetti bucket richiede i seguenti parametri:

Parametri Descrizione
Bucket Name Obbligatorio

Il nome del bucket da cui recuperare gli oggetti.

Max Objects to Return Optional

Il numero di oggetti da restituire.

Per impostazione predefinita, l'azione restituisce 50 oggetti per ogni esecuzione.

Retrieves the Access Control List of an object Optional

Se selezionata, l'azione recupera l'ACL dell'oggetto.

Non selezionato per impostazione predefinita.

Output dell'azione

L'azione Elenca oggetti bucket fornisce i seguenti output:

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

Gli esempi seguenti descrivono gli output dei risultati JSON ricevuti quando si utilizza l'azione Elenca oggetti bucket:

  • Se il parametro Retrieves the Access Control List of an object non è selezionato:

    {
        "Objects": [
            {
                "ObjectName": "test.txt",
            "Bucket":
            "ContentType":
                "TimeCreated": " ",
                "TimeUpdated": " ",
                "Size": 18,
                "MD5": "7CjVfQ+Oz/C0pI08IKRdvQ==",
                "Owner": "",
                "CR32c": "RQEqxA==",
                "id": "siemplify-tip/test.txt/1604926667310271"
            }
        ]
    }
    
  • Se è selezionato il parametro Retrieves the Access Control List of an object:

    {
        "Objects": [
            {
                "ObjectName": "test.txt",
            "Bucket": "BUCKET_NAME",
            "ContentType": "text/plain"
                "TimeCreated": " ",
                "TimeUpdated": " ",
                "Size": 18,
                "MD5": "7CjVfQ+Oz/C0pI08IKRdvQ==",
                "Owner": "",
                "CR32c": "RQEqxA==",
                "id": "BUCKET_NAME/test.txt/1604926667310271",
                "ObjectACL": [
                    {
                        "entity": "user@example.com",
                        "role": "OWNER"
                    }]
            },
        ]
    }
    
Messaggi di output

In una bacheca casi, l'azione Elenca oggetti bucket fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully returned objects of the BUCKET_NAME bucket in Google Cloud Storage.

Action wasn't able to return objects of the BUCKET_NAME bucket in Google Cloud Storage.

Azione riuscita.
Error executing action "List Bucket Objects". Reason: ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La seguente tabella descrive i valori per l'output del risultato dello script quando utilizzi l'azione Elenca oggetti bucket:

Nome del risultato dello script Valore
is_success True o False

Elenco bucket

Utilizza l'azione Elenca bucket per recuperare un elenco di bucket da Cloud Storage.

Questa azione non viene eseguita sulle entità.

Input azione

L'azione Elenca bucket richiede i seguenti parametri:

Parametri Descrizione
Max Results Optional

Il numero massimo di bucket da restituire.

Per impostazione predefinita, l'azione restituisce 50 bucket.

Output dell'azione

L'azione Elenca bucket fornisce i seguenti output:

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

L'esempio seguente descrive l'output del risultato JSON ricevuto quando si utilizza l'azione List Buckets:

{
    "Buckets": [
        {
            "CreationDate": "2020-11-09T12:57:03.981Z",
            "ModificationDate": "2020-11-09T12:57:03.981Z",
            "Name": "testexample",
            "Owner": "testexample"
        }]
}
Messaggi di output

In una bacheca richieste, l'azione Elenca bucket fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully listed available buckets in Google Cloud Storage.

Action wasn't able to list available buckets in Google Cloud Storage.

Azione riuscita.
Error executing action "List Buckets". Reason: ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La seguente tabella descrive i valori per l'output del risultato dello script quando utilizzi l'azione Elenca bucket:

Nome del risultato dello script Valore
is_success True o False

Dindin

Utilizza l'azione Ping per testare la connettività a Cloud Storage.

Questa azione non viene eseguita sulle entità.

Input azione

Nessuno.

Output dell'azione

L'azione fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca casi 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

In una bacheca casi, l'azione Ping fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio
Successfully connected to the Google Cloud Storage server with the provided connection parameters! Azione riuscita.
Failed to connect to the Google Cloud Storage server! Error is ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La seguente tabella descrive i valori dell'output del risultato dello script quando utilizzi l'azione Ping:

Nome del risultato dello script Valore
is_success True o False

Rimuovi l'accesso pubblico dal bucket

Utilizza l'azione Rimuovi l'accesso pubblico dal bucket per rimuovere l'accesso pubblico dal bucket Cloud Storage.

Questa azione richiede che tu assegni il ruolo Storage Admin al account di servizio che utilizzi nell'integrazione.

Questa azione non viene eseguita sulle entità.

Input azione

L'azione Rimuovi l'accesso pubblico dal bucket richiede i seguenti parametri:

Parametri Descrizione
Resource Name Obbligatorio

Il nome della risorsa del bucket.

Prevent Public Access From Bucket Obbligatorio

Se selezionata, l'azione configura il bucket in modo da impedire il possibile accesso pubblico.

Output dell'azione

L'azione Rimuovi l'accesso pubblico dal bucket fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca casi 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

In una bacheca casi, l'azione Rimuovi l'accesso pubblico dal bucket fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio
Successfully removed public access from bucket using Google Cloud Storage: RESOURCE_NAME Azione riuscita.
Error executing action "Remove Public Access From Bucket". Reason: ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La tabella seguente descrive i valori dell'output del risultato dello script quando si utilizza l'azione Rimuovi accesso pubblico dal bucket:

Nome del risultato dello script Valore
is_success True o False

Aggiorna una voce ACL nel bucket

Utilizza l'azione Aggiorna una voce ACL nel bucket per aggiornare una voce ACL nel bucket Cloud Storage specificato.

Input azione

L'azione Aggiorna una voce ACL sul bucket richiede i seguenti parametri:

Parametri Descrizione
Bucket Name Obbligatorio

Il nome del bucket per cui modificare la ACL.

Entity Obbligatorio

L'entità che detiene l'autorizzazione.

I valori possibili sono:

  • user-userId
  • user-emailAddress
  • group-groupId
  • group-emailAddress
  • allUsers
  • allAuthenticatedUsers

Per saperne di più sulle entità, consulta Rappresentazioni delle risorse.

Role Obbligatorio

L'autorizzazione di accesso richiesta per l'entità.

I valori possibili sono:

  • OWNER
  • READER
  • WRITER

Output dell'azione

L'azione Aggiorna una voce ACL sul bucket fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca casi 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

In una bacheca casi, l'azione Aggiorna una voce ACL nel bucket fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Action wasn't able to update the ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. Reason: OWNERs are WRITERs.

Action wasn't able to update the ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. Reason: OWNERs are WRITERs.

Azione riuscita. Il ruolo esistente non corrisponde al valore parametro Role. Controlla il valore parametro Role.
Successfully updated ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. Azione riuscita.

Error executing action "Update an ACL entry on Bucket". Reason: Entity ENTITY does not exist in the ACL of bucket BUCKET_NAME.

Action wasn't able to update the ACL entity: ENTITY to role: ROLE in bucket BUCKET_NAME. The entity holding the permission can be user-userId, user-emailAddress, group-groupId, group-emailAddress, allUsers, or allAuthenticatedUsers.

Error executing action "Update an ACL entry on Bucket". Reason: ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La seguente tabella descrive i valori per l'output del risultato dello script quando si utilizza l'azione Aggiorna una voce ACL nel bucket:

Nome del risultato dello script Valore
is_success True o False

Caricare un oggetto in un bucket

Utilizza l'azione Carica un oggetto in un bucket per caricare un oggetto nel bucket Cloud Storage.

Questa azione non viene eseguita sulle entità.

Input azione

L'azione Carica un oggetto in un bucket richiede i seguenti parametri:

Parametri Descrizione
Bucket Name Obbligatorio

Il nome del bucket in cui caricare un oggetto.

Source File Path Obbligatorio

Il percorso assoluto del file da caricare, ad esempio /local/path/to/filename.

Object Name Obbligatorio

Il nome dell'oggetto caricato nel bucket.

Output dell'azione

L'azione Carica un oggetto in un bucket fornisce i seguenti output:

Tipo di output dell'azione Disponibilità
Allegato della bacheca casi Non disponibile
Link alla bacheca casi Non disponibile
Tabella della bacheca casi Non disponibile
Tabella di arricchimento Non disponibile
Risultato JSON Disponibile
Messaggi di output Disponibile
Risultato dello script Disponibile
Risultato JSON
{
   "object_id":"BUCKET_NAME/errorlog.txt/1610616919132517",
   "Object_name":"errorlog.txt",
   "md5_hash":"PTdL8D6pBwIKyMfIXR/H9A==",
   "object_path":"/b/BUCKET_NAME/o/errorlog.txt"
}
Messaggi di output

In una bacheca casi, l'azione Carica un oggetto in un bucket fornisce i seguenti messaggi di output:

Messaggio di output Descrizione del messaggio

Successfully uploaded SOURCE_PATH to bucket: BUCKET_NAME.

Action wasn't able to upload SOURCE_PATH to Google Cloud Storage. Reason:No such file or directory: SOURCE_PATH.

Azione riuscita.
Error executing action "Upload an Object To a Bucket". Reason: ERROR_REASON

Azione non riuscita.

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

Risultato dello script

La tabella seguente descrive i valori per l'output del risultato dello script quando utilizzi l'azione Carica un oggetto in un bucket:

Nome del risultato dello script Valore
is_success True o False

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