Raccogli i log di Halcyon Anti-Ransomware

Supportato in:

Questo documento spiega come importare i log di Halcyon Anti-Ransomware in Google Security Operations utilizzando Google Cloud Storage V2.

Halcyon è una piattaforma anti-ransomware che utilizza l'AI per rilevare, prevenire e ripristinare gli attacchi ransomware. Genera avvisi per gli eventi di rilevamento di ransomware, i tentativi di crittografia e le azioni di ripristino. Il parser esegue il mapping dei campi di log in formato JSON al modello UDM (Unified Data Model), gestendo i tipi di eventi come le operazioni sui file, l'attività utente e i risultati di sicurezza.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Un'istanza Google SecOps
  • Un progetto GCP con l'API Storage Cloud abilitata
  • Autorizzazioni per creare e gestire bucket GCS e policy IAM
  • Accesso privilegiato alla console Halcyon con funzionalità di esportazione dei log

Crea un bucket Cloud Storage

  1. Vai alla console Google Cloud.
  2. Seleziona il tuo progetto o creane uno nuovo.
  3. Nel menu di navigazione, vai a Cloud Storage > Bucket.
  4. Fai clic su Crea bucket.
  5. Fornisci i seguenti dettagli di configurazione:

    Impostazione Valore
    Assegna un nome al bucket Inserisci un nome globalmente univoco (ad esempio halcyon-logs)
    Tipo di località Scegli in base alle tue esigenze (regione, a due regioni, multiregionale)
    Località Seleziona la località (ad esempio us-central1)
    Classe di archiviazione Standard (consigliata per i log ad accesso frequente)
    Controllo dell'accesso Uniforme (consigliato)
    Strumenti di protezione (Facoltativo) Abilita il controllo delle versioni degli oggetti o la policy di conservazione
  6. Fai clic su Crea.

Esporta i log di Halcyon in Google Cloud Storage

Halcyon supporta l'esportazione dei dati di log in formato JSON. Utilizza uno dei seguenti approcci per inviare i log a GCS.

Opzione A: esporta i log utilizzando l'API Halcyon e caricali in GCS

  1. Accedi alla console di gestione Halcyon.
  2. Vai a Impostazioni > Accesso API e genera una chiave API con autorizzazioni di lettura.
  3. Copia e salva la chiave API.
  4. Utilizza uno script pianificato o una funzione Cloud Run per chiamare l'API REST Halcyon, recuperare i log degli eventi e scriverli in GCS in formato JSON.

Opzione B: configura l'integrazione SIEM e inoltra i log a GCS

  1. Accedi alla console di gestione Halcyon.
  2. Vai a Impostazioni > Integrazioni > SIEM.
  3. Configura la destinazione di esportazione dei log per scrivere gli eventi in formato JSON in una directory locale o in uno spazio di archiviazione intermedio.
  4. Utilizza una funzione Cloud Run per caricare periodicamente i log nel bucket GCS.

    • Assicurati che i file esportati siano in formato JSON.
    • Ogni file deve contenere uno o più record di eventi.

Recupera il account di servizio Google SecOps

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Feed.
  3. Fai clic su Aggiungi nuovo feed.
  4. Fai clic su Configura un singolo feed.
  5. Seleziona Google Cloud Storage V2 come Tipo di origine.
  6. Seleziona Halcyon Anti Ransomware come Tipo di log.
  7. Fai clic su Recupera service account. Verrà visualizzato un indirizzo email del account di servizio univoco, ad esempio:

    chronicle-12345678@chronicle-gcp-prod.iam.gserviceaccount.com
    
  8. Copia l'indirizzo email. Lo utilizzerai nel prossimo passaggio.

Concedi le autorizzazioni IAM al account di servizio Google SecOps

  1. Vai a Cloud Storage > Bucket.
  2. Fai clic sul nome del bucket.
  3. Vai alla scheda Autorizzazioni.
  4. Fai clic su Concedi l'accesso.
  5. Fornisci i seguenti dettagli di configurazione:
    • Aggiungi entità: incolla l'indirizzo email del account di servizio Google SecOps.
    • Assegna ruoli: seleziona Visualizzatore oggetti Storage.
  6. Fai clic su Salva.

    • Se prevedi di utilizzare l'opzione di eliminazione (elimina i file trasferiti), concedi il ruolo Amministratore oggetti Storage anziché Visualizzatore oggetti Storage.

Configura un feed in Google SecOps per importare i log di Halcyon Anti-Ransomware

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo feed.
  3. Fai clic su Configura un singolo feed.
  4. Nel campo Nome feed, inserisci un nome per il feed (ad esempio, Halcyon Anti-Ransomware logs).
  5. Seleziona Google Cloud Storage V2 come Tipo di origine.
  6. Seleziona Halcyon Anti Ransomware come Tipo di log.
  7. Fai clic su Avanti.
  8. Specifica i valori per i seguenti parametri di input:

    Campo Valore
    URI del bucket di archiviazione gs://halcyon-logs/halcyon/events/
    Opzione di eliminazione dell'origine Seleziona l'opzione di eliminazione in base alle tue preferenze
    Età massima dei file (giorni) Il valore predefinito è 180 giorni
    Spazio dei nomi dell'asset Lo spazio dei nomi dell'asset
    Etichette di importazione L'etichetta da applicare agli eventi di questo feed
    • Sostituisci halcyon-logs con il nome effettivo del bucket GCS.
    • Includi sempre la barra finale (/) alla fine dell'URI.
  9. Fai clic su Avanti.

  10. Esamina la nuova configurazione del feed nella schermata Finalizza e poi fai clic su Invia.

Tabella di mapping UDM

Campo log Mapping UDM Funzione logica
sshd, tty, euid, dataType, filterName, totalOccurrences, occurredAt, count, occurrences.IncorrectPasswords, occurrences.FailedPassword, occurrences.AuthFailure, policyMode, action additional.fields Unito alle etichette create da ogni campo, se presente; i campi totalOccurrences, count, occurrences convertiti in stringa
dnsArtifact.uri network.dns.questions Unito all'array di domande contenente il nome
asset.id principal.asset.asset_id Concatenato come "ASSET:" + asset.id
asset.kind principal.asset.attribute.labels Unito a asset_kind_label creato da asset.kind
asset.name principal.asset.hostname Valore copiato direttamente
ipArtifact.ipAddress principal.asset.ip Valore copiato direttamente
summary.applicationName principal.application Valore copiato direttamente
phost, asset.name principal.hostname Valore di phost se presente, sovrascritto da asset.name se presente
ipArtifact.ipAddress principal.ip Valore copiato direttamente
process.commandLine principal.process.command_line Valore copiato direttamente
modifiedFilePath, artifact.filePath, process.artifact.filePath, processes.artifact.filePath principal.process.file.full_path Valore impostato su modifiedFilePath se presente, sovrascritto da artifact.filePath se presente, sovrascritto da process.artifact.filePath se presente, sovrascritto da processes.artifact.filePath se presente (virgolette rimosse per processes.artifact.filePath)
lastOccurredAt principal.process.file.last_seen_time Convertito utilizzando il filtro data con formato ISO8601
process.artifact.kind, artifact.kind, primaryProcess.artifact.kind principal.process.file.mime_type Valore di process.artifact.kind se presente, sovrascritto da artifact.kind se presente, sovrascritto da primaryProcess.artifact.kind se presente
artifact.sha256, process.artifact.sha256, processes.artifact.sha256 principal.process.file.sha256 Valore di artifact.sha256 se presente, sovrascritto da process.artifact.sha256 se presente, sovrascritto da processes.artifact.sha256 se presente
process.parentPid principal.process.parent_pid Valore copiato direttamente
process.pid principal.process.pid Valore copiato direttamente
user_displayname principal.user.user_display_name Valore copiato direttamente
user principal.user.userid Valore copiato direttamente
summary.artifact.filePath target.file.full_path Valore copiato direttamente
summary.artifact.sha256 target.file.sha256 Valore copiato direttamente
primaryProcess.commandLine target.process.command_line Valore copiato direttamente dopo aver rimosso le virgolette
primaryProcess.kind target.process.file.mime_type Valore copiato direttamente
primaryProcess.parentPid target.process.parent_process.pid Valore copiato direttamente
primaryProcess.pid target.process.pid Valore copiato direttamente
uid target.user.userid Valore copiato direttamente
id target.asset_id Concatenato come "ASSET:" + id
action security_result.action Convertito in maiuscolo se l'azione è "Block" o "Allow"
reason.exitCode security_result.action_details Valore copiato direttamente
dxpRule, monitoringReason, tenantId security_result.detection_fields Unito alle etichette create da ogni campo, se presente; barre rovesciate rimosse per dxpRule
dxpRuleType security_result.rule_type Valore copiato direttamente
ipArtifact.version security_result.rule_version Valore copiato direttamente
msg, reason.cause security_result.summary Valore di msg se presente, sovrascritto da reason.cause se presente
timestamp metadata.event_timestamp Convertito utilizzando il filtro data con i formati MMM gg HH:mm:ss o MMM g HH:mm:ss
phost, ipArtifact.ipAddress, asset.name, user, uid, summary.artifact.sha256, summary.artifact.filePath metadata.event_type Impostato su FILE_UNCATEGORIZED se has_principal e has_target_file; USER_UNCATEGORIZED se has_principal e has_target; STATUS_UPDATE se has_principal; altrimenti GENERIC_EVENT (flag derivati dalle origini)
kind metadata.product_event_type Valore copiato direttamente
gupid, guid metadata.product_log_id Valore di gupid se presente, sovrascritto da guid se presente
metadata.product_name Impostato su "Halcyon Anti Ransomware"
metadata.vendor_name Impostato su "Halcyon"

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