Raccogliere i log di Kaspersky AV

Supportato in:

Questo documento spiega come importare i log di Kaspersky Antivirus in Google Security Operations utilizzando Bindplane. Il codice dell'analizzatore tenta innanzitutto di analizzare il messaggio di log non elaborato come JSON. In caso di esito negativo, utilizza espressioni regolari (pattern grok) per estrarre i campi dal messaggio in base ai formati comuni dei log dell'antivirus Kaspersky.

Prima di iniziare

Assicurati di disporre dei seguenti prerequisiti:

  • Istanza Google SecOps
  • Windows 2016 o versioni successive o host Linux con systemd
  • Se il servizio viene eseguito dietro un proxy, le porte del firewall sono aperte
  • Accesso privilegiato a Kaspersky Antivirus

Recupera il file di autenticazione di importazione di Google SecOps

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Agenti di raccolta.
  3. Scarica il file di autenticazione dell'importazione. Salva il file in modo sicuro sul sistema in cui verrà installato Bindplane.

Ottenere l'ID cliente Google SecOps

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Profilo.
  3. Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.

Installa l'agente Bindplane

Installazione di Windows

  1. Apri il prompt dei comandi o PowerShell come amministratore.
  2. Esegui questo comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Installazione di Linux

  1. Apri un terminale con privilegi di root o sudo.
  2. Esegui questo comando:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Risorse di installazione aggiuntive

Per altre opzioni di installazione, consulta la guida all'installazione.

Configura l'agente Bindplane per importare i syslog e inviarli a Google SecOps

  1. Accedi al file di configurazione:

    • Individua il file config.yaml. In genere si trova nella directory /etc/bindplane-agent/ su Linux o nella directory di installazione su Windows.
    • Apri il file utilizzando un editor di testo (ad esempio nano, vi o Blocco note).
  2. Modifica il file config.yaml come segue:

        receivers:
            udplog:
                # Replace the port and IP address as required
                listen_address: "0.0.0.0:514"
    
        exporters:
            chronicle/chronicle_w_labels:
                compression: gzip
                # Adjust the path to the credentials file you downloaded in Step 1
                creds: '/path/to/ingestion-authentication-file.json'
                # Replace with your actual customer ID from Step 2
                customer_id: <customer_id>
                endpoint: malachiteingestion-pa.googleapis.com
                # Add optional ingestion labels for better organization
                ingestion_labels:
                    log_type: KASPERSKY_AV
                    raw_log_field: body
    
        service:
            pipelines:
                logs/source0__chronicle_w_labels-0:
                    receivers:
                        - udplog
                    exporters:
                        - chronicle/chronicle_w_labels
    
  3. Sostituisci la porta e l'indirizzo IP come richiesto nella tua infrastruttura.

  4. Sostituisci <customer_id> con l'ID cliente effettivo.

  5. Aggiorna /path/to/ingestion-authentication-file.json con il percorso in cui è stato salvato il file di autenticazione nella sezione Ottenere il file di autenticazione per l'importazione di Google SecOps.

Riavvia l'agente Bindplane per applicare le modifiche

  • Per riavviare l'agente Bindplane in Linux, esegui il seguente comando:

    sudo systemctl restart bindplane-agent
    
  • Per riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurare l'esportazione degli eventi in Kaspersky AV

  1. Accedi alla console di Kaspersky Security Center.
  2. Seleziona il server di amministrazione di cui vuoi esportare gli eventi.
  3. Nell'area di lavoro Administration Server (Server di amministrazione), fai clic sulla scheda Eventi.
  4. Fai clic sul link Configura notifiche ed esportazione di eventi.
  5. Seleziona Configura l'esportazione nel sistema SIEM nell'elenco.
  6. Fornisci i seguenti dettagli di configurazione:
    • Sistema SIEM: seleziona Arcsight (formato CEF).
    • Indirizzo del server del sistema SIEM: inserisci l'indirizzo IP dell'agente Bindplane.
    • Porta del server di sistema SIEM: inserisci il numero di porta dell'agente Bindplane (ad esempio 514 per UDP).
    • Protocollo: seleziona UDP.
  7. Fai clic su OK.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
Applicazione network.http.user_agent Mappato direttamente dal campo Application nel log non elaborato.
Percorso dell'applicazione target.process.file.full_path Utilizzato con il campo Name per costruire il percorso completo se Application path è presente nel log non elaborato.
Componente target.resource.name Mappato direttamente dal campo Component nel log non elaborato.
Categoria di contenuti security_result.category_details Aggiunto al campo security_result.category_details se Content category è presente nel log non elaborato.
Origine della categoria di contenuti target.resource.type Se il valore contiene databases, il campo UDM è impostato su DATABASE.
Erreur security_result.summary Mappato direttamente dal campo Erreur nel log non elaborato se il campo summary è vuoto.
et metadata.product_event_type Mappato direttamente dal campo et nel log non elaborato se il campo product_event_type è vuoto.
et security_result.category_details Aggiunto al campo security_result.category_details.
etdn extensions.vulns.vulnerabilities.description Mappato direttamente dal campo etdn nel log non elaborato.
Hash SHA256 del file target.process.file.sha256 Mappato direttamente dal campo File SHA256 hash nel log non elaborato.
gn security_result.about.labels key è impostato su GN e value è impostato sul valore del campo gn.
hdn principal.hostname Mappato direttamente dal campo hdn nel log non elaborato.
alla moda principal.ip Mappato direttamente dal campo hip nel log non elaborato.
host_name principal.hostname Mappato direttamente dal campo host_name nel log non elaborato.
intermediary_host intermediary.hostname Mappato direttamente dal campo intermediary_host nel log non elaborato.
intermediary_hostname intermediary.hostname Mappato direttamente dal campo intermediary_hostname nel log non elaborato.
kv_data1 Questo campo viene analizzato e i relativi valori vengono mappati ad altri campi UDM.
kv_data2 Questo campo viene analizzato e i relativi valori vengono mappati ad altri campi UDM.
etichetta network.http.user_agent Se il valore è User-Agent, il campo UDM viene compilato con il valore del campo description.
etichetta principal.hostname Se il valore è Host, il campo UDM viene compilato con il nome host estratto dal campo description.
etichetta security_result.description Per altri valori, il campo UDM viene compilato con una stringa contenente i campi label e description.
MD5 target.process.file.md5 Mappato direttamente dal campo MD5 nel log non elaborato dopo averlo convertito in minuscolo.
Hash MD5 del file target.process.file.md5 Mappato direttamente dal campo MD5 file hash nel log non elaborato.
messaggio Questo campo viene analizzato e i relativi valori vengono mappati ad altri campi UDM.
metodo network.http.method Mappato direttamente dal campo method nel log non elaborato se corrisponde a un elenco di metodi HTTP.
nome target.file.full_path Mappato direttamente dal campo name nel log non elaborato.
Nom target.process.file.full_path Utilizzato con il campo application_path per costruire il percorso completo.
p1 target.process.file.sha256 Mappato direttamente dal campo p1 nel log non elaborato dopo averlo convertito in minuscolo se il campo SHA256 è vuoto e il valore è una stringa esadecimale.
p2 target.process.file.full_path Mappato direttamente dal campo p2 nel log non elaborato.
p5 security_result.rule_name Mappato direttamente dal campo p5 nel log non elaborato.
p7 principal.user.user_display_name Mappato direttamente dal campo p7 nel log non elaborato se i campi User e user_name sono vuoti.
ID processo principal.process.pid Mappato direttamente dal campo Process ID nel log non elaborato.
process_id target.process.pid Mappato direttamente dal campo process_id nel log non elaborato.
protocollo network.application_protocol Se il valore contiene http (senza distinzione tra maiuscole e minuscole), il campo UDM viene impostato su HTTP.
Motivo security_result.summary Mappato direttamente dal campo Reason nel log non elaborato.
Pagina web richiesta target.url Mappato direttamente dal campo Requested web page nel log non elaborato.
Risultato Se il valore è Allowed, il campo sr_action viene impostato su ALLOW.
rtid security_result.about.labels key è impostato su rtid e value è impostato sul valore del campo rtid.
Regola security_result.description Mappato direttamente dal campo Rule nel log non elaborato.
SHA256 target.process.file.sha256 Mappato direttamente dal campo SHA256 nel log non elaborato dopo averlo convertito in minuscolo.
sr_action security_result.action Unito al campo security_result.action.
riepilogo security_result.summary Mappato direttamente dal campo summary nel log non elaborato.
task_name security_result.about.labels key è impostato su TaskName e value è impostato sul valore del campo task_name.
threat_action_taken Se il valore è blocked, il campo security_action viene impostato su BLOCK. Se il valore è allowed, il campo security_action viene impostato su ALLOW.
timestamp metadata.event_timestamp Utilizzato per compilare il timestamp dell'evento.
Tipo security_result.threat_name Mappato direttamente dal campo Type nel log non elaborato.
URL network.http.referral_url Mappato direttamente dal campo url nel log non elaborato.
Utente principal.user.user_display_name Il nome utente viene estratto da questo campo e mappato al campo UDM.
Utente principal.administrative_domain Il dominio viene estratto da questo campo e mappato al campo UDM.
user_name principal.user.user_display_name Mappato direttamente dal campo user_name nel log non elaborato se il campo User è vuoto.
metadata.event_type Imposta SCAN_VULN_NETWORK se sono presenti Application path e Name, STATUS_UNCATEGORIZED se sono presenti hdn o host_name o GENERIC_EVENT in caso contrario.
metadata.vendor_name Deve essere sempre impostato su KASPERSKY.
metadata.product_name Deve essere sempre impostato su KASPERSKY_AV.
metadata.log_type Deve essere sempre impostato su KASPERSKY_AV.

Modifiche

2025-02-13

Miglioramento:

  • È stato aggiunto il supporto per l'analisi dei log CEF non analizzati.

2025-02-05

Miglioramento:

  • È stato aggiunto il supporto per l'analisi dei log CEF non analizzati.

2023-10-13

Miglioramento:

  • Hachage SHA256, p1 mappati a target.process.file.sha256.
  • Hachage MD5, md5 mappati a target.process.file.md5.
  • intermediary è stato mappato a event.idm.read_only_udm.intermediary.

2022-10-14

Miglioramento:

  • È stato aggiunto gsub per bypassare i caratteri speciali indesiderati.

2022-05-17

Miglioramento:

  • Sono state aggiunte mappature per i seguenti campi
  • Nom (nome del processo/dell'applicazione) (Nome) mappato a target.file.full_path (estensione).
  • Chemin de l'application (percorso dell'applicazione) mappato a target.file.full_path.
  • Type d'événement (Tipo di evento) mappato a metadata.product_event_type.
  • ID du processus (ID processo) mappato a target.process.pid.
  • Description du résultat (Descrizione del risultato) mappata a metadata.description.
  • Erreur (Error) mappato a security_result.summary.

2022-03-29

Miglioramento:

  • Sono state aggiunte mappature per i seguenti campi mancanti:
  • Result description è stato mappato a security_result.description.
  • Type è stato mappato a security_result.threat_name.
  • MD5 è stato mappato a process.file.md5.
  • SHA256 è stato mappato a process.file.sha256.
  • p2 è stato mappato a target.process.file.full_path.
  • p5 è stato mappato a security_result.rule_name.
  • p7 è stato mappato a principal.user.user_display_name.
  • Reason è stato mappato a security_result.summary.

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