Configurare un webhook SOAR

Supportato in:

I webhook sono una soluzione leggera per l'importazione degli avvisi dalla tua organizzazione nella piattaforma SOAR di Google Security Operations.

Gli avvisi inseriti tramite webhook vengono visualizzati nella piattaforma con le stesse informazioni degli avvisi inseriti utilizzando i connettori.

Google consiglia di utilizzare un connettore o un webhook della stessa origine, ma non entrambi, per evitare di creare casi duplicati.

I webhook sono ideali per gli scenari che richiedono una logica di mappatura di base, mentre i connettori sono più adatti per la mappatura avanzata e flessibile.

Configura un webhook per importare gli avvisi

Per configurare un webhook per l'importazione degli avvisi, segui questi passaggi:

  1. Vai a Impostazioni SOAR > Inserimento > Webhook.
  2. Fai clic su Aggiungi Aggiungi webhook in entrata.
  3. Inserisci un nome per il nuovo webhook e scegli un ambiente.
  4. Fai clic su Salva. Dopo il salvataggio, il nuovo webhook viene visualizzato nella pagina principale.
  5. Copia l'URL webhook e annotalo per utilizzarlo in un secondo momento. Devi inserirlo nella piattaforma di origine come destinazione del webhook.

Dati mappa

Dopo aver caricato un campione JSON, puoi utilizzare la sezione Mappatura dei dati per mappare i campi del JSON di origine ai campi appropriati in Google Security Operations SOAR. Il sistema elabora il JSON non elaborato e tu utilizzi l'interfaccia utente (UI) per stabilire le mappature.

  1. Nella sezione Mappatura dei dati, fai clic su Carica esempio JSON. Fornisci un campione rappresentativo del payload JSON inviato dal webhook.
  2. Mappa i campi di Google Security Operations con i campi corrispondenti nell'esempio JSON. Ad esempio, per mappare il campo obbligatorio StartTime, puoi selezionare un campo timestamp dal file JSON, ad esempio Detections.Last.Update.
  3. Utilizza il generatore di espressioni per perfezionare i dati. Ad esempio, puoi utilizzare la funzione Formato data per convertire il timestamp nel formato millisecondi dell'epoca di Unix richiesto. Per saperne di più, consulta Utilizza Expression Builder.
  4. Fai clic su Esegui nel generatore di espressioni per testare la mappatura e visualizzare il risultato. Un segno di spunta verde indica che la mappatura è riuscita.
  5. Il payload JSON del webhook deve contenere i campi obbligatori per la creazione della richiesta e l'importazione degli avvisi. Per maggiori dettagli, consulta Informazioni sullo schema JSON del webhook.
  6. Dopo aver mappato tutti i campi necessari, fai clic su Salva e poi attiva il webhook.

Informazioni sulla mappatura dei campi di destinazione

Quando mappi i dati JSON, li mappi in campi standardizzati all'interno di Google Security Operations SOAR. Questi campi sono organizzati in categorie per aiutarti a normalizzare e strutturare i dati in entrata. I campi disponibili nella UI di mappatura dei dati si basano sull'ontologia del sistema interno. Le categorie principali includono:

  • Campi entità:utilizza questi campi per i punti dati da cui il sistema può estrarre e modellare automaticamente le entità, come indirizzi IP, nomi di dominio, hash di file e nomi utente. La mappatura di questi campi arricchisce l'avviso e migliora la correlazione e la rotazione.
  • Campi evento generici:utilizzali per i metadati generali degli eventi, come timestamp (StartTime, EndTime), descrizioni o messaggi degli eventi e altri attributi comuni degli eventi.
  • Metadati tecnici e del dispositivo:utilizza questi campi per i dettagli tecnici sull'origine dell'evento, ad esempio il fornitore e il prodotto del dispositivo di reporting (DeviceVendor, DeviceProduct), la gravità dell'evento e altri attributi tecnici simili.

Esplora i campi disponibili nello strumento di mappatura dei dati nell'interfaccia utente di Google Security Operations SOAR per trovare il campo di destinazione più appropriato per ogni dato nel payload JSON.

Informazioni sullo schema JSON del webhook

Per assicurarti che gli avvisi vengano inseriti ed elaborati correttamente da Google Security Operations SOAR, il payload JSON del webhook deve seguire una struttura specifica. Le tabelle seguenti descrivono in dettaglio i campi principali previsti nel payload JSON.

Campi principali di casi e avvisi

Questi campi rappresentano le proprietà di primo livello dell'avviso o del caso che viene creato.

Campo Tipo Formato consigliato Obbligatorio Descrizione Esempio
TicketId Stringa UUID Sì
  • Un identificatore univoco globale (GUID) interno per una richiesta all'interno della piattaforma SOAR.
  • Il requisito di unicità di TicketId è condizionale e dipende da DisplayId:
    • Se viene fornito un DisplayId univoco, il TicketId non deve essere univoco.
    • Se DisplayId non è fornito, TicketId deve essere univoco.
  • TicketId spesso ha lo stesso valore di DisplayId.
"f7167971-f641-432f-a06f-ebca3caaa9dd"
SourceSystemName Stringa Testo Sì Il nome del sistema esterno (ad esempio SIEM o un sistema di rilevamento e risposta degli endpoint (EDR)) che ha inviato gli avvisi originali a SOAR. "Splunk"
Name Stringa Testo Sì Il titolo o il nome del caso, spesso tratto dal tipo di avviso o dal riepilogo della fonte. "Suspicious Login Attempt"
DeviceVendor Stringa Testo Sì Il fornitore del dispositivo o del prodotto che ha generato l'avviso. Questi dati possono essere mappati anche dai dati sugli eventi. "Palo Alto Networks"
RuleGenerator Stringa Testo Sì Il nome della regola nel sistema di origine (ad esempio, una regola di correlazione SIEM) che ha generato l'avviso. "Brute Force Attempt Detected"
StartTime Stringa o numero intero Millisecondi dell'epoca (UTC) o stringa ISO8601 (ad esempio, "2026-04-09T14:30:00Z") Sì L'ora di inizio dell'evento più recente nella richiesta. Se fornisci un numero intero, deve essere espresso in millisecondi dell'epoca di Unix. 1670000000000 o "2026-04-09T14:30:00Z"
Environment Stringa Testo No Il nome dell'ambiente SOAR a cui appartiene questo avviso. Deve corrispondere a un ambiente definito nelle impostazioni SOAR. "Default Environment"
Description Stringa Testo No Una breve descrizione della richiesta o dell'avviso. "Failed login followed by success from new IP"
DisplayId Stringa UUID o stringa No
  • Un identificatore utilizzato per la visualizzazione all'interno della UI di SOAR.
  • Questo campo è la chiave primaria che il sistema controlla per rilevare avvisi duplicati.
  • Un avviso viene rifiutato come duplicato se DisplayId non è univoco. Questo controllo di unicità su DisplayId ha la precedenza su TicketId.
  • DisplayId spesso ha lo stesso valore di TicketId.
"f7167971-f641-432f-a06f-ebca3caaa9dd"
Reason Stringa Testo No Il motivo per cui è stato creato o attivato l'avviso. "Unusual file access patterns detected."
DeviceProduct Stringa Testo No Il nome del prodotto del fornitore che ha generato l'avviso. Questi dati possono essere mappati anche dai dati sugli eventi. "Cortex XDR"
EndTime Stringa o numero intero Millisecondi dell'epoca (UTC) o stringa ISO8601 (ad esempio, "2026-04-09T14:30:00Z") No L'ora di fine dell'ultimo evento della richiesta. Se fornisci un numero intero, deve essere espresso in millisecondi dell'epoca di Unix. 1670000060000 o "2026-04-09T14:31:00Z"
Priority Numero intero 0-100 No Il livello di priorità della richiesta. Se non viene fornito, il valore predefinito è 40. (0-19: informativo, 20-39: basso, 40-59: medio, 60-79: alto, 80-100: critico) 80
EventsList Array Array di oggetti JSON No Un array contenente uno o più oggetti evento non elaborati ricevuti dall'origine. Consulta Invio dei dati sugli eventi non elaborati. [ { ... }, { ... } ]
EventProduct Stringa Testo No Il prodotto che ha creato gli eventi. "Cortex XDR"
EventName Stringa Testo No Il titolo o il nome dell'evento, spesso tratto dal tipo di avviso o dal riepilogo dell'origine. "Suspicious Login Attempt"

Invio di dati sugli eventi non elaborati: l'array EventsList

Devi inviare il payload JSON non elaborato che rappresenta gli eventi così come provengono dal sistema di origine all'interno dell'array EventsList. Questo oggetto è un elemento dell'array EventsList. Dopodiché, mappa i campi come source_ip e timestamp utilizzando l'interfaccia utente di mappatura dei dati.

Esempio di oggetto evento nell'array EventsList

{
  "event_id": "9a8b7c-1234-5678",
  "timestamp": "2026-07-01T07:29:50Z",
  "signature": "UserLoginFailed",
  "severity": "Medium",
  "user_name": "administrator",
  "source_ip": "192.168.1.50",
  "destination_ip": "10.0.0.10",
  "domain": "CORP",
  "status": "Failure",
  "Reason": "Wrong Password",
  "EventProduct": "Acme Firewall",
  "EventName": "Failed Login Attempt"
}

Considerazioni principali e best practice

  • Timestamp:utilizza i millisecondi dell'epoca Unix per tutti i campi StartTime e EndTime di primo livello (come numero intero). All'interno dei dati sugli eventi, fornisci i timestamp così come sono nell'origine. Li convertirai nella UI di mappatura dei dati.
  • Campi obbligatori:assicurati che tutti i campi contrassegnati con "Sì" nella colonna Obbligatorio siano presenti nel payload JSON.
  • Array EventsList: questo array è fondamentale. Anche se l'avviso rappresenta un singolo evento, deve essere racchiuso nell'array EventsList.
  • UI di mappatura dei dati:utilizza lo strumento di mappatura dei dati nella UI di configurazione webhook per mappare i campi del JSON non elaborato ai campi SOAR di Google Security Operations appropriati.
  • Unicità:DisplayId deve essere univoco per ogni nuovo avviso per evitare la deduplicazione. TicketId deve essere univoco se DisplayId non viene fornito.
  • Stato della risposta: una risposta HTTP 200 OK dall'endpoint di importazione dei webhook conferma che il payload è stato ricevuto, ma non garantisce che verrà creato un avviso. La creazione di avvisi può non riuscire durante l'elaborazione downstream a causa della struttura del payload o delle regole di filtro. Puoi monitorare lo stato dell'elaborazione a valle utilizzando la funzionalità Raccogli log della piattaforma SOAR.
  • Test:utilizza le schede Carica esempio JSON e Test nella pagina Configurazione webhook in SOAR per convalidare la struttura e i mapping del payload.

Testare il webhook

Nella scheda Test, puoi testare la funzionalità end-to-end del webhook e visualizzare descrizioni dettagliate degli errori.

  1. Nella scheda Test, copia l'URL webhook.
  2. Carica un file JSON con i dati pertinenti.
  3. Fai clic su Esegui. I risultati vengono visualizzati insieme all'output.

Configurare la piattaforma CrowdStrike

Questo caso d'uso ti guida attraverso i passaggi in CrowdStrike per consentire al webhook di iniziare a importare gli avvisi nella piattaforma Google SecOps.

  1. Nella dashboard di CrowdStrike Falcon, vai allo store Falcon e installa il componente aggiuntivo Webhook.
  2. Configura il webhook con il nome e l'URL webhook che hai copiato dalla piattaforma Google SecOps, quindi fai clic su Salva.
  3. Vai alla sezione Flussi di lavoro.
  4. Fai clic su Crea un workflow.
  5. Seleziona un trigger, ad esempio Nuovo rilevamento, e fai clic su Avanti.
  6. Seleziona Aggiungi azione.
  7. Nella sezione Personalizza azione, seleziona Notifiche dal menu Tipo di azione e seleziona Chiama webhook dal menu Azione.
  8. Seleziona il nome che hai aggiunto nel passaggio iniziale e tutti i campi necessari, poi fai clic su Fine.

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