Utilizzare BigQuery Export avanzato

Supportato in:

Questo documento descrive come accedere e utilizzare i dati di Google SecOps in BigQuery con la funzionalità Esportazione BigQuery avanzata. In qualità di cliente Enterprise Plus, puoi utilizzare la funzionalità per accedere ai tuoi dati di sicurezza quasi in tempo reale tramite una pipeline di dati in streaming completamente gestita. Questa funzionalità può contribuire ad affrontare la sfida critica della latenza dei dati nelle operazioni di sicurezza e a rilevare e rispondere alle minacce in modo più tempestivo ed efficace.

Prima di iniziare

Ti consigliamo di esaminare i seguenti punti che definiscono i requisiti di idoneità e le azioni necessarie:

  • Solo per i clienti Enterprise Plus: questa funzionalità è disponibile solo per i clienti di Google SecOps Enterprise Plus. Per tutti gli altri clienti, consulta Configurare l'esportazione dei dati in BigQuery in un progetto Google Cloud autogestito.

  • È richiesta l'attivazione della funzionalità: questa funzionalità viene attivata su richiesta e potrebbe richiedere la configurazione iniziale nell'istanza Google SecOps della tua organizzazione. Se necessario, contatta il tuo rappresentante Google SecOps per confermare l'attivazione della funzionalità.

  • Avviso di migrazione: quando attivi questa funzionalità, viene eseguito l'override del metodo precedente, descritto in Dati di Google SecOps in BigQuery. Durante la migrazione all'esportazione avanzata di BigQuery, manterremo attiva la pipeline precedente per un periodo di transizione. Questa doppia operazione è progettata per supportare il passaggio alla nuova funzionalità senza interruzioni. Riceverai una notifica prima che la vecchia pipeline di esportazione venga disattivata per il tuo account.

Panoramica delle funzioni

L'esportazione avanzata di BigQuery esegue automaticamente il provisioning e la gestione dei set di dati essenziali di Google SecOps, inclusi eventi Unified Data Model (UDM), rilevamenti di regole e corrispondenze di indicatori di compromissione (IoC), in un progetto BigQuery sicuro e gestito da Google. Ottieni l'accesso sicuro e di sola lettura a questi dati tramite un set di dati collegato a BigQuery, che viene visualizzato direttamente nel tuo progetto Google Cloud . Questa funzionalità ti consente di eseguire query sui dati di sicurezza come se fossero archiviati localmente, ma senza il sovraccarico della gestione della pipeline di dati o dell'archiviazione.

Google SecOps esporta in BigQuery le seguenti categorie di dati di sicurezza:

  • Record di eventi UDM: record UDM creati dai dati di log inseriti dai clienti. Questi record sono arricchiti con informazioni sugli alias.
  • Corrispondenze delle regole (rilevamenti): istanze in cui una regola corrisponde a uno o più eventi.
  • Corrispondenze IoC: artefatti (ad esempio domini o indirizzi IP) provenienti da eventi che corrispondono ai feed IoC. Sono incluse le corrispondenze con e da feed globali e feed specifici per i clienti.
  • Metriche di importazione: statistiche, ad esempio il numero di righe di log importate, il numero di eventi generati dai log e il numero di errori di log che indicano che i log non sono stati analizzati.
  • Grafico delle entità e relazioni tra entità: la descrizione delle entità e delle loro relazioni con altre entità.

Vantaggi principali

I principali vantaggi di BigQuery Export avanzato includono:

  • Aggiornamento dei dati quasi in tempo reale: un'architettura di streaming rende disponibili i dati di sicurezza per le query entro pochi minuti dall'importazione. Gli eventi UDM, i rilevamenti delle regole e le corrispondenze IoC sono disponibili con una latenza prevista di 5-10 minuti.
  • Modello di costi semplificato e prevedibile: Google SecOps copre tutti i costi di importazione e archiviazione dei dati all'interno del progetto BigQuery gestito. La tua organizzazione è responsabile solo dei costi di analisi BigQuery sostenuti quando esegui query.
  • Accesso ai dati senza manutenzione: l'infrastruttura sottostante è completamente gestita da Google, il che consente al tuo team di concentrarsi sull'analisi dei dati anziché sull'ingegneria dei dati.

Casi d'uso tipici

L'esportazione avanzata di BigQuery è progettata per analisti della sicurezza, esperti di ricerca delle minacce, data scientist e ingegneri della sicurezza che richiedono un accesso diretto e ad alte prestazioni a dati di sicurezza aggiornati per indagini ad hoc, analisi personalizzate e integrazione con strumenti di business intelligence.

I casi d'uso tipici per l'esportazione avanzata di BigQuery includono quanto segue:

  • Esegui query ad hoc direttamente in BigQuery.
  • Utilizza i tuoi strumenti di business intelligence, come Microsoft Power BI, per creare dashboard, report e analisi.
  • Unire i dati di Google SecOps con set di dati di terze parti.

Architettura

L'architettura dell'esportazione avanzata di BigQuery utilizza una pipeline di streaming continuo. I dati dell'istanza Google SecOps vengono inviati a un progetto tenant sicuro e gestito da Google utilizzando l'API BigQuery Storage Write ad alto throughput.

Google SecOps utilizza BigQuery sharing per creare una scheda di dati sicura e fornirti l'accesso. Nel riquadro Explorer di BigQuery, il tuo progetto Google Cloud viene automaticamente iscritto a questo elenco, che viene visualizzato come set di dati collegatosecops_linked_data.

Questo modello supporta un forte isolamento dei dati e ti offre un accesso alle query di sola lettura semplice e diretto.

Utilizzare BigQuery Export avanzato

Questa sezione descrive come accedere ai dati di Google SecOps e utilizzarli in BigQuery.

Termini e concetti chiave

Di seguito sono riportati alcuni termini e concetti chiave per BigQuery Export avanzato:

  • Set di dati collegato: un set di dati BigQuery di sola lettura che funge da link simbolico o puntatore a un set di dati condiviso in un altro progetto. Consente di eseguire query sui dati senza copiarli, fornendo un accesso sicuro mentre il fornitore di dati gestisce l'archiviazione fisica.
  • Condivisione di BigQuery: il servizio Google Cloud che consente alle organizzazioni di condividere in modo sicuro dati e asset di analisi, come i set di dati BigQuery, sia internamente che esternamente.
  • Progetto tenant: un progetto Google Cloud di proprietà e gestito da Google SecOps. Questo progetto è il luogo in cui i dati di sicurezza esportati vengono fisicamente archiviati e gestiti. Non hai accesso diretto a questo progetto.
  • Il tuo progetto: il progetto Google Cloud di proprietà della tua organizzazione e collegato alla tua istanza Google SecOps. Questo è il progetto in cui viene visualizzato il set di dati collegato e in cui esegui le query e sostieni i costi di analisi.
  • ID progetto: l'identificatore univoco globale del tuo progetto.
  • Unified Data Model (UDM): lo schema standard ed estensibile di Google per analizzare e normalizzare i dati di telemetria di sicurezza provenienti da centinaia di prodotti di fornitori in un formato coerente.

Configurare il sistema

Segui questi passaggi per configurare il sistema in modo da utilizzare BigQuery Export avanzato e iniziare a eseguire query sui dati:

  1. Conferma la licenza: assicurati che la tua organizzazione disponga di una licenza Google SecOps Enterprise Plus.
  2. Identifica il tuo progetto: accedi alla console Google Cloud e seleziona il progetto Google Cloud collegato alla tua istanza di Google SecOps.
  3. Individua il set di dati collegato: nella console BigQuery, utilizza il riquadro Explorer per accedere alle risorse del progetto. Vedrai un set di dati collegato denominato secops_linked_data. Questo set di dati è un puntatore di sola lettura ai dati di sicurezza attivi gestiti da Google SecOps.
  4. Verifica delle autorizzazioni Identity and Access Management (IAM): per eseguire query sui dati, al tuo utente o account di servizio devono essere concessi i seguenti ruoli IAM sul tuo progetto:

    • roles/bigquery.dataViewer
    • roles/bigquery.jobUser

    Questi ruoli consentono agli utenti (come analisti della sicurezza e consumatori di dati) di eseguire query sui dati nel set di dati collegato ed eseguire job BigQuery all'interno del loro progetto.

  5. Esegui una query di test: apri l'area di lavoro SQL di BigQuery ed esegui una query di base per verificare che l'accesso sia configurato correttamente. Puoi utilizzare il seguente snippet di codice (sostituendo PROJECT_ID con l'ID progetto effettivo): Google Cloud

    SELECT *
    FROM `PROJECT_ID.secops_linked_data.events`
    LIMIT 10;
    

Eseguire query sui dati BigQuery

Puoi eseguire query direttamente in BigQuery o connettere a BigQuery il tuo strumento di business intelligence, ad esempio Microsoft Power BI.

Per saperne di più sulle query, consulta le seguenti risorse:

Periodo di conservazione dei dati in BigQuery

Il periodo di conservazione dei dati in BigQuery è identico a quello configurato per il tuo tenant Google SecOps. Non esiste un'impostazione separata e configurabile per personalizzare la norma di conservazione dei dati in BigQuery. I dati vengono eliminati automaticamente dalle tabelle BigQuery man mano che superano il periodo di conservazione del tenant.

Set di dati collegati

I set di dati collegati contengono diverse tabelle, ognuna corrispondente a un diverso tipo di dati di sicurezza.

La tabella seguente fornisce un riepilogo dei set di dati disponibili, del loro aggiornamento dei dati di destinazione e delle chiavi primarie utilizzate per garantire l'integrità dei dati:

Nome set di dati Descrizione Migliore aggiornamento previsto Chiavi primarie per la deduplicazione
events Eventi di sicurezza normalizzati nello schema UDM.
Per informazioni sullo schema, vedi Schema degli eventi di Google SecOps.
< 5 minuti metadata.id
(Rappresentazione stringa)
rule_detections Rilevamenti generati dalle regole del motore di rilevamento di Google SecOps.
Per informazioni sullo schema, vedi Visualizzare gli avvisi e gli indicatori di compromissione in Google SecOps.
< 5 minuti Nessuno
ioc_matches Corrispondenze IoC trovate negli eventi UDM.
Per informazioni sullo schema, consulta Visualizzare avvisi e IoC in Google SecOps.
< 5 minuti Nessuno
entity_graph Dati contestuali su entità (utenti, asset) e relative relazioni.
Per informazioni sullo schema, vedi Arricchire i dati di eventi ed entità con Google SecOps.
~4 ore
(batch)
Nessuno
ingestion_metrics Statistiche sul volume di importazione dei log e sulle origini dati.
Per informazioni sugli schemi, consulta Schema delle metriche di importazione e Riferimento alle metriche di importazione per Looker e BigQuery in Google SecOps.
~5 minuti Nessuna
(serie temporale di sola aggiunta)

Query di esempio

Gli esempi seguenti mostrano come eseguire query sui set di dati per i casi d'uso comuni relativi alla sicurezza. Ricorda di sostituire PROJECT_ID con l' Google Cloud ID progetto effettivo.

Esempio: trova tutte le connessioni di rete da un indirizzo IP specifico nelle ultime 24 ore

Questa query cerca nella tabella events l'attività di rete recente da un indirizzo IP sospetto.

SELECT
  metadata.product_event_type,
  principal.ip,
  target.ip,
  network.application_protocol
FROM
  `PROJECT_ID.secops_linked_data.events`
WHERE
  principal.ip = '192.0.2.1'
  AND metadata.event_timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 24 HOUR);

Esempio: conteggio dei 10 rilevamenti di regole più frequenti

Questa query nella tabella rule_detections consente di identificare le minacce o le violazioni delle norme più comuni rilevate nel tuo ambiente.

SELECT
  rule_name,
  COUNT(*) AS detection_count
FROM
  `PROJECT_ID.secops_linked_data.rule_detections`
WHERE
  detection.id IS NOT NULL
GROUP BY
  1
ORDER BY
  2 DESC
LIMIT
  10;

Best practice

Di seguito sono riportate alcune best practice per le query con l'esportazione avanzata di BigQuery:

  • Ottimizza per i costi:evita SELECT *. Nella query, specifica solo le colonne che ti servono per ridurre la quantità di dati scansionati e abbassare i costi delle query.
  • Utilizza i filtri di partizione:la tabella events è partizionata in base alla colonna hour_time_bucket. Includi sempre un filtro della clausola WHERE in questa colonna per limitare le query alla finestra temporale più piccola possibile, il che migliora significativamente le prestazioni e riduce i costi.
  • Scrivi query efficienti:lo schema UDM è ampio e sparso. Per filtrare in modo efficiente tipi di eventi specifici, utilizza WHERE... IS NOT NULL nei campi pertinenti. Ad esempio, per trovare solo le query DNS, filtra WHERE network.dns.questions.name IS NOT NULL.
  • Convalida delle query:utilizza lo strumento di convalida delle query nella UI di BigQuery prima di eseguire una query. Lo strumento di convalida delle query fornisce una stima del processo di dati, aiutandoti a evitare query inaspettatamente grandi e costose.

Limitazioni note

Di seguito sono riportate le limitazioni note della funzionalità BigQuery Export avanzato:

  • Latenza del grafico delle entità:il set di dati entity_graph viene esportato utilizzando un processo batch e ha una freschezza dei dati di circa quattro ore.
  • Chiavi di crittografia gestite dal cliente (CMEK): BigQuery Export avanzato non è disponibile per i clienti che hanno attivato CMEK nella propria istanza Google SecOps.
  • Colonne dello schema UDM:BigQuery ha un limite flessibile di 10.000 colonne per tabella. Lo schema UDM contiene oltre 27.000 campi ed è scarsamente popolato. La pipeline di esportazione include in modo intelligente solo le colonne compilate per un determinato evento, mantenendo la maggior parte dei clienti ben al di sotto del limite. Google SecOps monitora l'utilizzo delle colonne e richiede in modo proattivo un aumento del limite per il progetto tenant se si avvicina a questa soglia.
  • Norme di conservazione:il periodo di conservazione dei dati per tutti i dati di sicurezza esportati in BigQuery viene sincronizzato automaticamente con il periodo di conservazione dei dati del tuo progetto Google SecOps e non è configurabile separatamente.
  • Dati in ritardo:in rari casi, se i dati arrivano in ritardo significativo nella pipeline di elaborazione, esiste una piccola possibilità che non vengano uniti correttamente. Il sistema è progettato per ridurre al minimo questo problema, ma è una caratteristica nota dei sistemi di streaming ad alta velocità effettiva che si basano sulla coerenza finale.
  • Dati arricchiti: la copertura è limitata agli eventi UDM arricchiti una sola volta. Gli eventi UDM riarricchiti non vengono esportati nell'istanza BigQuery del progetto tenant.
  • Dati storici:l'esportazione dei dati inizia dal momento in cui viene abilitata l'esportazione avanzata in BigQuery e i dati precedenti rimangono accessibili nel progetto esistente. Per eseguire query sui dati esportati prima dell'attivazione dell'esportazione avanzata di BigQuery, devi utilizzare una singola query che unisce i dati di entrambi i progetti oppure eseguire due query separate sui rispettivi progetti (una per il set di dati precedente e una per il nuovo set di dati).

Risoluzione dei problemi e assistenza

La seguente tabella fornisce soluzioni per i problemi comuni che potresti riscontrare:

Sintomo osservato Possibile causa Azione consigliata
Le query non riescono con Access Denied: User does not have permission. L'utente o il account di servizio non dispone dei ruoli IAM BigQuery necessari nel progetto collegato alla tua istanza di Google SecOps. Google Cloud Concedi al principal i ruoli BigQuery Data Viewer e BigQuery Job User. Verifica questa informazione utilizzando gcloud projects get-iam-policy YOUR_PROJECT_ID --flatten="bindings.members" --format='table(bindings.role)' --filter="bindings.members:user:your-user@example.com"
Il set di dati secops_linked_data non è visibile nel mio progetto BigQuery. 1. Non ti trovi nel progetto Google Cloud corretto.
2. La tua organizzazione non ha un abbonamento Enterprise Plus.
3. La tua organizzazione utilizza il livello Enterprise Plus, ma l'esportazione avanzata di BigQuery non è attivata nella tua istanza di Google SecOps.
1. Nella console Google Cloud , verifica di aver selezionato il progetto collegato alla tua istanza Google SecOps.
2. Contatta il tuo rappresentante di Google per confermare il livello della licenza Google SecOps.
3. Contatta il tuo rappresentante Google SecOps e chiedigli di attivare l'esportazione avanzata in BigQuery nella tua istanza Google SecOps.
Visualizzazione di eventi apparentemente duplicati nei risultati della query. Ciò potrebbe essere dovuto a dati in arrivo in ritardo in uno stream ad alta velocità effettiva. Il sistema utilizza la semantica di distribuzione at-least-once. Se sospetti che ci siano duplicati, raggruppa la query in base alle chiavi primarie elencate in Set di dati per ottenere un conteggio.

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