Raccogliere 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 recuperare i dati dagli attacchi ransomware. Genera avvisi per eventi di rilevamento di ransomware, tentativi di crittografia e azioni di recupero. Il parser mappa i campi dei log in formato JSON al modello UDM (Unified Data Model), gestendo tipi di eventi come operazioni sui file, attività utente e 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 Google 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 univoco globale (ad esempio halcyon-logs).
    Tipo di località Scegli in base alle tue esigenze (regione singola, a due regioni, multiregionale)
    Località Seleziona la posizione (ad esempio, us-central1).
    Classe di archiviazione Standard (consigliato per i log a cui si accede di frequente)
    Controllo dell'accesso Uniforme (consigliato)
    Strumenti di protezione (Facoltativo) Attiva il controllo delle versioni degli oggetti o la policy di conservazione
  6. Fai clic su Crea.

Esportare 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 su 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 eventi e scriverli in GCS in formato JSON.

Opzione B: configura l'integrazione SIEM e inoltra 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 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.

Recuperare 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 Ottieni service account. Verrà visualizzata un'email del account di servizio univoca, 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'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 Storage Object Admin anziché Storage Object Viewer.

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 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 del 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. Controlla la nuova configurazione del feed nella schermata Finalizza e poi fai clic su Invia.

Tabella di mappatura UDM

Campo log Mappatura UDM 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 e 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 Unita con 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 per 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
utente 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 subito dopo la rimozione delle 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
azione security_result.action In maiuscolo se l'azione è "Blocca" o "Consenti"
reason.exitCode security_result.action_details Valore copiato direttamente
dxpRule, monitoringReason, tenantId security_result.detection_fields Unite alle etichette create da ogni campo, se presenti; 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 per 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 ha_principal e has_target_file; USER_UNCATEGORIZED se ha_principal e has_target; STATUS_UPDATE se ha_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 Imposta su "Halcyon Anti Ransomware"
metadata.vendor_name Imposta su "Halcyon"
primaryProcess.kind event.idm.read_only_udm.target.process.file.mime_type Mappato dal log delle modifiche
primaryProcess.artifact.kind event.idm.read_only_udm.principal.process.file.mime_type Mappato dal log delle modifiche
processes.artifact.filePath event.idm.read_only_udm.principal.process.file.full_path Mappato dal log delle modifiche
processes.artifact.sha256 event.idm.read_only_udm.principal.process.file.sha256 Mappato dal log delle modifiche
action event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
filterName event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
policyMode event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
euid event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
occurrences.AuthFailure event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
occurrences.FailedPassword event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
occurredAt event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
occurrences.IncorrectPasswords event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
guid event.idm.read_only_udm.metadata.product_log_id Mappato dal log delle modifiche
gupid event.idm.read_only_udm.metadata.product_log_id Mappato dal log delle modifiche
count event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
artifact.filePath event.idm.read_only_udm.principal.process.file.full_path Mappato dal log delle modifiche
artifact.sha256 event.idm.read_only_udm.principal.process.file.sha256 Mappato dal log delle modifiche
artifact.kind event.idm.read_only_udm.principal.process.file.mime_type Mappato dal log delle modifiche
monitoringReason event.idm.read_only_udm.security_result.detection_fields Mappato dal log delle modifiche
dxpRule event.idm.read_only_udm.security_result.detection_fields Mappato dal log delle modifiche
modifiedFilePath event.idm.read_only_udm.principal.process.file.full_path Mappato dal log delle modifiche
ipArtifact.version event.idm.read_only_udm.security_result.rule_version Mappato dal log delle modifiche
ipArtifact.ipAddress event.idm.read_only_udm.principal.ip Mappato dal log delle modifiche
ipArtifact.ipAddress event.idm.read_only_udm.principal.asset.ip Mappato dal log delle modifiche
process.parentPid event.idm.read_only_udm.principal.process.parent_pid Mappato dal log delle modifiche
dxpRuleType event.idm.read_only_udm.security_result.rule_type Mappato dal log delle modifiche
summary.applicationName event.idm.read_only_udm.principal.application Mappato dal log delle modifiche
process.pid event.idm.read_only_udm.principal.process.pid Mappato dal log delle modifiche
reason.exitCode event.idm.read_only_udm.security_result.action_details Mappato dal log delle modifiche
reason.cause event.idm.read_only_udm.security_result.summary Mappato dal log delle modifiche
dnsArtifact_uri event.idm.read_only_udm.network.dns.questions Mappato dal log delle modifiche
uid event.idm.read_only_udm.target.user.userid Mappato dal log delle modifiche
tty event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
sshd event.idm.read_only_udm.additional.fields Mappato dal log delle modifiche
phost event.idm.read_only_udm.principal.hostname Mappato dal log delle modifiche
user_displayname event.idm.read_only_udm.principal.user.user_display_name Mappato dal log delle modifiche
msg event.idm.read_only_udm.security_result.summary Mappato dal log delle modifiche
timestamp event.idm.read_only_udm.metadata.event_timestamp Mappato dal log delle modifiche
user event.idm.read_only_udm.principal.user.userid Mappato dal log delle modifiche

Log delle modifiche

Visualizza il log delle modifiche per questo parser

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