Raccogli i log WAF di Radware

Supportato in:

Questo documento spiega come raccogliere i log del firewall delle applicazioni web (WAF) Radware utilizzando un forwarder di Google Security Operations. Il parser estrae i campi dai messaggi syslog del firewall Radware utilizzando i pattern Grok e li mappa all'UDM. Gestisce vari formati di log, compila i campi dei risultati di sicurezza in base ai dettagli dell'attacco e classifica gli eventi in base a attack_id, arricchendo i dati per l'importazione in Google SecOps.

Prima di iniziare

  • Assicurati di avere un'istanza Google Security Operations.
  • Assicurati di utilizzare Windows 2016 o versioni successive o un host Linux con systemd.
  • Se il servizio è in esecuzione dietro un proxy, assicurati che le porte del firewall siano aperte.
  • Assicurati che Radware Vision Reporter sia installato e configurato su AppWall.
  • Assicurati di disporre dell'accesso privilegiato al portale WAF di Radware.

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 Agent.

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

Configurare l'agente Bindplane per importare Syslog e inviarlo 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 with your specific IP and port
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Path to the ingestion authentication file
        creds: '/path/to/your/ingestion-auth.json'
        # Your Chronicle customer ID
        customer_id: 'your_customer_id'
        endpoint: malachiteingestion-pa.googleapis.com
        ingestion_labels:
          log_type: SYSLOG
          namespace: radware_waf
          raw_log_field: body
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    

Riavvia Bindplane Agent per applicare le modifiche

  • Per riavviare Bindplane Agent 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 il WAF Radware AppWall

Per completare le attività, esegui le tre configurazioni seguenti:

  • Configurare AppWall autonomamente utilizzando Vision Reporter.
  • Configura la AppWall integrata in Alteon utilizzando Vision Reporter (include i dati delle richieste HTTP nei dettagli dell'evento).
  • Configura Vision Reporter in modo che invii i log all'agente Bindplane.

Configurare AppWall Standalone utilizzando Vision Reporter

  1. Accedi alla console Radware WAF utilizzando le credenziali di amministratore.
  2. Vai a Configurazione > Servizi > Assistenza Vision > Vision Reporter.
    • Attiva il logging selezionando la casella di controllo Invia eventi a Vision Reporter.
    • Indirizzo Vision Reporter: inserisci l'indirizzo IP di Vision Reporter.
    • Porta: inserisci il numero di porta.
    • Protocollo: seleziona UDP o TCP.
    • Per includere i dati delle risposte HTTP, seleziona la casella di controllo Invia risposte a Vision Reporter.
  3. Fai clic su Salva.

Configurare AppWall integrata in Alteon utilizzando Vision Reporter (opzione preferita per la registrazione dei dati delle richieste HTTP)

  1. Accedi alla console WAF di Radware utilizzando le credenziali di amministratore.
  2. Vai a Configurazione > Sicurezza > Sicurezza web > Vision Reporter.
    • Attiva il logging selezionando la casella di controllo Invia eventi a Vision Reporter.
    • Seleziona la casella di controllo Invia eventi a Vision Reporter.
    • Indirizzo IP di Vision Reporter: inserisci l'indirizzo IP di Vision Reporter.
    • Porta: inserisci un numero di porta alto.
    • Sicurezza: seleziona UDP o TCP.
  3. Fai clic su Salva.

Configura Vision Reporter in modo che invii i log all'agente Bindplane

  1. Accedi alla console di amministrazione di Radware Vision Reporter.
  2. Vai a Configurazione > SIEM e logging esterno.
  3. Fai clic su + Aggiungi nuova destinazione SIEM.
    • Nome destinazione: inserisci Google SecOps Forwarder.
    • Tipo di esportazione dei log: seleziona Syslog (formato RFC 5424) per il logging strutturato.
    • In Indirizzo IP del server Syslog remoto, inserisci l'indirizzo IP dell'agente Bindplane.
    • Porta: inserisci una porta su cui l'agente Bindplane è in ascolto (ad esempio 514 per UDP, 601 per TCP).
    • Protocollo: seleziona UDP o TCP a seconda della configurazione di Bindplane.
  4. Fai clic su Salva.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
action event.idm.read_only_udm.security_result.action Se action è "drop", imposta "BLOCK".
attack_desc event.idm.read_only_udm.security_result.description Mappatura diretta.
attack_type event.idm.read_only_udm.security_result.threat_name Mappatura diretta.
command event.idm.read_only_udm.principal.process.command_line Mappatura diretta.
description event.idm.read_only_udm.security_result.description Mappato direttamente se attack_desc è vuoto.
dst_ip event.idm.read_only_udm.target.ip Mappatura diretta.
dst_port event.idm.read_only_udm.target.port Mappato direttamente, convertito in numero intero. Impostato su "MACCHINA" se è presente username e non command. Copiato dal campo collection_time del log non elaborato. Il valore predefinito è "NETWORK_CONNECTION". Imposta su "GENERIC_EVENT" se mancano src_ip o dst_ip. Impostato su "USER_LOGIN" se è presente username e non è presente command. Può essere sostituito da una logica basata su attack_id. Imposta su "RADWARE_FIREWALL". Mappato dal campo product. Imposta su "Radware".
intermediary_ip event.idm.read_only_udm.intermediary.ip Mappatura diretta.
obv_ip event.idm.read_only_udm.observer.ip Mappatura diretta.
product event.idm.read_only_udm.metadata.product_name Mappatura diretta.
protocol_number_src event.idm.read_only_udm.network.ip_protocol Analizzati utilizzando la logica parse_ip_protocol.include.
rule_id event.idm.read_only_udm.security_result.rule_id Mappatura diretta. Dedotto in base al valore di attack_id. I valori includono "ACL_VIOLATION", "NETWORK_DENIAL_OF_SERVICE", "NETWORK_SUSPICIOUS", "NETWORK_RECON".
src_ip event.idm.read_only_udm.principal.ip Mappatura diretta.
src_port event.idm.read_only_udm.principal.port Mappato direttamente, convertito in numero intero.
ts event.idm.read_only_udm.metadata.event_timestamp Analizzati e convertiti in timestamp.
username event.idm.read_only_udm.target.user.userid Mappato direttamente se command non è presente.
username event.idm.read_only_udm.principal.user.userid Mappato direttamente se è presente command.

Modifiche

2023-12-08

  • È stato modificato un pattern Grok per analizzare correttamente "src_ip".

2023-11-23

  • Sono stati aggiunti nuovi pattern Grok per supportare il nuovo pattern non analizzato dei SYSLOG.
  • È stato aggiunto il supporto del nuovo pattern di data "ts".
  • Inizializzati "attack_type", "attack_desc", "protocol_number_src", "security_result", "action", "product" su null.
  • È stato aggiunto il controllo null a "product" prima della mappatura a "event.idm.read_only_udm.metadata.product_name".
  • È stato aggiunto il controllo null a "rule_id" prima della mappatura a "event.idm.read_only_udm.security_result.rule_id".
  • È stato aggiunto il controllo null a "attack_desc" prima della mappatura a "event.idm.read_only_udm.security_result.description".
  • È stato aggiunto il controllo null a "attack_type" prima della mappatura a "event.idm.read_only_udm.security_result.threat_name".
  • "username" è stato mappato a "event.idm.read_only_udm.principal.user.userid".
  • "command" è stato mappato a "event.idm.read_only_udm.principal.process.command_line"
  • "description" è stato mappato a "event.idm.read_only_udm.security_result.description".
  • "intermediary_ip" è stato mappato a "event.idm.read_only_udm.intermediary.ip".

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