Ottimizzare il volume di importazione

Questa guida spiega come ottimizzare il volume di importazione concentrandosi sulla configurazione delle pipeline di elaborazione dei dati di Google Security Operations. Questa funzionalità fornisce un modo unificato per filtrare, trasformare e oscurare i dati prima che vengano importati completamente, indipendentemente dall'origine. Questo metodo migliora la qualità dei dati e l'efficienza del rilevamento delle minacce.

La guida è rivolta a ingegneri della sicurezza, analisti di Google SecOps e amministratori cloud che gestiscono l'importazione dei log in Google SecOps.

L'importazione di enormi volumi di log non filtrati può mettere a dura prova il budget e le risorse. Comporta un aumento dei costi, funzionalità di ricerca e analisi più lente e una maggiore probabilità che gli analisti della sicurezza non vedano avvisi critici in un mare di dati irrilevanti. Un filtraggio efficace è fondamentale per un deployment di Google SecOps efficiente ed economico.

Prima di iniziare

Assicurati di avere o di fare quanto segue:

  • Un ruolo di Identity and Access Management (IAM): il ruolo predefinito dell'API Chronicle Admin (roles/chronicle.admin) o un ruolo personalizzato contenente una di queste autorizzazioni:
    • chronicle.logProcessingPipelines.*
    • chronicle.logTypes.get
    • chronicle.logTypes.list
    • chronicle.feeds.get
    • chronicle.feeds.list
    • chronicle.logs.list
  • Versione di Bindplane: devi disporre della versione 1.96.4 o successive della console Bindplane Server.
  • Per Bindplane Cloud, la federazione delle identità per i carichi di lavoro (WIF) è supportata per l'autenticazione. I deployment di Bindplane self-hosted richiedono le credenziali della chiave JSON dell'account di servizio.
  • Accesso alla console di gestione di Bindplane o alle API della pipeline di dati di Google SecOps per configurare i nodi del processore.
  • Identifica i campi, i tipi di log e le condizioni precisi necessari per configurare i processori Filter, Transform e Redact per la riduzione del volume.
  • Definisci gli input del flusso della pipeline abbinando i tipi di log specifici, gli ID dell'agente di raccolta (per le origini Bindplane) o i nomi dei feed (per i feed di dati) associati ai metodi di importazione.
  • Se stai importando Google Cloud log, definisci i filtri di esportazione di Logging richiesti per implementare il filtraggio upstream per il massimo risparmio sui costi prima che i dati raggiungano la pipeline SecOps.
  • Comprendi i dati di log:
    • Identifica i log a volume elevato o a basso valore: analizza le metriche di importazione attuali per individuare i tipi di log e le origini che contribuiscono maggiormente al volume e al costo. Per ulteriori informazioni, consulta la panoramica delle metriche di importazione.
    • Determina i criteri di filtraggio: determina i campi, i valori, i pattern (regex) o le condizioni specifici che identificano in modo affidabile i log da eliminare, trasformare o oscurare.
    • Conosci i metodi di importazione: comprendi come viene importata ogni origine log di destinazione (Direct, Bindplane, Feed, API), poiché ciò influisce sulla configurazione del flusso della pipeline.

Terminologia chiave

  • Pipeline di elaborazione dei dati: una funzionalità utilizzata per filtrare, trasformare e oscurare i dati di log man mano che arrivano, prima che vengano archiviati e indicizzati.
  • Filtro/filtraggio: la funzionalità principale per l'ottimizzazione del volume, che definisce le condizioni per eliminare selettivamente gli eventi non necessari per l'analisi della sicurezza.
  • Trasformazione: una funzionalità utilizzata per modificare i formati dei log per una migliore usabilità, ad esempio rimuovendo i nomi di dominio completi (FQDN) o eliminando i campi dettagliati all'interno degli eventi.
  • Redact: una funzionalità per mascherare o rimuovere completamente le informazioni sensibili dai log prima che vengano archiviati, contribuendo alla conformità e alla privacy.
  • Agente Bindplane: un metodo di importazione per i log raccolti da sistemi on-premise o da altri sistemi cloud.
  • Feed: un metodo di importazione per i dati provenienti da origini come Cloud Storage, Amazon S3 o API di terze parti.
  • API di importazione: un metodo per inviare dati di log personalizzati, che consente il filtraggio lato server utilizzando le pipeline di elaborazione dei dati.
  • Filtraggio upstream: la best practice consigliata per il filtraggio Google Cloud dei log all'origine utilizzando i filtri di esportazione di Logging per un risparmio sui costi ottimale.
  • Flussi: un flusso di dati specifico, definito dal tipo di log e dall'origine di importazione (ad esempio un feed o un'API), che funge da input per una pipeline di elaborazione dei dati.
  • Nodo del processore: un componente all'interno di una pipeline che contiene uno o più processori (azioni di filtro, trasformazione o oscuramento) che manipolano i dati in sequenza.
  • Destinazione: l'endpoint della pipeline di elaborazione dei dati, in genere l'istanza Google SecOps in cui i dati elaborati vengono inviati per l'importazione e l'analisi finali.

Utilizzare le pipeline di elaborazione dei dati per l'ottimizzazione

Le pipeline di elaborazione dei dati in Google SecOps offrono un controllo robusto e di pre-analisi sul processo di importazione dati. Ti consentono di definire regole e azioni che vengono applicate ai log man mano che arrivano, prima che vengano archiviati e indicizzati. Per ulteriori informazioni, consulta Configurare e gestire le pipeline di elaborazione dei dati.

Funzionalità principali

  • Filtro: questo è l'obiettivo principale per l'ottimizzazione del volume. Puoi definire le condizioni, utilizzando il contenuto dei log non elaborati, gli attributi o le espressioni regolari, per eliminare selettivamente gli eventi non necessari per l'analisi della sicurezza. Questo è fondamentale per ridurre il rumore e i costi.
  • Trasformazione: modifica i formati dei log per una migliore usabilità o per rimuovere i dati non necessari all'interno degli eventi. Esempi: rimozione dei nomi di dominio completi dagli hostname, analisi e ristrutturazione dei payload JSON o eliminazione di campi dettagliati ma irrilevanti.
  • Oscuramento: maschera o rimuovi completamente le informazioni sensibili, come le informazioni che consentono l'identificazione personale (PII), dai log prima che vengano archiviati, contribuendo alla conformità e ai requisiti di privacy.

Applicabilità universale

Un vantaggio fondamentale delle pipeline di elaborazione dei dati è che possono essere applicate ai dati provenienti da qualsiasi metodo di importazione. Questo fornisce un livello di filtraggio coerente per:

  • Google Cloud Log integrati
  • Log raccolti utilizzando l'agente Bindplane
  • Dati importati tramite i feed
  • Log personalizzati inviati tramite le API di importazione

Per ulteriori informazioni, consulta la sezione Strategie di filtraggio specifiche per il metodo in questa guida.

Implementare il filtraggio con le pipeline di elaborazione dei dati

Passaggio 1: configura la pipeline

Puoi configurare e gestire le pipeline di elaborazione dei dati tramite la console di gestione di Bindplane o utilizzando le API pubbliche della pipeline di dati di Google SecOps. Ti consentono di definire i flussi (input), configurare i nodi del processore (filtro, trasformazione, oscuramento) e gestire il deployment della pipeline.

Per istruzioni di configurazione complete, consulta Configurare e gestire le pipeline di elaborazione dei dati.

Passaggio 2: configura i processori per il filtraggio

All'interno di una pipeline, puoi aggiungere processori a un nodo. Per ridurre il volume, devi utilizzare principalmente i processori Filter. Puoi configurare questi processori per eliminare i log in base a condizioni o espressioni regolari. Configura le condizioni e le istruzioni della pipeline personalizzata utilizzando la sintassi OTTL (OpenTelemetry Transformation Language).

  • Condizioni: valutazione di campi o attributi nei dati di log.
  • Espressioni regolari: pattern di corrispondenza all'interno del messaggio di log non elaborato.
  • Esempio di OTTL: un'istruzione di esempio è set(attributes["labels.myLabel.value"], "myValue").

Sebbene il filtraggio sia fondamentale, puoi anche prendere in considerazione l'utilizzo dei processori Transform per rimuovere i campi di grandi dimensioni e non necessari dai log che conservi e utilizzare i processori Redact per annullare i dati sensibili.

Passaggio 3: strategie di filtraggio specifiche per il metodo

Le sezioni seguenti spiegano come approcciarsi al filtraggio con le pipeline di elaborazione dei dati per ogni tipo di importazione principale.

Google Cloud Log

  • Filtraggio upstream (best practice consigliata): per un risparmio sui costi ottimale, Google consiglia di filtrare i Google Cloud log all'origine utilizzando i filtri di esportazione di Cloud Logging. In questo modo, i log indesiderati non vengono inviati a Google SecOps. Se necessario, puoi utilizzare le pipeline di elaborazione dei dati per un filtraggio aggiuntivo. Per ulteriori informazioni, consulta la guida Importare i dati Google Cloud , in particolare la sezione Personalizzare le impostazioni dei filtri di esportazione.

  • Applicazione della pipeline: configura una pipeline di elaborazione dei dati, selezionando il tipo di log e il metodo di importazione appropriati, Google Cloud Direct o Cloud Native. Definisci i processori di filtro per eliminare i log indesiderati in base ai contenuti.

Agente Bindplane

I log raccolti dall'agente Bindplane, da sistemi on-premise o da altri sistemi cloud, possono essere filtrati utilizzando una pipeline di elaborazione dei dati. Configura il flusso in modo che corrisponda ai tipi di log e agli ID dell'agente di raccolta associati alle origini Bindplane. Per ulteriori informazioni, consulta Utilizzare Bindplane con Google SecOps.

Feed di dati

Per i dati importati utilizzando i feed (ad esempio da Cloud Storage, Amazon S3 o API di terze parti), puoi applicare i filtri della pipeline di elaborazione dei dati selezionando il nome del feed e il tipo di log durante la configurazione del flusso della pipeline. Per ulteriori informazioni, consulta la guida Utilizzare i feed.

Metodi di importazione dell'API Chronicle

Se invii dati utilizzando i metodi di importazione dell'API Chronicle, puoi comunque sfruttare le pipeline di elaborazione dei dati. Configura il flusso della pipeline in modo che corrisponda al tipo di log utilizzato nelle chiamate API. In questo modo, puoi filtrare lato server i flussi di log personalizzati. Per ulteriori informazioni, consulta la guida Metodi di importazione dell'API Chronicle.

Best practice

  • Filtra upstream, se possibile: come indicato per Google Cloud, filtra sempre i log il più vicino possibile all'origine. Questo è l'approccio più economico, in quanto riduce l'overhead di trasferimento ed elaborazione dei dati.
  • Sii specifico: inizia con filtri ristretti e ben definiti per escludere i log a volume elevato e a basso valore noti. Evita filtri eccessivamente ampi che potrebbero eliminare accidentalmente dati utili.
  • Esegui iterazioni e perfezionamenti: esamina regolarmente l'efficacia dei filtri. Stanno rilevando gli eventi giusti? È necessario filtrare nuovi rumori?
  • Documenta i filtri: tieni traccia dei filtri in vigore e del motivo, soprattutto per le espressioni regolari complesse o la logica condizionale.

Verifica e test

  • Test: devi testare i filtri in un ambiente non di produzione o con un piccolo sottoinsieme di dati.
  • Convalida i filtri: utilizza le funzionalità di test nell'editor della pipeline della console Bindplane. In questo modo, puoi inserire log di esempio e visualizzare l'output dopo l'applicazione dei processori, confermando che i filtri funzionano come previsto.
  • Monitora l'importazione: dopo aver eseguito il deployment delle pipeline, monitora le dashboard di importazione in Google SecOps per osservare l'impatto sul volume e sui costi dei dati. Per ulteriori informazioni, consulta la panoramica delle metriche di importazione.
  • Visualizza le configurazioni: puoi visualizzare tutte le configurazioni nell'UI di Google SecOps in Impostazioni SIEM > Elaborazione dei dati.
  • Gestione esterna: puoi cercare le configurazioni e fare clic su "Apri in Bindplane" per passare direttamente alla console Bindplane per la gestione avanzata.

Limitazioni

  • Limiti di servizio: le espressioni regolari eccessivamente complesse o un numero elevato di processori per pipeline possono influire sulle prestazioni o essere soggette a limiti. Consulta i limiti di Google SecOps in Limiti di servizio.
  • Pacchetti Google SecOps: assicurati di conoscere le funzionalità e le capacità del tuo pacchetto Google SecOps. Per ulteriori informazioni, consulta Pacchetti Google SecOps.
  • Riutilizzabilità: sebbene sia potente, una configurazione della pipeline per un tipo di log o un'origine potrebbe non essere direttamente riutilizzabile per un'altra senza modifiche.
  • Numero massimo di processori: definisci un massimo di 10 processori per pipeline.
  • Prestazioni delle espressioni regolari: evita la corrispondenza eccessiva delle espressioni regolari, in quanto può causare la mancata creazione o il deployment della pipeline a causa dei timeout. È preferibile analizzare i dati in formato JSON e filtrare in base a campi specifici.
  • Vincolo di associazione dei flussi: sebbene sia possibile creare pipeline diverse per feed diversi dello stesso tipo di log, la stessa definizione di flusso (ad es. lo stesso feed o lo stesso tipo di log catch-all) non può essere associata a più di una pipeline attiva. L'impostazione di un tipo di log su Tutti i metodi di importazione funge da catch-all e impedisce la configurazione di altre pipeline per feed specifici di quel tipo di log.

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