Raccogli i log di Trend Micro Cloud One

Supportata in:

Questo parser gestisce i log in formato syslog e JSON di Trend Micro Cloud One. Estrae le coppie chiave-valore dai messaggi in formato LEEF, normalizza i valori di gravità, identifica le entità principali e di destinazione (IP, nome host, utente) e mappa i dati nello schema UDM. Se il formato LEEF non viene rilevato, il parser tenta di elaborare l'input come JSON ed estrarre i campi pertinenti di conseguenza.

Prima di iniziare

  • Assicurati di avere un'istanza Google SecOps.
  • Assicurati di avere l'accesso con privilegi a Trend Micro Cloud One.
  • Assicurati di avere un host Windows 2012 SP2 o versioni successive o Linux con systemd.
  • Se esegui l'applicazione dietro un proxy, assicurati che le porte del firewall siano aperte.

Recupera le credenziali di Google SecOps per l'agente Bindplane

Per autenticare l'agente Bindplane in Google SecOps, scegli uno dei seguenti metodi:

  • Nuovi deployment: utilizza l'API Chronicle (opzione 1).
  • Deployment precedenti: continua a utilizzare il file di autenticazione dell'acquisizione (opzione 2) fino alla dismissione dell'API Ingestion il 20 luglio 2027.
  1. Accedi alla Google Cloud console e seleziona il Google Cloud progetto collegato alla tua istanza Google SecOps.
  2. Vai a IAM e amministrazione > Service account.
  3. Fai clic su Crea service account.
  4. Fornisci i seguenti dettagli di configurazione:
    • Nome service account: inserisci un nome per l'account (ad esempio, bindplane-ingest).
    • Descrizione service account: inserisci una descrizione (ad esempio, Bindplane agent log ingestion).
  5. Fai clic su Crea e continua.
  6. Nella sezione Concedi a questo account di servizio l'accesso al progetto, fai clic su Seleziona un ruolo e seleziona Editor Chronicle.
  7. Fai clic su Continua e poi su Fine.
  8. Fai clic sul account di servizio che hai creato, quindi vai alla scheda Chiavi.
  9. Fai clic su Aggiungi chiave > Crea nuova chiave.
  10. Seleziona JSON e fai clic su Crea. Il file della chiave viene scaricato sul computer.
  11. Salva il file della chiave come ingestion-auth.json nella directory del raccoglitore Bindplane (/opt/observiq-otel-collector/ingestion-auth.json su Linux o C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json su Windows) oppure aggiorna creds_file_path in config.yaml in modo che corrisponda al percorso in cui lo salvi.
  12. Vai a IAM e amministrazione > Impostazioni e copia il numero del progetto. Ti servirà per la configurazione dell'esportatore.

Opzione 2: scarica il file di autenticazione dell'acquisizione (legacy)

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

Recupera 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

  1. Per l'installazione di Windows, esegui il seguente script: msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet.
  2. Per l'installazione di Linux, esegui il seguente script: sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh.
  3. Ulteriori opzioni di installazione sono disponibili in questa guida all'installazione.

Configura l'agente Bindplane per acquisire Syslog e inviarlo a Google SecOps

  1. Accedi alla macchina con l'agente Bindplane.
  2. Modifica il file config.yaml come indicato di seguito:

    receivers:
      udplog:
        # Replace the below port <5514> and IP (0.0.0.0) with your specific values
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        # Adjust the path to the credentials file you saved in Step 1
        creds: '{ json file for creds }'
        # Replace <customer_id> below with your actual ID that you copied
        customer_id: <customer_id>
        endpoint: chronicle.googleapis.com
        # You can apply ingestion labels below as preferred
        ingestion_labels:
        log_type: SYSLOG
        namespace:
        raw_log_field: body
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
    • Sostituisci la porta e l'indirizzo IP in base alle esigenze della tua infrastruttura.
    • Sostituisci <LOCATION> con la regione della tua istanza Google SecOps (ad esempio, us, europe, o asia-southeast1). L'esportatore antepone chronicle.googleapis.com a questo valore.
    • Sostituisci <PROJECT_NUMBER> con il numero del progetto da IAM e amministrazione > Impostazioni.
    • Sostituisci <customer_id> con l'ID cliente effettivo.
    • Aggiorna { json file for creds } al percorso in cui è stato salvato il file della chiave del account di servizio (opzione 1).
  3. Riavvia l'agente Bindplane per applicare le modifiche utilizzando il seguente comando: sudo systemctl bindplane restart

Esportatore dell'API Ingestion legacy

  • Se utilizzi il file di autenticazione dell'acquisizione dell'opzione 2, sostituisci il blocco exporters con il seguente. Imposta creds sul percorso del file di autenticazione dell'acquisizione e, se la tua istanza si trova al di fuori degli Stati Uniti, sostituisci malachiteingestion-pa.googleapis.com con l'endpoint regionale (ad esempio, europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you saved in Step 1
        creds: '{ json file for creds }'
        # Replace <customer_id> below with your actual ID that you copied
        customer_id: <customer_id>
        endpoint: malachiteingestion-pa.googleapis.com
        # You can apply ingestion labels below as preferred
        ingestion_labels:
        log_type: SYSLOG
        namespace:
        raw_log_field: body
    

Configura Syslog da Trend Micro Cloud One

  1. Vai a Criteri > Oggetti comuni > Altro > Configurazioni Syslog.
  2. Fai clic su Nuovo > Nuova configurazione > Generale
  3. Specifica i valori per i seguenti parametri:
    • Nome: nome univoco che identifica la configurazione (ad esempio, server Google SecOps BindPlance).
    • Nome server: inserisci l'indirizzo IP dell'agente Bindplane.
    • Porta server: inserisci la porta dell'agente Bindplane (ad esempio, 514).
    • Trasporto: seleziona UDP.
    • Formato evento: seleziona Syslog.
    • Includi il fuso orario negli eventi: mantieni l'opzione deselezionata.
    • Facility: tipo di processo a cui verranno associati gli eventi.
    • Gli agenti devono inoltrare i log: seleziona il server Syslog.
    • Fai clic su Salva.

Esporta gli eventi di sistema in Trend Micro Cloud One

  1. Vai ad Amministrazione > Impostazioni di sistema > Inoltro eventi.
  2. Seleziona la configurazione creata nel passaggio precedente in Inoltra gli eventi di sistema a un computer remoto (tramite Syslog).
  3. Fai clic su Salva.

Esporta gli eventi di sicurezza in Trend Micro Cloud One

  1. Vai a Criteri.
  2. Fai clic sul criterio utilizzato dai computer.
  3. Vai a Impostazioni > Inoltro eventi.
  4. Frequenza di inoltro degli eventi (dall'agente/appliance): scegli Periodo tra l'invio degli eventi e seleziona la frequenza con cui verranno inoltrati gli eventi di sicurezza.
  5. Configurazione dell'inoltro degli eventi (dall'agente/appliance): scegli Configurazione Syslog anti-malware e seleziona la configurazione creata nel passaggio precedente.
  6. Fai clic su Salva.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
act security_result.action Se act è "deny" o "block" (senza distinzione tra maiuscole e minuscole), allora BLOCK. Se act è "pass" o "allow" (senza distinzione tra maiuscole e minuscole), allora ALLOW. Se act è "update" o "rename" (senza distinzione tra maiuscole e minuscole), allora ALLOW_WITH_MODIFICATION. Se act è "quarantine" (senza distinzione tra maiuscole e minuscole), allora QUARANTINE. In caso contrario, UNKNOWN_ACTION.
act security_result.action_details Mappato direttamente.
cat security_result.category_details Mappato direttamente.
cn1 target.asset_id Con il prefisso "Host Id:" se cn1Label è "Host ID".
desc metadata.description Mappato direttamente.
dvchost target.asset.hostname Mappato direttamente.
dvchost target.hostname Mappato direttamente.
log_type metadata.product_name Mappato direttamente.
msg security_result.description Mappato direttamente.
name security_result.summary Mappato direttamente.
organization target.administrative_domain Mappato direttamente.
proto additional.fields.key Impostato su "Protocol" se il campo proto non può essere convertito in un numero intero.
proto additional.fields.value.string_value Mappato direttamente se il campo proto non può essere convertito in un numero intero.
proto network.ip_protocol Mappato utilizzando la logica parse_ip_protocol.include, che converte il numero del protocollo nel nome corrispondente (ad es. "6" diventa "TCP").
product_version metadata.product_version Mappato direttamente.
sev security_result.severity Se sev è "0", "1", "2", "3" o "low" (senza distinzione tra maiuscole e minuscole), allora LOW. Se sev è "4", "5", "6" o "medium" (senza distinzione tra maiuscole e minuscole), allora MEDIUM. Se sev è "7", "8" o "high" (senza distinzione tra maiuscole e minuscole), allora HIGH. Se sev è "9", "10" o "very high" (senza distinzione tra maiuscole e minuscole), allora CRITICAL.
sev security_result.severity_details Mappato direttamente.
src principal.asset.hostname Mappato direttamente se non è un indirizzo IP valido.
src principal.asset.ip Mappato direttamente se è un indirizzo IP valido.
src principal.hostname Mappato direttamente se non è un indirizzo IP valido.
src principal.ip Mappato direttamente se è un indirizzo IP valido.
TrendMicroDsTenant security_result.detection_fields.key Impostato su "TrendMicroDsTenant".
TrendMicroDsTenant security_result.detection_fields.value Mappato direttamente.
TrendMicroDsTenantId security_result.detection_fields.key Impostato su "TrendMicroDsTenantId".
TrendMicroDsTenantId security_result.detection_fields.value Mappato direttamente.
usrName principal.user.userid Mappato direttamente. Se has_principal è true e has_target è true, allora NETWORK_CONNECTION. Se has_principal è true, allora STATUS_UPDATE. Se has_target è true e has_principal è false, allora USER_UNCATEGORIZED. In caso contrario, GENERIC_EVENT. Impostato su AUTHTYPE_UNSPECIFIED se event_type è USER_UNCATEGORIZED. Impostato su "true" se viene estratto un indirizzo IP, un nome host o un indirizzo MAC principale. In caso contrario, viene inizializzato su "false". Impostato su "true" se viene estratto un indirizzo IP, un nome host o un indirizzo MAC di destinazione. In caso contrario, viene inizializzato su "false". Uguale al timestamp dell'evento di primo livello. Impostato su "Trend Micro".

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.