Panoramica dei moduli personalizzati per Event Threat Detection

Questa pagina fornisce una panoramica dei moduli personalizzati per Event Threat Detection.

Puoi configurare moduli, noti anche come rilevatori, per elaborare il flusso Cloud Logging e rilevare le minacce in base ai parametri specificati. Questa funzionalità estende le funzionalità di monitoraggio di Event Threat Detection e ti consente di aggiungere moduli con i tuoi parametri di rilevamento, indicazioni di correzione e designazioni di gravità per le configurazioni che i rilevatori integrati potrebbero non supportare.

I moduli personalizzati sono utili se hai bisogno di moduli con regole di rilevamento che soddisfino le esigenze specifiche della tua organizzazione. Ad esempio, puoi aggiungere un modulo personalizzato che crea risultati se le voci di log mostrano che una risorsa è connessa a indirizzi IP specifici o è stata creata in una regione con restrizioni.

Come funzionano i moduli personalizzati per Event Threat Detection

I moduli personalizzati sono un gruppo selezionato di rilevatori di Event Threat Detection che puoi configurare con parametri di rilevamento personalizzati. Puoi creare un modulo personalizzato Event Threat Detection tramite la console Google Cloud. In alternativa, puoi crearne uno aggiornando un modello di modulo personalizzato e inviando il modulo personalizzato a Security Command Center tramite Google Cloud CLI. Per informazioni sui modelli disponibili, consulta Moduli e modelli personalizzati.

I modelli di moduli personalizzati sono scritti in formato JSON e consentono di definire i parametri di rilevamento che controllano quali eventi nelle voci di log devono attivare i risultati. Ad esempio, il rilevatore Malware: Bad IP integrato controlla i log di flusso Virtual Private Cloud per verificare la presenza di connessioni a indirizzi IP sospetti noti. Tuttavia, puoi attivare e modificare il modulo personalizzato Configurable Bad IP con un elenco di indirizzi IP sospetti che gestisci. Se i log indicano una connessione a uno degli indirizzi IP forniti, viene generato e scritto un risultato in Security Command Center.

I modelli di moduli consentono inoltre di definire la gravità delle minacce e fornire passaggi di correzione personalizzati per aiutare i team di sicurezza a risolvere i problemi.

Con i moduli personalizzati, hai maggiore controllo su come Event Threat Detection rileva le minacce e segnala i risultati. I moduli personalizzati includono i parametri forniti, ma utilizzano ancora la logica di rilevamento e l'intelligence sulle minacce di proprietà di Event Threat Detection, compresa la corrispondenza degli indicatori di tripwire. Puoi implementare una vasta gamma di modelli di minaccia personalizzati in base ai requisiti specifici della tua organizzazione.

I moduli personalizzati Event Threat Detection vengono eseguiti insieme ai rilevatori integrati. I moduli abilitati vengono eseguiti in modalità in tempo reale, che attiva le analisi ogni volta che vengono creati nuovi log.

Moduli e modelli personalizzati

La seguente tabella contiene un elenco di tipi di moduli personalizzati supportati, descrizioni, log obbligatori e modelli di moduli JSON.

Questi modelli di moduli JSON sono necessari se vuoi utilizzare gcloud CLI per creare o aggiornare moduli personalizzati. Per visualizzare un modello, fai clic sull'icona di espansione accanto al nome. Per informazioni sull'utilizzo dei moduli personalizzati, consulta Configurare e gestire i moduli personalizzati.

Categoria risultati Module type Tipi di origini log Descrizione
IP non valido configurabile CONFIGURABLE_BAD_IP Log di flusso VPC
Log delle regole firewall
Rileva la connessione a un indirizzo IP specificato
Modello: IP non valido configurabile

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "ips": [
    "IP_ADDRESS_1",
    "IP_ADDRESS_2"
  ]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • IP_ADDRESS_1: un indirizzo IPv4 o IPv6 instradabile pubblicamente o un blocco CIDR da controllare, ad esempio 192.0.2.1 o 192.0.2.0/24.
  • IP_ADDRESS_2: facoltativo. Un indirizzo IPv4 o IPv6 instradabile pubblicamente o un blocco CIDR da controllare, ad esempio 192.0.2.1 o 192.0.2.0/24.
Dominio non valido configurabile CONFIGURABLE_BAD_DOMAIN Log di Cloud DNS Rileva la connessione a un nome di dominio specificato
Modello: dominio non valido configurabile

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "domains": [
    "DOMAIN_1","DOMAIN_2"
  ]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • DOMAIN_1: un nome di dominio da controllare, ad esempio example.com. Non è consentito un valore localhost. I nomi di dominio Unicode e Punycode sono normalizzati. Ad esempio, 例子.example e xn--fsqu00a.example sono equivalenti.
  • DOMAIN_2: facoltativo. Un nome di dominio da controllare, ad esempio example.com. Un valore di localhost non è consentito. I nomi di dominio Unicode e Punycode sono normalizzati. Ad esempio, 例子.example e xn--fsqu00a.example sono equivalenti.
Tipo di istanza Compute Engine imprevisto CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_INSTANCE_TYPE Audit log di Cloud:
Log delle attività di amministrazione (obbligatori)
Log degli accessi ai dati (facoltativo)
Rileva la creazione di istanze di Compute Engine che non corrispondono al tipo di istanza o alla configurazione specificata.
Modello: tipo di istanza Compute Engine imprevisto

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "instances": [
    {
      "series": "SERIES",
      "cpus": {
        "minimum": MINIMUM_NUMBER_OF_CPUS,
        "maximum": MAXIMUM_NUMBER_OF_CPUS
      },
      "ram_mb": {
        "minimum": MINIMUM_RAM_SIZE,
        "maximum": MAXIMUM_RAM_SIZE
      },
      "gpus": {
        "minimum": MINIMUM_NUMBER_OF_GPUS,
        "maximum": MAXIMUM_NUMBER_OF_GPUS
      },
      "projects": [
        "PROJECT_ID_1",
        "PROJECT_ID_2"
      ],
      "regions": [
        "REGION_1",
        "REGION_2"
      ]
    },
    {
      "series": " ... ",
      ...
      "regions": [ ... ]
    }
  ]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • SERIES: facoltativo. La serie di macchine Compute Engine, ad esempio C2. Se vuoto, il modulo consente tutte le serie. Per ulteriori informazioni, consulta la guida alle risorse e al confronto per le famiglie di macchine.
  • MINIMUM_NUMBER_OF_CPUS: facoltativo. Il numero minimo di CPU da consentire. Se non è presente, non è previsto alcun valore minimo. Non deve essere negativo.
  • MAXIMUM_NUMBER_OF_CPUS: facoltativo. Il numero massimo di CPU da consentire. Se non è presente, non è previsto un limite massimo. Deve essere maggiore o uguale a minimum e minore o uguale a 1000.
  • MINIMUM_RAM_SIZE: facoltativo. Le dimensioni minime della RAM da consentire, in megabyte. Se non è presente, non è previsto alcun valore minimo.
  • MAXIMUM_RAM_SIZE: facoltativo. Le dimensioni massime della RAM da consentire, in megabyte. Se non è presente, non è previsto un limite massimo. Deve essere maggiore o uguale a minimum e minore o uguale a 10.000.000.
  • MINIMUM_NUMBER_OF_GPUS: facoltativo. Il numero minimo di GPU da consentire. Se non è presente, non è previsto alcun valore minimo. Non deve essere negativo.
  • MAXIMUM_NUMBER_OF_GPUS: facoltativo. Il numero massimo di GPU da consentire. Se non è presente, non è previsto un limite massimo. Deve essere maggiore o uguale a minimum e minore o uguale a 100.
  • PROJECT_ID_1: facoltativo. L'ID di un progetto a cui vuoi applicare questo modulo, ad esempio projects/example-project. Se vuoto o non impostato, il modulo viene applicato alle istanze create in tutti i progetti nell'ambito attuale.
  • PROJECT_ID_2: facoltativo. L'ID di un progetto a cui vuoi applicare questo modulo, ad esempio projects/example-project.
  • REGION_1: facoltativo. Una regione in cui vuoi applicare questo modulo, ad esempio us-central1. Se vuoto o non impostato, il modulo viene applicato alle istanze create in tutte le regioni.
  • REGION_2: facoltativo. Una regione a cui vuoi applicare questo modulo, ad esempio us-central1.
Immagine di origine Compute Engine imprevista CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_SOURCE_IMAGE Audit log di Cloud:
Log delle attività di amministrazione (obbligatori)
Log degli accessi ai dati (facoltativo)
Rileva la creazione di un'istanza Compute Engine con un'immagine o una famiglia di immagini che non corrisponde a un elenco specificato
Modello: immagine di origine Compute Engine imprevista

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "patterns": [
    {

      "pattern": "PATTERN_1",
      "name": "NAME_1"
    },
    {
      "pattern": "PATTERN_2",
      "name": "NAME_2"
    }
  ]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • PATTERN_1: un'espressione regolare RE2 in base a cui controllare le immagini, ad esempio debian-image-1. Se un'immagine viene utilizzata per creare un'istanza Compute Engine e il nome di quell'immagine non corrisponde a nessuna delle espressioni regolari specificate, viene generato un risultato.
  • NAME_1: un nome descrittivo per questo pattern, ad esempio first-image.
  • PATTERN_2: facoltativo. Un'altra espressione regolare RE2 in base a cui controllare le immagini, ad esempio debian-image-2.
  • NAME_2: facoltativo. Un nome descrittivo per il secondo pattern, ad esempio second-image.
Regione Compute Engine imprevista CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_REGION Audit log di Cloud:
Log delle attività di amministrazione (obbligatori)
Log degli accessi ai dati (facoltativo)
Rileva la creazione di un'istanza Compute Engine in una regione che non si trova in un elenco specificato
Modello: regione Compute Engine imprevista

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "regions": [
    {
      "region": "REGION_1"
    },
    {
      "region": "REGION_2"
    }
  ]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • REGION_1: il nome di una regione consentita, ad esempio us-west1. Se un'istanza di Compute Engine viene creata in una regione non specificata nell'elenco, Event Threat Detection genera un risultato.
  • REGION_2: facoltativo. Il nome di una regione da consentire, ad esempio us-central1. Se un'istanza di Compute Engine viene creata in una regione non specificata nell'elenco, Event Threat Detection genera un risultato.
Account deployment di emergenza utilizzato CONFIGURABLE_BREAKGLASS_ACCOUNT_USED Audit log di Cloud:
Log delle attività di amministrazione (obbligatori)
Log degli accessi ai dati (facoltativo)
Rileva l'utilizzo di un account di accesso di emergenza (deployment di emergenza)
Modello: account deployment di emergenza utilizzato

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "accounts": [
    "BREAKGLASS_ACCOUNT_1", "BREAKGLASS_ACCOUNT_2"
  ]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • BREAKGLASS_ACCOUNT_1: un account di deployment di emergenza da controllare, ad esempio [email protected]. Se questo account viene utilizzato per un'azione registrata in una voce di Cloud Audit Logs, viene generato un risultato.
  • BREAKGLASS_ACCOUNT_2: facoltativo. Un account di deployment di emergenza da controllare, ad esempio [email protected]. Se questo account viene utilizzato per un'azione registrata in una voce di Cloud Audit Logs, viene generato un risultato.
Concessione del ruolo imprevista CONFIGURABLE_UNEXPECTED_ROLE_GRANT Audit log di Cloud:
Log delle attività di amministrazione (obbligatori)
Log degli accessi ai dati (facoltativo)
Rileva quando un ruolo specificato viene concesso a un utente
Modello: concessione del ruolo imprevista

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "roles": ["ROLE_1", "ROLE_2"]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • ROLE_1: un ruolo IAM da controllare, ad esempio roles/owner. Se viene concesso questo ruolo, viene generato un risultato.
  • ROLE_2: facoltativo. Un ruolo IAM da controllare, ad esempio roles/editor. Se viene concesso questo ruolo, viene generato un risultato.
Ruolo personalizzato con autorizzazione vietata CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION Audit log di Cloud:
Log delle attività di amministrazione (obbligatori)
Log degli accessi ai dati (facoltativo)
Rileva quando a un'entità viene concesso un ruolo personalizzato con una qualsiasi delle autorizzazioni IAM specificate.
Modello: ruolo personalizzato con autorizzazione vietata

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "permissions": [
    "PERMISSION_1",
    "PERMISSION_2"
  ]
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • PERMISSION_1: un'autorizzazione IAM da controllare, ad esempio storage.buckets.list. Event Threat Detection genera un risultato se un ruolo IAM personalizzato contenente questa autorizzazione viene concesso a un'entità.
  • PERMISSION_2: facoltativo. Un'autorizzazione IAM da controllare, ad esempio storage.buckets.get. Event Threat Detection genera un risultato se a un'entità viene concesso un ruolo IAM personalizzato contenente questa autorizzazione.
Chiamata API Cloud imprevista CONFIGURABLE_UNEXPECTED_CLOUD_API_CALL Audit log di Cloud:
Log delle attività di amministrazione (obbligatori)
Log degli accessi ai dati (facoltativo)
Rileva quando un'entità specificata chiama un metodo specificato a fronte di una risorsa specificata. Un risultato viene generato solo se tutte le espressioni regolari trovano corrispondenze in una singola voce di log.
Modello: chiamata API Cloud imprevista

{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "caller_pattern": "CALLER_PATTERN",
  "method_pattern": "METHOD_PATTERN",
  "resource_pattern": "RESOURCE_PATTERN"
}

Sostituisci quanto segue:

  • SEVERITY: la gravità dei risultati che devono essere prodotti da questo modulo. I valori validi sono LOW, MEDIUM, HIGH e CRITICAL.
  • DESCRIPTION: una descrizione della minaccia rilevata dal modulo personalizzato. Questa descrizione viene utilizzata per completare la proprietà explanation di ogni risultato generato da questo modulo.
  • RECOMMENDATION: una spiegazione dei passaggi consigliati che i team di sicurezza possono intraprendere per risolvere il problema rilevato. Questa spiegazione viene utilizzata per completare la proprietà nextSteps di ogni risultato generato da questo modulo.
  • CALLER_PATTERN: un'espressione regolare RE2 di cui controllare le entità. Ad esempio, .* corrisponde a qualsiasi entità.
  • METHOD_PATTERN: un'espressione regolare RE2 per controllare i metodi, ad esempio ^cloudsql\\.instances\\.export$.
  • RESOURCE_PATTERN: un'espressione regolare RE2 per il controllo delle risorse, ad esempio example-project.

Prezzi e quote

Questa funzionalità è senza costi per i clienti di Security Command Center Premium.

I moduli personalizzati di Event Threat Detection sono soggetti a limiti di quota.

Il limite di quota predefinito per la creazione di moduli personalizzati è 200.

Anche le chiamate API ai metodi di moduli personalizzati sono soggette a limiti di quota. La seguente tabella mostra i limiti di quota predefiniti per le chiamate API di moduli personalizzati.

Tipo di chiamata API Limite
Ottieni, elenca 1000 chiamate API al minuto per organizzazione
Crea, aggiorna, elimina 60 chiamate API al minuto per organizzazione

Limiti di dimensione dei moduli

Ogni modulo personalizzato di Event Threat Detection ha un limite di dimensioni di 6 MB.

Limiti di frequenza

Si applicano i seguenti limiti di frequenza:

  • 30 risultati per modulo personalizzato all'ora.
  • 200 risultati di moduli personalizzati per risorsa padre (organizzazione o progetto) all'ora. Ogni risultato viene conteggiato per un'organizzazione o un progetto, a seconda del livello in cui è stato creato il modulo personalizzato di origine.

Questi limiti non possono essere aumentati.

Passaggi successivi