Raccogli i log di RSA Authentication Manager

Supportata in:

Questo documento spiega come importare i log di RSA Authentication Manager in Google Security Operations utilizzando Bindplane.

RSA Authentication Manager (ora RSA SecurID) è una piattaforma di autenticazione a più fattori che fornisce l'autenticazione a due fattori utilizzando token, notifiche push e dati biometrici. Gestisce le identità utente, i criteri di autenticazione e genera log di audit per i tentativi di autenticazione in tutta l'azienda. Il parser estrae i campi dai log in formato CSV di RSA Authentication Manager. Utilizza grok per analizzare il messaggio di log e poi mappa questi valori al modello UDM (Unified Data Model). Imposta anche i valori dei metadati predefiniti per l'origine e il tipo di evento.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Un'istanza Google SecOps
  • Windows Server 2016 o versioni successive oppure host Linux con systemd
  • Se l'esecuzione avviene tramite un proxy, assicurati che le porte del firewall siano aperte in base ai requisiti dell'agente Bindplane
  • Accesso con privilegi alla console di sicurezza RSA SecurID

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'importazione (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 e poi 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 di progetto. Ti servirà per la configurazione dell'esportatore.

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

  1. Accedi alla console Google SecOps.
  2. Vai a Impostazioni SIEM > Agenti di raccolta.
  3. Scarica il file di autenticazione dell'importazione.
  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

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

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](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:

    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](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:

    sudo systemctl status observiq-otel-collector
    

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

Risorse di installazione aggiuntive

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

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

Individua il file di configurazione

  • Linux:

    sudo nano /opt/observiq-otel-collector/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/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
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: chronicle.googleapis.com
        log_type: 'RSA_AUTH_MANAGER'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    

Parametri di configurazione

Sostituisci i seguenti segnaposto:

  • Configurazione del ricevitore:

    • udplog: utilizza udplog per i syslog UDP o tcplog per i syslog TCP
    • 0.0.0.0: indirizzo IP su cui ascoltare (0.0.0.0 per ascoltare su tutte le interfacce)
    • 514: numero di porta su cui ascoltare (porta syslog standard)
  • Configurazione dell'esportatore:

    • creds_file_path: percorso completo del file della chiave JSON del account di servizio (opzione 1):

      • Linux: /opt/observiq-otel-collector/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • YOUR_CUSTOMER_ID: ID cliente dalla sezione Recupera l'ID cliente

    • location: 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. Per l'elenco completo, consulta Endpoint regionali.

    • project: sostituisci <PROJECT_NUMBER> con il numero di progetto da IAM e amministrazione > Impostazioni.

    • endpoint: mantieni l'impostazione chronicle.googleapis.com.

    • log_type: tipo di log esattamente come appare in Chronicle (RSA_AUTH_MANAGER)

Esportatore dell'API Ingestion legacy

  • Se utilizzi il file di autenticazione dell'importazione dell'opzione 2, sostituisci il blocco exporters con il seguente. Imposta creds_file_path sul percorso del file di autenticazione dell'importazione 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
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: 'RSA_AUTH_MANAGER'
        raw_log_field: body
        ingestion_labels:
    

Salva 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:

  1. Esegui questo comando:

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

    sudo systemctl status observiq-otel-collector
    
  3. Controlla i log per verificare la presenza di errori:

    sudo journalctl -u observiq-otel-collector -f
    

Per riavviare l'agente Bindplane in Windows:

  1. Scegli una delle seguenti opzioni:

    • Prompt dei comandi o PowerShell come amministratore:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • Console 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.
  2. Verifica che il servizio sia in esecuzione:

    sc query observiq-otel-collector
    
  3. Controlla i log per verificare la presenza di errori:

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

Configura l'inoltro dei syslog su RSA Authentication Manager

  1. Accedi alla console di sicurezza RSA SecurID.
  2. Vai a Configurazione > Impostazioni di sistema > Logging.
  3. In Logging remoto, fai clic su Aggiungi server di log remoto.

  4. Fornisci i seguenti dettagli di configurazione:

    • Nome host/indirizzo IP: inserisci l'indirizzo IP dell'host dell'agente Bindplane.
    • Porta: inserisci 514.
    • Protocollo: seleziona UDP.
  5. Nella sezione Livello di log, configura i livelli di logging:

    • Log delle attività di sistema: seleziona Informazioni o un livello superiore.
    • Log delle attività amministratore: seleziona Informazioni o un livello superiore.
    • Log di autenticazione di runtime: seleziona Informazioni o un livello superiore.
  6. Nella sezione Formato log:

    • Formato: seleziona CSV (valori separati da virgola).
  7. Fai clic su Salva.

  8. In alternativa, configura tramite l'interfaccia a riga di comando sull'appliance RSA:

    manage-logging --set-remote-logging --host BINDPLANE_IP --port 514 --protocol UDP
    

    Sostituisci BINDPLANE_IP con l'indirizzo IP dell'host dell'agente Bindplane.

  9. Verifica che i messaggi syslog vengano inviati controllando i log dell'agente Bindplane.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
clientip principal.asset.ip Il valore di column8 dal log non elaborato.
clientip principal.ip Il valore di column8 dal log non elaborato.
column1 metadata.event_timestamp.seconds Analizzato dal campo time (column1) nel log non elaborato, utilizzando i formati "aaaa-MM-gg HH:mm:ss" e "aaaa-MM-gg HH: mm:ss".
column12 security_result.action Mappato in base al campo operation_status (column12). I valori "SUCCESS" e "ACCEPT" vengono mappati su ALLOW, "FAIL", "REJECT", "DROP", "DENY", "NOT_ALLOWED" vengono mappati su BLOCK e gli altri valori vengono mappati su UNKNOWN_ACTION.
column18 principal.user.userid Il valore di column18 dal log non elaborato.
column19 principal.user.first_name Il valore di column19 dal log non elaborato.
column20 principal.user.last_name Il valore di column20 dal log non elaborato.
column25 principal.hostname Il valore di column25 dal log non elaborato.
column26 principal.asset.hostname Il valore di column26 dal log non elaborato.
column27 metadata.product_name Il valore di column27 dal log non elaborato.
column3 target.administrative_domain Il valore di column3 dal log non elaborato.
column32 principal.user.group_identifiers Il valore di column32 dal log non elaborato.
column5 security_result.severity Mappato in base al campo severity (column5). I valori "INFO", "INFORMATIONAL" vengono mappati su INFORMATIONAL, "WARN", "WARNING" vengono mappati su WARNING, "ERROR", "CRITICAL", "FATAL", "SEVERE", "EMERGENCY", "ALERT" vengono mappati su ERROR, "NOTICE", "DEBUG", "TRACE" vengono mappati su DEBUG e gli altri valori vengono mappati su UNKNOWN_SEVERITY.
column8 target.asset.ip Il valore di column8 dal log non elaborato.
column8 target.ip Il valore di column8 dal log non elaborato.
event_name security_result.rule_name Il valore di column10 dal log non elaborato.
host_name intermediary.hostname Estratto dalla parte del log non elaborato utilizzando pattern grok.
process_data principal.process.command_line Estratto dalla parte del log non elaborato utilizzando pattern grok.
summary security_result.summary Il valore di column13 dal log non elaborato.
time_stamp metadata.event_timestamp.seconds Estratto dalla parte del log non elaborato utilizzando pattern grok. Se non viene trovato, il timestamp viene estratto dal campo timestamp nel log non elaborato.

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.