Risultati delle query nella console Google Cloud

Questa pagina descrive come creare e modificare le query sui risultati di Security Command Center utilizzando il riquadro Editor query nella pagina Risultati della console Google Cloud.

Utilizza le query per recuperare risultati specifici e filtrare quelli visualizzati nel riquadro Risultati query dei risultati.

Modifica le query dei risultati

Nel riquadro Editor query, puoi aggiungere e modificare filtri alle query per selezionare i risultati in base ai relativi valori delle proprietà o degli attributi. Puoi filtrare per elementi quali la presenza di valori, l'assenza di valori o la corrispondenza di una stringa parziale.

Quando modifichi una query, l'editor evidenzia eventuali errori nella query in modo che tu possa correggerli prima di inviare la query.

Per modificare la query utilizzando il riquadro Editor query, segui questi passaggi:

  1. Vai alla pagina Risultati nella console Google Cloud:

    Vai a Risultati

  2. Se necessario, seleziona l'organizzazione o il progetto Google Cloud.

    Selettore progetto

    La pagina Risultati viene caricata con la query predefinita visualizzata nel campo Anteprima query.

  3. A destra della sezione Anteprima query, fai clic su Modifica query o sull'icona di espansione del riquadro per aprire il riquadro Editor query.

  4. Seleziona Aggiungi filtro per navigare, cercare e aggiungere filtri di attributi predefiniti alla query.

    La finestra di dialogo Seleziona filtro ti consente di scegliere gli attributi e i valori dei risultati supportati. Finestra di dialogo del filtro query

    1. Seleziona un attributo dei risultati o digitane il nome nella casella Cerca attributi dei risultati. Viene visualizzato un elenco degli attributi secondari disponibili.
    2. Seleziona un attributo secondario. Un campo di selezione per le opzioni di valutazione viene visualizzato sopra un elenco dei valori degli attributi secondari trovati nei risultati, all'interno del riquadro Risultati query dei risultati.
    3. Seleziona un'opzione di valutazione per i valori dell'attributo secondario selezionato. Per scoprire di più sulle opzioni di valutazione, sugli operatori e sulle funzioni che utilizzano, consulta Operatori di query nel menu Aggiungi filtri.
    4. Seleziona Applica.

      La finestra di dialogo si chiude e la query viene aggiornata.

    5. Ripeti finché la query sui risultati non contiene tutti gli attributi che vuoi.

In alternativa, puoi creare manualmente una query sui risultati nello stesso modo in cui formi un filtro dei risultati utilizzando l'API Security Command Center. Mentre digiti la query, viene visualizzato un menu di completamento automatico in cui puoi selezionare nomi e funzioni dei filtri.

Quando lavori nel Query Builder nella pagina Risultati, la sezione Filtri rapidi è disattivata per evitare conflitti tra i due.

Operatori di query

Le istruzioni di query per i risultati di Security Command Center supportano gli operatori supportati dalla maggior parte delle API di Google Cloud.

Il seguente elenco mostra l'utilizzo di vari operatori:

  • state="ACTIVE" AND NOT mute="MUTED"
  • create_time>"2023-08-15T19:05:32.428Z"
  • resource.parent_name:"prod"
  • severity="CRITICAL" OR severity="HIGH"

Il seguente elenco mostra tutti gli operatori e le funzioni supportati nelle istruzioni di query per i risultati:

  • Per le stringhe:
    • = per la piena uguaglianza
    • : per la corrispondenza parziale delle stringhe
  • Per i numeri:
    • <, >, <=, >= per le disuguaglianze
    • =, != per l'uguaglianza
  • Per i valori booleani:
    • = per l'uguaglianza
  • Per le relazioni logiche:
    • AND
    • OR
    • NOT o -
  • Per raggruppare le espressioni:
    • (, ) (parentesi)
  • Per gli array:
    • contains(), una funzione per eseguire query sui risultati con un campo array contenente almeno un elemento che corrisponde al filtro specificato
    • containsOnly(), una funzione per eseguire query sui risultati con un campo array che contiene solo gli elementi che corrispondono al filtro specificato
  • Per gli indirizzi IP:
    • inIpRange(), una funzione per eseguire query su indirizzi IP all'interno di un intervallo CIDR specificato

Operatori di query nel menu Aggiungi filtri

Nel menu Aggiungi filtri dell'Editor query nella console Google Cloud, gli operatori di query e le funzioni sono rappresentati da parole o frasi come:

  • Uguale a: associa i risultati con questo esatto valore del filtro.
  • Non uguale: corrisponde ai risultati che non hanno questo valore esatto del filtro.
  • Dopo: associa i risultati a un'ora di creazione o aggiornamento dopo un intervallo di tempo specificato.
  • Prima: associa i risultati a una data/ora di creazione o aggiornamento precedente a un orario specificato.
  • Contiene: abbina i risultati ai valori di filtro contenenti il testo inserito nel campo Parola chiave.
  • Non contiene: abbina i risultati con valori di filtro che non contengono il testo inserito nel campo Parola chiave.
  • Per determinare gli attributi che contengono array:
    • Contiene uno qualsiasi: corrisponde ai risultati che hanno un valore array contenente qualsiasi testo inserito nel campo Parola chiave.
    • Contiene tutto: trova corrispondenze con i risultati che hanno un valore array che contiene tutto il testo inserito nel campo Parola chiave.
    • Non contiene nessuno: corrisponde ai risultati che non hanno un valore array contenente il testo inserito nel campo Parola chiave.
    • Contiene solo: trova corrispondenze con i risultati che hanno un attributo array contenente solo il valore inserito nel campo Parola chiave e nessun altro valore.
  • Per gli indirizzi IP:
    • Qualsiasi all'interno dell'intervallo IP: corrisponde ai risultati che hanno un indirizzo IP in un intervallo CIDR specificato.
    • Non contiene alcun intervallo IP: corrisponde ai risultati che hanno un indirizzo IP che non si trova in un intervallo CIDR specificato.

Funzioni di query

Una funzione di query fornisce valutazioni più complesse dei valori degli attributi rispetto agli operatori di query comuni.

La funzione contains

Utilizza la funzione contains per valutare gli attributi o gli attributi secondari che possono apparire più volte nello stesso risultato.

Internamente, questi attributi o sottocampi degli attributi sono archiviati negli elementi di una struttura di dati di array, quindi sono definiti attributi di tipo array.

Ad esempio, alcuni risultati possono fare riferimento a più connessioni di rete, quindi l'attributo connections è un attributo di tipo array. Analogamente, alcuni risultati di minacce possono fare riferimento a più indirizzi IP come indicatori di una compromissione, pertanto il sottocampo ip_addresses dell'attributo indicator è un attributo di tipo array.

La funzione contains utilizza la seguente sintassi:

contains(ARRAY_ATTRIBUTE_NAME, SUBFILTER)

Sostituisci quanto segue:

  • ARRAY_ATTRIBUTE_NAME: il nome dell'attributo tipo array archiviato in un array. Se l'attributo array-type è un sottocampo di un altro attributo, specifica il nome dell'attributo e il nome del campo secondario separati da un punto.

    Nell'esempio seguente, l'attributo tipo array ip_addresses è un sottocampo di indicator, pertanto entrambi sono specificati nella posizione ARRAY_ATTRIBUTE_NAME:

    contains(indicator.ip_addresses, elem="192.0.2.80")
  • SUBFILTER: un'espressione che definisce la modalità di valutazione di ogni istanza dell'attributo array-type. Sono supportati gli operatori di query e le istruzioni di valutazione di Security Command Center standard.

    Se il valore da verificare si trova in un sottocampo di un attributo array-type, specifica il nome del sottocampo a sinistra dell'espressione. La seguente funzione contains valuta ogni elemento di un array di connections, che è un attributo array-type che contiene dei sottocampi. I valori oggetto della query si trovano nel sottocampo destination_ip, che non è un campo di tipo array. I valori per i quali eseguire la query sono specificati con il nome del sottocampo, destination_ip, anziché con il parametro elem.

    contains(connections, destination_ip="192.0.2.80")

    Se il sottocampo è l'attributo array-type, specifica questo attributo a sinistra dell'espressione con il relativo parametro padre e utilizza il parametro elem a destra dell'espressione per specificare il valore da cercare. Ad esempio, la seguente funzione contains valuta ogni elemento di un array di ip_addresses, che è un sottocampo dell'attributo indicator. L'attributo indicator non è un campo di tipo array.

    contains(indicator.ip_addresses, elem="192.0.2.80")

La funzione contains nel menu Aggiungi filtro

Nel menu Aggiungi filtro, a seconda dell'attributo del risultato che stai valutando, la funzione contains viene elencata in modo esplicito o viene inclusa automaticamente quando selezioni un'altra opzione di filtro che la richiede.

Ad esempio, per il sottocampo Indirizzi IP dell'attributo Indicatore, puoi selezionare le seguenti opzioni di filtro:

  • Contiene un valore qualsiasi
  • Contiene tutti i valori
  • Non contiene nessun valore

Al contrario, se applichi un filtro sul sottocampo IP di destinazione dell'attributo Connections e selezioni Qualsiasi compreso nell'intervallo IP, le funzioni contains vengono aggiunte automaticamente all'istruzione di query, come mostrato nell'esempio seguente:

contains(connections, inIpRange(destination_ip, "2001:db8::/32"))

Per ulteriori informazioni sulla funzione contains, consulta Applicazione di filtri in base ai campi di tipo array.

La funzione containsOnly

La funzione containsOnly consente di eseguire query sui risultati relativi ad attributi o sottocampi di tipo array che contengono solo i valori specificati nel filtro secondario e nessun altro.

La funzione containsOnly utilizza la seguente sintassi:

containsOnly(ARRAY_ATTRIBUTE_NAME,SUBFILTER)

Sostituisci quanto segue:

  • ARRAY_ATTRIBUTE_NAME: il nome dell'attributo array-type. Se l'attributo array-type è un sottocampo di un altro attributo, specifica il nome dell'attributo e il nome del sottocampo separati da un punto. Quando esegui query utilizzando la console Google Cloud, questa funzione supporta solo gli attributi array iam_bindings.member e iam_bindings.role.

  • SUBFILTER: un'espressione che definisce come valutare ogni elemento dell'attributo array-type. Sono supportati gli operatori di query e le istruzioni di valutazione di Security Command Center standard.

Nel menu Aggiungi filtro, le seguenti opzioni di filtro utilizzano la funzione containsOnly:

  • Associazione IAM > Membro: seleziona solo i risultati che includono gli utenti, gli account di servizio o i gruppi specificati.

  • Associazione IAM > Ruolo: seleziona solo i risultati che includono i ruoli specificati.

L'esempio seguente mostra una query sui risultati nella console Google Cloud che restituisce risultati attivi e con audio riattivato per gli utenti nel gruppo example-group:

state="ACTIVE"
  AND NOT mute="MUTED"
  AND containsOnly(iam_bindings,member="group:example-group@example.com")

La funzione inIpRange

La funzione inIpRange controlla se l'indirizzo IP in un attributo di ricerca selezionato rientra in un intervallo di indirizzi IP specificato utilizzando la notazione CIDR (un intervallo CIDR). Di seguito è riportata la sintassi della funzione inIpRange:

inIpRange(ATTRIBUTE_WITH_IP, "CIDR_RANGE")

Nel menu Aggiungi filtro, le seguenti opzioni di filtro utilizzano la funzione inIpRange:

  • Qualsiasi all'interno dell'intervallo IP: seleziona solo i risultati che contengono indirizzi IP all'interno dell'intervallo specificato.
  • Non contiene indirizzi IP: seleziona solo i risultati che non contengono indirizzi IP all'interno dell'intervallo specificato.

Nell'esempio seguente viene mostrata una query sui risultati nella console Google Cloud che restituisce risultati attivi con audio riattivato in cui il sottocampo caller_ip dell'oggetto access contiene un indirizzo IPv6 nell'intervallo CIDR di 2001:db8::/32:

state="ACTIVE"
AND NOT mute="MUTED"
AND inIpRange(access.caller_ip, "2001:db8::/32")

L'esempio seguente mostra una query di risultato che restituisce risultati attivi e riattivati in cui il sottocampo caller_ip dell'oggetto access non contiene un indirizzo IP nell'intervallo CIDR IPv4 di 192.0.2.0/24:

state="ACTIVE"
AND NOT mute="MUTED"
AND NOT inIpRange(access.caller_ip, "192.0.2.0/24")

Se un indirizzo IP si trova in un attributo che può apparire più volte in un risultato, utilizza la funzione contains con la funzione inIpRange per controllare ogni istanza dell'attributo per l'indirizzo IP. Ad esempio:

contains(connections, inIpRange(source_ip, "192.0.2.0/24"))

Per ulteriori informazioni sulla funzione contains(), consulta La funzione contains.

Attributi dei risultati per le query

Security Command Center seleziona i risultati da visualizzare valutando gli attributi di ogni risultato archiviato in base ai filtri degli attributi specificati nella query.

Puoi eseguire query sulla maggior parte degli attributi dei risultati. Alcuni attributi sono comuni a tutti i risultati. Altri attributi potrebbero essere specifici di un problema di sicurezza, una categoria di risultati o un servizio di rilevamento.

Nel menu Aggiungi filtro del riquadro Editor query, le opzioni che puoi applicare a un filtro dell'attributo sono diverse in base al tipo di attributo selezionato e a seconda che l'attributo abbia campi secondari o un array di valori.

Nel menu Aggiungi filtro, fai clic su uno dei seguenti attributi di primo livello per visualizzare gli attributi secondari e i valori da utilizzare in una query dei risultati:

  • Risultato
  • Risorsa
  • Accesso (access)
  • Punteggio di esposizione all'attacco
  • Ripristino di emergenza backup
  • Conformità (compliances[])
  • Connessioni (connections[])
  • Contatti
  • Container
  • Database
  • Esfiltrazione (exfiltration)
  • File
  • Associazione IAM (iamBindings[])
  • Indicatore
  • Rootkit kernel
  • Kubernetes
  • MITRE ATT&CK (mitreAttack)
  • Processi (processes[])
  • Security posture
  • Sensitive Data Protection
  • Vulnerabilità