Raccogliere i log di IBM Guardium

Supportato in:

Questo documento spiega come importare i log di IBM Guardium in Google Security Operations utilizzando Bindplane.

IBM Guardium è una piattaforma di monitoraggio dell'attività del database e di protezione dei dati che fornisce monitoraggio, controllo e protezione in tempo reale per database e file system. Guardium offre funzionalità di valutazione delle vulnerabilità, rilevamento e classificazione dei dati, monitoraggio dell'attività del database e report di conformità.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Un'istanza Google SecOps
  • Windows Server 2016 o versioni successive oppure host Linux con systemd
  • Connettività di rete tra l'agente Bindplane e IBM Guardium Collector
  • Se l'agente viene eseguito dietro un proxy, assicurati che le porte del firewall siano aperte in base ai requisiti dell'agente Bindplane
  • Accesso privilegiato alla CLI di IBM Guardium
  • IBM Guardium versione 9.1 o successive per il supporto di syslog criptato (facoltativo)

Recuperare il file di autenticazione dell'importazione di Google SecOps

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

Recuperare 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

Installa l'agente Bindplane sul sistema operativo Windows o Linux seguendo le istruzioni riportate di seguito.

Installazione di Windows

  1. Apri 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
    
  3. Attendi il completamento dell'installazione.

  4. Verifica l'installazione eseguendo il comando:

    sc query observiq-otel-collector
    

Il servizio dovrebbe essere visualizzato come IN ESECUZIONE.

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
    
  3. Attendi il completamento dell'installazione.

  4. Verifica l'installazione eseguendo il comando:

    sudo systemctl status observiq-otel-collector
    

Il servizio dovrebbe essere visualizzato come attivo (in esecuzione).

Risorse aggiuntive per l'installazione

Per ulteriori opzioni di installazione e risoluzione dei problemi, consulta la Guida all'installazione dell'agente Bindplane.

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

Individua il file di configurazione

  • Linux:

    sudo nano /etc/bindplane-agent/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

Modifica il file di configurazione

  • Sostituisci l'intero contenuto di config.yaml con la seguente configurazione:

    receivers:
      udplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/guardium:
        compression: gzip
        creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: GUARDIUM
        raw_log_field: body
        ingestion_labels:
          log_source: guardium
    
    service:
      pipelines:
        logs/guardium_to_chronicle:
          receivers:
            - udplog
          exporters:
            - chronicle/guardium
    

Parametri di configurazione

Sostituisci i seguenti segnaposto:

  • Configurazione del ricevitore:

    • Utilizza udplog per syslog UDP (il più comune per Guardium).
    • Utilizza tcplog per TCP syslog, se necessario.
    • L'indirizzo di ascolto 0.0.0.0:514 è in ascolto su tutte le interfacce sulla porta 514.
  • Configurazione dell'esportatore:

    • creds_file_path: percorso completo del file di autenticazione importazione:
      • Linux: /etc/bindplane-agent/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • customer_id: l'ID cliente del passaggio precedente.
    • endpoint: URL endpoint regionale:
      • Stati Uniti: malachiteingestion-pa.googleapis.com
      • Europa: europe-malachiteingestion-pa.googleapis.com
      • Asia: asia-southeast1-malachiteingestion-pa.googleapis.com
    • log_type: deve essere GUARDIUM.
    • ingestion_labels: etichette facoltative in formato YAML.

Salvare il file di configurazione

Dopo la modifica, salva il file:

  • Linux: premi Ctrl+O, poi Enter e infine Ctrl+X.
  • Windows: fai clic su File > Salva.

Riavvia l'agente Bindplane per applicare le modifiche

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

    sudo systemctl restart observiq-otel-collector
    
    1. Verifica che il servizio sia in esecuzione:

        sudo systemctl status observiq-otel-collector
      
    2. Controlla i log per individuare eventuali errori:

        sudo journalctl -u observiq-otel-collector -f
      
  • Per riavviare l'agente Bindplane in Windows, scegli una delle seguenti opzioni:

    • Prompt dei comandi o PowerShell come amministratore:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • Console dei servizi:

      1. Premi Win+R, digita services.msc e premi Invio.
      2. Individua observIQ OpenTelemetry Collector.
      3. Fai clic con il tasto destro del mouse e seleziona Riavvia.

      4. Verifica che il servizio sia in esecuzione:

        sc query observiq-otel-collector
        
      5. Controlla i log per individuare eventuali errori:

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

Configurare l'inoltro di syslog di IBM Guardium

Configura la destinazione syslog tramite CLI

Per creare una destinazione syslog per gli eventi su IBM Guardium, devi accedere all'interfaccia a riga di comando e definire l'indirizzo IP per l'host dell'agente Bindplane.

  1. Utilizzando SSH, accedi a IBM Guardium Collector come utente CLI.
  2. Digita i seguenti comandi per configurare la destinazione syslog:

    • Per syslog UDP (consigliato):

      store remotelog add non_encrypted daemon.all BINDPLANE_AGENT_IP udp
      
    • Per syslog TCP:

      store remotelog add non_encrypted daemon.all BINDPLANE_AGENT_IP:514 tcp
      
    • Per livelli di gravità specifici:

      store remotelog add non_encrypted daemon.alert BINDPLANE_AGENT_IP udp
      store remotelog add non_encrypted daemon.err BINDPLANE_AGENT_IP udp
      store remotelog add non_encrypted daemon.warning BINDPLANE_AGENT_IP udp
      
      • Sostituisci BINDPLANE_AGENT_IP con l'indirizzo IP dell'host in cui è installato l'agente Bindplane.
  3. Verifica la configurazione eseguendo:

    show remotelog
    

    L'output dovrebbe mostrare la destinazione syslog remota configurata.

Configura syslog criptato (facoltativo)

Se hai bisogno dell'inoltro syslog criptato, IBM Guardium versione 9.1 e successive supporta la crittografia TLS su TCP.

  1. Ottieni il certificato pubblico in formato PEM dall'autorità di certificazione utilizzata dal ricevitore syslog remoto.
  2. Accedi alla CLI su Guardium Collector.
  3. Digita il seguente comando:

    store remotelog add encrypted daemon.all BINDPLANE_AGENT_IP:6514 tcp
    
  4. Quando richiesto, incolla il certificato CA in formato PEM, incluse le righe BEGIN e END, quindi premi Ctrl+D.

  5. Guardium archivia il certificato come /etc/pki/rsyslog/ca.pem.

(Facoltativo) Configurare il modello di messaggio

Guardium supporta più formati di messaggi, tra cui CEF (Common Event Format) e LEEF (Log Event Extended Format). Il formato predefinito è adatto alla maggior parte dei deployment.

Per personalizzare il modello di messaggio:

  1. Accedi alla GUI dell'appliance Guardium come utente con privilegi amministrativi.
  2. Vai a Console di amministrazione > Configurazione > Profilo globale.
  3. Nella sezione Modello di messaggio, modifica il modello con il formato che preferisci.
  4. Fai clic su Salva.

Configura il criterio per inviare avvisi a syslog

I criteri in IBM Guardium sono responsabili della reazione agli eventi e dell'inoltro delle informazioni sugli eventi al ricevitore syslog remoto.

Configura l'azione di avviso della policy

  1. Accedi alla GUI dell'appliance Guardium.
  2. Fai clic sulla scheda Strumenti.
  3. Nel menu di navigazione a sinistra, seleziona Policy Builder.
  4. Nel riquadro Policy Finder, seleziona una norma esistente e fai clic su Modifica regole.
  5. Fai clic su Modifica questa regola singolarmente.
  6. Viene visualizzata la Definizione della regola di accesso.
  7. Fai clic su Aggiungi azione.
  8. Nell'elenco Azione, seleziona uno dei seguenti tipi di avviso:
    • Avviso per corrispondenza: viene fornita una notifica per ogni violazione delle norme.
    • Avviso giornaliero: viene fornita una notifica la prima volta che si verifica una violazione delle norme in quel giorno.
    • Avviso una volta per sessione: viene fornita una notifica per violazione delle norme per sessione univoca.
    • Avviso per granularità temporale: viene fornita una notifica per il periodo di tempo selezionato.
  9. Nell'elenco Modello di messaggio, seleziona il modello richiesto o mantieni Predefinito.
  10. In Tipo di notifica, seleziona SYSLOG.
  11. Fai clic su Aggiungi e poi su Applica.
  12. Fai clic su Salva.
  13. Ripeti questa procedura per tutte le regole all'interno delle norme che vuoi inoltrare a Google SecOps.

Installa la policy

Qualsiasi criterio nuovo o modificato in IBM Guardium deve essere installato prima che possano essere apportate modifiche alle azioni di avviso o alle regole aggiornate.

  1. Fai clic sulla scheda Console di amministrazione.
  2. Nel riquadro di navigazione a sinistra, seleziona Configurazione > Installazione delle norme.
  3. Nel riquadro Policy Installer, seleziona la policy che hai modificato nel passaggio precedente.
  4. Dall'elenco a discesa, seleziona Installa e sostituisci.
  5. Viene visualizzata una conferma per installare il criterio in tutti i motori di ispezione.
  6. Fai clic su OK.

Tabella di mappatura UDM

Campo log Mappatura UDM Logic
deviceNtDomain about.administrative_domain Dominio amministrativo dell'entità Informazioni
deviceExternalId about.asset.asset_id Identificatore della risorsa
filePath, fileHash about.file.full_path Percorso completo del file
_hash, fileHash about.file.sha256 Hash SHA256 del file
fsize about.file.size Dimensioni del file
dvchost about.hostname Nome host dell'entità About
dvc about.ip Indirizzo IP dell'entità in questione
smac, dmac, dvcmac about.mac Indirizzo MAC dell'entità in questione
deviceProcessName, Subject, Emne, Path about.process.command_line Riga di comando del processo
dvcpid about.process.pid ID processo
filePermission about.resource.attribute.permissions Autorizzazioni associate alla risorsa
extensions.auth.type Tipo di autenticazione
sender_ip intermediary.ip Indirizzo IP dell'intermediario
intermediario Dettagli dell'entità intermediaria
Ricevuto, Generato, timestamp metadata.collected_timestamp Timestamp della raccolta dell'evento
msg, signature_name metadata.description Descrizione dell'evento
metadata.event_type Tipo di evento (ad es. USER_LOGIN, NETWORK_CONNECTION)
device_event_class_id, event_name, eventType metadata.product_event_type Tipo di evento specifico per il prodotto
externalId metadata.product_log_id Identificatore log prodotto
metadata.product_version Versione del prodotto
network.application_protocol Protocollo applicativo utilizzato nella connessione di rete
deviceDirection network.direction Direzione del traffico di rete
requestMethod network.http.method Metodo HTTP utilizzato nella richiesta
requestClientApplication network.http.user_agent Stringa dello user agent dalla richiesta HTTP
proto network.ip_protocol Protocollo IP utilizzato
in network.received_bytes Numero di byte ricevuti
troppo complessi per essere capiti? network.sent_bytes Numero di byte inviati
session_id network.session_id Identificatore di sessione per la connessione di rete
sntdom, Domain, Domene principal.administrative_domain Dominio amministrativo del preside
sourceServiceName, source_program principal.application Applicazione associata al soggetto
prin_host, Device_name, Enhetsnavn, shost, principal_hostname, client_hostname principal.asset.hostname Nome host dell'asset principale
sender_ip, src_ip, src, principal_ip, client_ip principal.asset.ip Indirizzo IP dell'asset principale
Group_name, Gruppenavn principal.group.group_display_name Nome visualizzato del gruppo principale
prin_host, Device_name, Enhetsnavn, shost, principal_hostname, client_hostname principal.hostname Nome host dell'entità
sender_ip, src_ip, src, principal_ip, client_ip principal.ip Indirizzo IP del principale
smac principal.mac Indirizzo MAC del preside
sourceTranslatedAddress principal.nat_ip Indirizzo IP NAT del principal
sourceTranslatedPort principal.nat_port Porta NAT dell'entità
spt, client_port principal.port Porta utilizzata dal preside
sproc principal.process.command_line Riga di comando del processo principale
spid principal.process.pid ID processo dell'entità
spriv principal.user.attribute.roles Ruoli associati all'utente principale
suser, usrName, CustomerName principal.user.user_display_name Nome visualizzato dell'utente principale
dbUser, usrName, db_user, os_user, suid, db_username principal.user.userid ID utente dell'entità
security_result Dettagli del risultato di sicurezza
security_result.action Azione intrapresa nel risultato di sicurezza
act, Action_Taken security_result.action_details Dettagli dell'azione intrapresa
gatto security_result.category_details Dettagli della categoria del risultato di sicurezza
msg_data_2, alert_description, Type, Scan_Type security_result.description Descrizione del risultato di sicurezza
operation_label, operasjon_label, permission_label, tillatelse_label, infection_channel_label, spyware_Grayware_Type_label, threat_probability_label security_result.detection_fields Campi utilizzati per il rilevamento nel risultato di sicurezza
mwProfile, alert_name security_result.rule_name Nome della regola che ha attivato il risultato di sicurezza
severity, event_severity security_result.severity Livello di gravità del risultato di sicurezza
reason, ruleDesc, appcategory, Result security_result.summary Riepilogo del risultato di sicurezza
Spyware, Virus_Malware_Name, Unknown_Threat security_result.threat_name Nome della minaccia rilevata
oldFilePath src.file.full_path Percorso completo del file di origine
oldFileSize src.file.size Dimensioni del file di origine
oldFilePermission src.resource.attribute.permissions Autorizzazioni della risorsa di origine
os_user src.user.userid ID utente dell'utente di origine
dntdom target.administrative_domain Dominio amministrativo della destinazione
destinationServiceName, service_name target.application Applicazione associata al target
prin_host, dest_host, server_hostname target.asset.hostname Nome host della risorsa target
dst_ip, dest_ip, server_ip, IPv6_Address target.asset.ip Indirizzo IP dell'asset di destinazione
temp_dhost, dest_host, server_hostname target.hostname Nome host della destinazione
dst_ip, dst, dest_ip, server_ip, IPv6_Address target.ip Indirizzo IP della destinazione
dmac target.mac Indirizzo MAC della destinazione
destinationTranslatedAddress target.nat_ip Indirizzo IP NAT della destinazione
destinationTranslatedPort target.nat_port Porta NAT della destinazione
dpt, dstPort, dest_port, server_port target.port Porta utilizzata dalla destinazione
dproc, full_sql target.process.command_line Riga di comando del processo di destinazione
File_name, Object, Objekt, Infected_Resource target.process.file.full_path Percorso completo del file di processo di destinazione
dpid, full_sql_id target.process.pid ID processo della destinazione
session_start target.resource.attribute.creation_time Ora di creazione della risorsa di destinazione
additional_environment_name, additional_db_protocol_version, additional_dbProtocolVersion, additional_operation_name, additional_signature_id, resource_Type_label target.resource.attribute.labels Etichette associate alla risorsa di destinazione
session_end target.resource.attribute.last_update_time Data/ora ultimo aggiornamento della risorsa di destinazione
db_name, database_name target.resource.name Nome della risorsa di destinazione
db_type, server_type target.resource.resource_subtype Sottotipo della risorsa target
target.resource.resource_type Tipo di risorsa di destinazione
richiesta target.url URL associato al target
dpriv, roles target.user.attribute.roles Ruoli associati all'utente di destinazione
temp_duser, CustomerName target.user.user_display_name Nome visualizzato dell'utente di destinazione
temp_duid, User, Bruker, db_username target.user.userid ID utente della destinazione
metadata.product_name Nome del prodotto
metadata.vendor_name Nome del fornitore

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