Integra i tuoi feed di threat intelligence

Supportato in:

Questa guida è rivolta agli ingegneri della sicurezza e del rilevamento che vogliono integrare indicatori di compromissione (IoC) personalizzati e feed di intelligence sulle minacce di terze parti in Google Security Operations. Spiega come importare i feed sulle minacce, normalizzare gli indicatori nel grafico del contesto delle entità del modello di dati unificato (UDM) e correlare le entità indicatore con la telemetria degli eventi di streaming. Se segui questo metodo, automatizzi il rilevamento delle minacce nel tuo ambiente ed elimini le ricerche manuali degli indicatori. L'integrazione riuscita riduce i tempi di triage degli avvisi e rafforza la security posture della tua organizzazione grazie al rilevamento delle minacce in tempo reale e retroattivo.

L'integrazione di feed di threat intelligence personalizzati consente al tuo team di operazioni di sicurezza di combinare flussi di indicatori esterni (come Malware Information Sharing Platform (MISP), STIX/TAXII o feed commerciali) con la telemetria di sicurezza interna. Una volta normalizzate nell'ECG, le entità minaccia supportano sia la corrispondenza automatica degli indicatori sia le regole di correlazione YARA-L 2.0 personalizzate per più eventi.

Terminologia chiave

  • Entity Context Graph (ECG): il livello di archiviazione contestuale in Google SecOps che gestisce i record delle entità stateful (come asset, utenti e indicatori di minaccia) per la correlazione con i log degli eventi di sicurezza.
  • Unified Data Model (UDM): lo schema standardizzato che Google SecOps utilizza per normalizzare i log eventi non elaborati e i dati delle entità contestuali.
  • Intervallo del ciclo di vita dell'indicatore (metadata.interval): la finestra di validità con limiti di tempo (start_time e end_time) che definisce quando un indicatore di minaccia è attivo nel grafico delle cause.
  • Corrispondenza automatica IoC: un risultato generato dal sistema creato quando un evento di sicurezza in entrata corrisponde a un'entità indicatore attiva nell'ECG, visualizzato nella pagina Corrispondenze IoC.
  • Retrohunt YARA-L: una ricerca storica on demand che esegue una regola di rilevamento YARA-L 2.0 su un massimo di 30 giorni di telemetria sulla sicurezza passata.

Casi d'uso comuni

I seguenti casi d'uso mostrano come l'utilizzo della tua threat intelligence soddisfi obiettivi comuni delle operazioni di sicurezza.

Corrispondenza automatica degli indicatori in tempo reale

  • Obiettivo: valuta automaticamente gli eventi di sicurezza dello streaming in base agli indicatori di terze parti inseriti senza gestire regole di correlazione personalizzate.
  • Valore: elimina la manutenzione manuale delle regole per i feed di minacce ad alto volume e mostra le corrispondenze immediate nella pagina Corrispondenze IoC.

Regole di correlazione YARA-L personalizzate e retrocaccia

  • Obiettivo: unisci le entità di threat intelligence nell'ECG con la telemetria multi-evento e analizza fino a 30 giorni di dati storici utilizzando le ricerche retrospettive.
  • Valore: rileva gli attacchi multifase e scopre le compromissioni storiche che si sono verificate prima che un indicatore venisse aggiunto ai tuoi feed delle minacce.

Prima di iniziare

Prima di iniziare, verifica che siano soddisfatti i seguenti prerequisiti:

  • Autorizzazioni: devi disporre delle autorizzazioni di Identity and Access Management per gestire i feed di dati e le regole di rilevamento degli autori in Google SecOps (ad esempio Chronicle API Admin o Chronicle API Editor). Per informazioni dettagliate sui ruoli richiesti, consulta Configurare l'accesso alle funzionalità.
  • Controllo dell'ambiente: verifica di avere un'istanza Google SecOps attiva e credenziali API o URL endpoint validi per il tuo fornitore di threat intelligence esterno (ad esempio MISP, STIX/TAXII o bucket Cloud Storage).
  • Funzionalità di ricerca e regole: la ricerca UDM consente di esaminare i record di entità non elaborati archiviati nel grafico delle condizioni di entità indipendentemente dalla finestra attiva, mentre le regole di rilevamento YARA-L e la corrispondenza automatica valutano solo gli indicatori il cui metadata.interval racchiude il timestamp dell'evento.
  • Prefissi di dashboard e campi di ricerca: quando esegui query su entità di threat intelligence nella ricerca UDM, nelle dashboard o nelle regole YARA-L, utilizza il prefisso graph.entity. per i valori degli indicatori (ad esempio graph.entity.ip) e il prefisso graph.metadata.threat. per i campi di attribuzione delle minacce.

Importare indicatori di threat intelligence

Seleziona e configura un meccanismo di importazione per inserire flussi di indicatori esterni in Google SecOps.

Seleziona un meccanismo di importazione dei feed

Puoi importare i feed di threat intelligence utilizzando uno dei seguenti meccanismi supportati:

  • Parser predefiniti: Google SecOps include parser predefiniti per molte piattaforme di threat intelligence. Per un elenco dei parser supportati classificati in IOC, consulta Tipi di log e parser predefiniti supportati. I fornitori supportati includono MISP, ThreatConnect, Intel471 e Cyjax.
  • API di gestione dei feed: configura i feed nella console Google SecOps o utilizzando l'API di gestione dei feed per estrarre periodicamente gli indicatori da endpoint HTTPS, Cloud Storage o Amazon S3 esterni.
  • API Ingestion: invia payload di entità prestrutturati direttamente a Google SecOps utilizzando l'API Ingestion.
  • Agente Bindplane: raccogli e inoltra i log degli indicatori da ambienti on-premise o cloud utilizzando l'agente Bindplane.
  • Cloud Run Functions: esegui il deployment di script di importazione serverless utilizzando Cloud Run Functions per recuperare indicatori da API esterne (come STIX/TAXII o MISP) e trasmetterli in streaming a Google SecOps. Per i dettagli, consulta Utilizzare gli script di importazione di cui è stato eseguito il deployment come funzioni Cloud Run.
  • Integrazioni di risposta di Google SecOps: inserisci gli indicatori tramite i connettori di Content Hub per sincronizzare gli elenchi di minacce nell'ambito dei playbook automatizzati. Per maggiori dettagli, vedi Utilizzare l'hub dei contenuti.

Integrare i feed di threat intelligence

Per importare i log degli indicatori dal tuo fornitore di threat intelligence in Google SecOps:

  1. Segui la procedura di onboarding per il formato o il provider specifico del feed delle minacce:

  2. Assegna il tipo di log IoC corrispondente (ad esempio STIX, MISP_IOC, CSV_CUSTOM_IOC o THREATCONNECT_IOC) ai dati del feed in entrata in modo che il parser predefinito estragga gli attributi degli indicatori nei campi delle entità UDM.

  3. Apri la dashboard Acquisizione dei dati e verifica che le voci di log in arrivo vengano visualizzate senza errori di log non analizzati.

Compilare e convalidare il grafico del contesto delle entità

Quando gli indicatori di minaccia entrano in Google SecOps, la pipeline di analisi li normalizza in record di entità UDM e popola il grafico delle cause. Per informazioni dettagliate su come funziona l'arricchimento delle entità, vedi Come Google SecOps arricchisce i dati di eventi ed entità.

Mappatura dei dati strutturati e non strutturati

A seconda di come invii i dati di threat intelligence a Google SecOps, segui il flusso di lavoro di mappatura dei campi appropriato:

  • Acquisizione di dati strutturati: quando invii record di entità UDM prestrutturati direttamente utilizzando l'API Ingestion, formatta ogni payload in base allo schema UDM Entity prima dell'acquisizione.
  • Acquisizione di dati non strutturati e semistrutturati: quando invii log non elaborati (ad esempio CSV, JSON, STIX o CEF) utilizzando feed, l'agente Bindplane o gli agenti di inoltro, assegna un parser predefinito o crea mappature dei campi personalizzate utilizzando le estensioni del parser per estrarre i valori degli indicatori e mapparli ai campi delle entità UDM richiesti.

Cosa rende un'entità un indicatore di compromissione

Affinché un record di entità nel grafico ECG venga riconosciuto come IoC azionabile dalle regole di corrispondenza e rilevamento automatiche, il parser o il payload dell'API deve compilare i seguenti cinque gruppi di campi UDM:

  • Tipo di entità (metadata.entity_type): il tipo di entità indicatore supportato, ad esempio DOMAIN_NAME, IP_ADDRESS, FILE o URL.
  • Tipo di origine (metadata.source_type): la classificazione dell'origine dati, che deve essere impostata su ENTITY_CONTEXT per i feed di intelligence sulle minacce inseriti dai clienti.
  • Identificatore artefatto (entity.*): il valore dell'indicatore stesso, ad esempio graph.entity.ip, graph.entity.hostname, graph.entity.domain.name, graph.entity.file.sha256 (o md5 e sha1) o graph.entity.url.
  • Metadati delle minacce (metadata.threat): attributi contestuali che descrivono la minaccia, tra cui threat_feed_name, threat_name, category, severity e confidence.
  • Intervallo del ciclo di vita (metadata.interval):

    • metadata.interval.start_time: il timestamp in cui l'indicatore diventa attivo.
    • metadata.interval.end_time: il timestamp della scadenza dell'indicatore.

Per le definizioni dello schema, consulta l'elenco dei campi UDM per Entità e EntityMetadata.

In genere, gli indicatori diventano ricercabili nella ricerca UDM entro 2-5 minuti dopo l'importazione e l'analisi. Verifica che gli indicatori vengano inseriti nell'ECG eseguendo una ricerca UDM:

  1. Nel menu di navigazione di Google SecOps, seleziona Indagine > Ricerca.
  2. Nel campo di ricerca, inserisci una query che abbia come target il grafico delle entità per un valore dell'indicatore importato:

    • Indirizzo IP:

      graph.entity.ip = "<var>IP_ADDRESS</var>"
      
    • Dominio:

      graph.entity.hostname = "<var>DOMAIN_NAME</var>"
      
    • Hash del file (SHA-256):

      graph.entity.file.sha256 = "<var>SHA256_HASH</var>"
      
    • Prodotto di origine:

      graph.metadata.source_product = "<var>SOURCE_PRODUCT_NAME</var>"
      
  3. Fai clic su Cerca o premi Invio.

  4. Fai clic sulla scheda dell'entità restituita e verifica che i campi threat e interval contengano i metadati previsti e i timestamp attivi.

Correlare la telemetria e rilevare le minacce

Dopo aver inserito gli indicatori di minaccia nell'ECG, mettili in correlazione con gli eventi di sicurezza in entrata e storici.

Abilita la corrispondenza automatica degli indicatori di compromissione

Google SecOps include un motore di corrispondenza automatizzato che funziona indipendentemente dalle regole di rilevamento personalizzate. Quando la telemetria degli eventi corrisponde a un indicatore attivo nell'ECG:

  • Corrispondenze generate dal sistema: la piattaforma crea automaticamente un record di corrispondenza IoC senza richiedere la manutenzione di regole personalizzate.
  • Tempistiche stimate dopo l'importazione (stima approssimativa):
    • Eventi di streaming: una volta che un indicatore viene inserito nel ECG (in genere 5-15 minuti dopo l'importazione), Google SecOps valuta gli eventi di streaming in entrata e mostra le corrispondenze nella pagina Corrispondenze IoC entro 5-15 minuti.
    • Eventi storici: il motore di corrispondenza automatica valuta anche gli indicatori appena inseriti in modo retroattivo rispetto alla telemetria storica in cicli batch, con le corrispondenze iniziali che in genere vengono visualizzate entro 1-4 ore (e la correlazione storica completa entro 24 ore).
  • Applicazione dell'intervallo: il motore di corrispondenza valuta gli eventi in modo rigoroso in base agli indicatori attivi in cui il timestamp dell'evento rientra in metadata.interval.

Creare regole di correlazione YARA-L 2.0

Scrivi regole di rilevamento YARA-L 2.0 per unire la telemetria degli eventi (come connessioni di rete, query DNS o avvii di processi) con le entità indicatore nell'ECG. Le regole personalizzate ti consentono di combinare le corrispondenze degli indicatori con le soglie comportamentali, il contesto delle risorse e gli elenchi di esclusione:

  1. Nel menu di navigazione di Google SecOps, seleziona Rilevamento > Regole e rilevamenti, quindi fai clic su Nuovo.
  2. Nella sezione events: della regola, definisci una variabile segnaposto per unire un campo evento UDM (ad esempio $net.target.ip = $ip) con il campo entità ECG corrispondente (ad esempio $ioc.graph.entity.ip = $ip).
  3. Filtra la variabile dell'entità in base agli attributi della minaccia (ad esempio $ioc.graph.metadata.threat.category) e specifica una finestra temporale di correlazione nella sezione match: (ad esempio, $ip over 5m).

  4. Fai clic su Salva nuova regola.

Esegui una retrocaccia per rilevare compromissioni storiche

I feed di threat intelligence spesso contengono indicatori utilizzati dagli avversari giorni o settimane prima che la tua organizzazione abbia acquisito il feed. Mentre le regole live valutano la nuova telemetria in entrata, una ricerca retroattiva YARA-L applica la logica della regola in modo retroattivo a un massimo di 30 giorni di eventi di sicurezza storici:

  1. Nel menu di navigazione di Google SecOps, seleziona Rilevamento > Regole e rilevamenti.
  2. Individua la regola personalizzata di threat intelligence nell'elenco delle regole.
  3. Fai clic su per visualizzare altre opzioni per le regole e seleziona YARA-L Retrohunt.
  4. Nella finestra di dialogo YARA-L Retrohunt, seleziona l'ora di inizio e di fine della ricerca storica. Assicurati che l'intervallo di date selezionato sia maggiore o uguale alla finestra di corrispondenza specificata nella regola.
  5. Fai clic su Esegui.
  6. Apri la scheda Rilevamenti per la regola per monitorare i progressi e ispezionare le corrispondenze storiche.

Per maggiori dettagli, vedi Esecuzione di una regola sui dati storici.

Analizzare le corrispondenze e gli avvisi

Esamina i risultati generati dalle regole di corrispondenza automatica e di correlazione personalizzata in visualizzazioni dedicate in Google SecOps.

Esaminare i risultati automatici nella pagina Corrispondenze IoC

Per esaminare le corrispondenze degli indicatori automatici:

  1. Nel menu di navigazione di Google SecOps, seleziona Rilevamento > Corrispondenze IoC.
  2. Utilizza i controlli dei filtri per definire l'ambito dei risultati in base al tipo di indicatore (domini, indirizzi IP, hash di file o URL).
  3. Fai clic su una riga dell'indicatore per aprire il riquadro dei dettagli della corrispondenza, che mostra:
    • Asset e nomi utente interni associati.
    • Timestamp del primo e dell'ultimo evento visualizzato.
    • Attribuzione della fonte e dell'affidabilità del feed di intelligence sulle minacce.
  4. Fai clic su Visualizza in UDM Search per esaminare tutti gli eventi di telemetria non elaborati associati all'indicatore.

Per maggiori dettagli, vedi Visualizzare gli indicatori di compromissione utilizzando Applied Threat Intelligence.

Classifica i risultati delle regole nelle pagine Avvisi e Rilevamenti

I rilevamenti generati da regole YARA-L personalizzate vengono visualizzati nelle pagine Avvisi e Rilevamenti:

  1. Nel menu di navigazione di Google SecOps, seleziona Rilevamento > Avvisi e IoC per visualizzare gli avvisi delle regole con priorità.
  2. Fai clic sul nome di un avviso per aprire la pagina Dettagli avviso ed esaminare la tabella Rilevamenti, che elenca le righe degli eventi correlate e gli attributi dell'entità ECG.
  3. Per le regole silenziose (in cui gli avvisi sono disattivati) o le retrocacce completate, apri Rilevamento > Regole e rilevamenti, fai clic sul nome della regola ed esamina la scheda Rilevamenti.

Correlare gli indicatori personalizzati con l'Emerging Threats Center

Puoi anche utilizzare l'Emerging Threats Center per esaminare in che modo le corrispondenze degli indicatori di compromissione personalizzati si correlano a campagne di avversari e famiglie di malware più ampie:

  1. Nel menu di navigazione di Google SecOps, seleziona Rilevamento > Minacce emergenti.
  2. Esamina le campagne di minacce attive e gli avvisi e passa alla ricerca UDM per verificare se gli indicatori dei feed personalizzati sulle minacce si sovrappongono all'attività della campagna osservata.

Per maggiori dettagli, vedi Panoramica del Centro minacce emergenti.

Accedere a risorse e riferimenti avanzati

Utilizza i seguenti snippet YARA-L 2.0 e risorse di riferimento quando crei regole personalizzate di threat intelligence.

Connessione di rete in uscita corrispondente a un indirizzo IP dannoso

Questa regola correla gli eventi NETWORK_CONNECTION in uscita con gli indicatori IP attivi nell'ECG:

rule custom_ioc_network_connection {
  meta:
    author = "Security Operations"
    description = "Detects connections to IPs matching custom threat intel"
    severity = "HIGH"
    priority = "HIGH"

  events:
    $net.metadata.event_type = "NETWORK_CONNECTION"
    $net.target.ip = $ip

    $ioc.graph.entity.ip = $ip
    $ioc.graph.metadata.threat.category = "SUSPICIOUS_NETWORK"

  match:
    $ip over 5m

  outcome:
    $risk_score = max(85)
    $threat_name = array_distinct($ioc.graph.metadata.threat.threat_name)
    $source_feed = array_distinct($ioc.graph.metadata.source_product)
    $principal_hostname = array_distinct($net.principal.asset.hostname)

  condition:
    $net and $ioc
}

Query DNS corrispondente a un dominio dannoso

Questa regola identifica le ricerche NETWORK_DNS per i domini contrassegnati come dannosi nei feed sulle minacce inseriti:

rule custom_ioc_malicious_domain_query {
  meta:
    author = "Security Operations"
    description = "Detects DNS queries for domains matching threat intel"
    severity = "MEDIUM"
    priority = "MEDIUM"

  events:
    $dns.metadata.event_type = "NETWORK_DNS"
    $dns.network.dns.questions.name = $domain

    $ioc.graph.entity.hostname = $domain

  match:
    $domain over 10m

  outcome:
    $threat_name = array_distinct($ioc.graph.metadata.threat.threat_name)
    $source_feed = array_distinct($ioc.graph.metadata.source_product)
    $client_ip = array_distinct($dns.principal.ip)

  condition:
    $dns and $ioc
}

Esecuzione del processo corrispondente a un hash SHA-256 del file dannoso

Questa regola viene attivata quando un evento PROCESS_LAUNCH corrisponde a un hash SHA-256 di file dannoso noto archiviato in ECG:

rule custom_ioc_malicious_file_execution {
  meta:
    author = "Security Operations"
    description = "Detects process launches matching malicious file hashes"
    severity = "CRITICAL"
    priority = "HIGH"

  events:
    $process.metadata.event_type = "PROCESS_LAUNCH"
    $process.target.process.file.sha256 = $sha256

    $ioc.graph.entity.file.sha256 = $sha256

  match:
    $sha256 over 5m

  outcome:
    $threat_name = array_distinct($ioc.graph.metadata.threat.threat_name)
    $file_path = array_distinct($process.target.process.file.full_path)
    $hostname = array_distinct($process.principal.asset.hostname)
    $user = array_distinct($process.principal.user.userid)

  condition:
    $process and $ioc
}

Blog della community e risorse aggiuntive

Per altri esempi sulla creazione di regole YARA-L e sulla correlazione di feed personalizzati di intelligence sulle minacce, consulta le seguenti risorse della community Google Cloud :

Risoluzione dei problemi

Utilizza questa sezione per gestire le aspettative di rendimento e risolvere i problemi comuni durante l'onboarding dei feed di threat intelligence e la creazione di regole di correlazione.

Latenza, quota del servizio e limiti

  • Importazione e indicizzazione della ricerca UDM: gli indicatori appena importati in genere vengono visualizzati nella ricerca UDM entro 2-5 minuti. Attendi almeno 5 minuti dopo l'importazione del feed prima di risolvere i problemi relativi ai record delle entità mancanti.
  • Latenza della corrispondenza automatica degli IoC: una volta che un indicatore viene inserito nel grafico ECG, le corrispondenze con gli eventi di streaming in entrata vengono visualizzate nella pagina Corrispondenze IoC entro 5-15 minuti. L'abbinamento batch retroattivo agli eventi storici richiede in genere da 1 a 4 ore (e fino a 24 ore per la correlazione storica completa).
  • Finestra di correlazione del grafico del contesto delle entità: le regole di corrispondenza automatica degli IoC e di correlazione YARA-L valutano gli indicatori rigorosamente all'interno della finestra metadata.interval attiva. Gli indicatori con valori end_time scaduti non generano corrispondenze.
  • Finestra di ricerca Retrohunt: le retrohunt YARA-L analizzano fino a 30 giorni di telemetria storica per esecuzione. Il tempo di completamento dipende dalla complessità della regola e dalla disponibilità delle risorse di sistema.

Correzione degli errori

Utilizza questa tabella per diagnosticare e risolvere i problemi durante l'onboarding della threat intelligence e la creazione di regole di rilevamento.

Problema Descrizione del problema Correggi
Log IoC non analizzati Lo stato del feed mostra i dati in entrata, ma l'analisi dei log non riesce a creare entità UDM. Verifica che il tipo di log del feed corrisponda al parser (ad esempio STIX, MISP_IOC o CSV_CUSTOM_IOC). Controlla la dashboard Acquisizione dei dati per individuare errori dello schema non elaborato.
Risultati di ricerca UDM mancanti I log degli indicatori vengono analizzati senza errori, ma la ricerca UDM non restituisce record di entità. Verifica che la query abbia come target i campi graph.entity.* (ad esempio graph.entity.ip) anziché i campi evento udm.principal.*.
La regola non viene attivata in base all'indicatore noto Sia l'evento che l'indicatore esistono nella ricerca UDM, ma la regola YARA-L non produce rilevamenti. Verifica che metadata.interval.start_time e metadata.interval.end_time sull'indicatore racchiudano il timestamp dell'evento.
Avvisa in caso di inondazione durante la retrocaccia L'esecuzione di una retrocaccia crea centinaia di avvisi e richieste SOAR duplicati. Disattiva l'opzione di avviso della regola prima di avviare una RetroHunt. Esamina i rilevamenti nella pagina Rilevamenti prima di riattivare gli avvisi in tempo reale.
Volume elevato di falsi positivi Gli indicatori rumorosi attivano i rilevamenti su scanner interni o host amministrativi benigni. Aggiungi un'esclusione dell'elenco di riferimento alla regola (ad esempio, not $net.principal.ip in %benign_scanner_ips) e richiedi il contesto dell'evento comportamentale.

Convalida e test

Prima di attivare una regola di threat intelligence personalizzata in modalità di avviso attivo, verifica la sua logica utilizzando la funzionalità Testa regola integrata:

  1. Apri Rilevamento > Regole e rilevamenti e fai clic sulla regola per aprire l'editor delle regole.
  2. Fai clic su Testa regola nel riquadro inferiore per valutare la regola in base ai dati storici recenti degli eventi e alle entità ECG attive senza generare avvisi o casi SOAR.
  3. Esamina i rilevamenti dei test restituiti per verificare che le variabili outcome (ad esempio $threat_name e $source_feed) vengano compilate come previsto.

Passaggi successivi

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