Radware-WAF-Protokolle erfassen
In diesem Dokument wird beschrieben, wie Sie die Logs der Radware-Webanwendungs-Firewall (WAF) mithilfe eines Google Security Operations-Weiterleiters erfassen.
Der Parser extrahiert Felder aus den syslog-Nachrichten der Radware-Firewall mithilfe von Grok-Mustern und ordnet sie dem UDM zu. Es unterstützt verschiedene Logformate, füllt Sicherheitsergebnisfelder basierend auf Angriffsdetails aus und kategorisiert Ereignisse basierend auf attack_id
, wodurch die Daten für die Aufnahme in Google SecOps angereichert werden.
Hinweise
- Sie benötigen eine Google Security Operations-Instanz.
- Sie müssen Windows 2016 oder höher oder einen Linux-Host mit
systemd
verwenden. - Wenn die Ausführung hinter einem Proxy erfolgt, müssen die Firewallports geöffnet sein.
- Prüfen Sie, ob Radware Vision Reporter auf AppWall installiert und konfiguriert ist.
- Sie benötigen Lese- und Schreibzugriff auf das Radware WAF-Portal.
Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen
- Melden Sie sich in der Google SecOps Console an.
- Gehen Sie zu SIEM-Einstellungen > Erfassungsagenten.
- Lade die Datei für die Datenaufnahmeauthentifizierung herunter. Speichern Sie die Datei sicher auf dem System, auf dem der BindPlane-Agent installiert wird.
Google SecOps-Kundennummer abrufen
- Melden Sie sich in der Google SecOps Console an.
- Gehen Sie zu SIEM-Einstellungen > Profil.
- Kopieren und speichern Sie die Kundennummer aus dem Bereich Organisationsdetails.
BindPlane-Agent installieren
Windows-Installation
- Öffnen Sie die Eingabeaufforderung oder die PowerShell als Administrator.
Führen Sie dazu diesen Befehl aus:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux-Installation
- Öffnen Sie ein Terminal mit Root- oder Sudo-Berechtigungen.
Führen Sie dazu diesen Befehl aus:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Weitere Installationsressourcen
- Weitere Installationsoptionen finden Sie in diesem Installationsleitfaden.
Bindplane-Agent so konfigurieren, dass er Syslog-Daten aufnimmt und an Google SecOps sendet
Rufen Sie die Konfigurationsdatei auf:
- Suchen Sie die Datei
config.yaml
. Normalerweise befindet es sich unter Linux im Verzeichnis/etc/bindplane-agent/
oder unter Windows im Installationsverzeichnis. - Öffnen Sie die Datei mit einem Texteditor, z. B.
nano
,vi
oder Notepad.
- Suchen Sie die Datei
Bearbeiten Sie die Datei
config.yaml
so: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
- Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
- Ersetzen Sie
<customer_id>
durch die tatsächliche Kundennummer. - Aktualisieren Sie
/path/to/ingestion-authentication-file.json
im Abschnitt Authentifizierungsdatei für die Datenaufnahme von Google SecOps abrufen auf den Pfad, unter dem die Authentifizierungsdatei gespeichert wurde.
Bindplane-Agent neu starten, um die Änderungen anzuwenden
Führen Sie den folgenden Befehl aus, um den Bindplane-Agenten unter Linux neu zu starten:
sudo systemctl restart bindplane-agent
Sie können den Bindplane-Agenten unter Windows entweder über die Dienste-Konsole oder mit dem folgenden Befehl neu starten:
net stop BindPlaneAgent && net start BindPlaneAgent
Radware AppWall WAF konfigurieren
Führen Sie die folgenden drei Konfigurationen aus, um die Aufgaben auszuführen:
- AppWall mit Vision Reporter als eigenständige Lösung konfigurieren
- Konfigurieren Sie die integrierte AppWall in Alteon mit Vision Reporter (fügen Sie HTTP-Anfragedaten in die Ereignisdetails ein).
- Konfiguriere Vision Reporter so, dass Protokolle an den Bindplane-Agenten gesendet werden.
AppWall Standalone mit Vision Reporter konfigurieren
- Melden Sie sich mit Administratoranmeldedaten in der Radware WAF-Konsole an.
- Gehen Sie zu Konfiguration > Dienste > Vision-Unterstützung > Vision Reporter.
- Aktivieren Sie die Protokollierung, indem Sie das Kästchen Ereignisse an Vision Reporter senden anklicken.
- Vision Reporter-Adresse: Geben Sie die IP-Adresse des Vision Reporters ein.
- Port: Geben Sie die Portnummer ein.
- Protokoll: Wählen Sie UDP oder TCP aus.
- Wenn Sie HTTP-Antwortdaten einbeziehen möchten, klicken Sie das Kästchen Antworten an Vision Reporter senden an.
- Klicken Sie auf Speichern.
Integrierte AppWall in Alteon mit Vision Reporter konfigurieren (bevorzugt für das Logging von HTTP-Anfragedaten)
- Melden Sie sich mit Administratoranmeldedaten in der Radware WAF-Konsole an.
- Gehen Sie zu Konfiguration > Sicherheit > Websicherheit > Vision Reporter.
- Aktivieren Sie die Protokollierung, indem Sie das Kästchen Ereignisse an Vision Reporter senden anklicken.
- Klicken Sie auf das Kästchen Ereignisse an Vision Reporter senden.
- IP-Adresse des Vision Reporters: Geben Sie die IP-Adresse des Vision Reporters ein.
- Port: Geben Sie eine hohe Portnummer ein.
- Sicherheit: Wählen Sie UDP oder TCP aus.
- Klicken Sie auf Speichern.
Vision Reporter so konfigurieren, dass Protokolle an den Bindplane-Agenten gesendet werden
- Melden Sie sich in der Admin-Konsole von Radware Vision Reporter an.
- Gehen Sie zu Konfiguration > SIEM und externe Protokollierung.
- Klicken Sie auf + Neues SIEM-Ziel hinzufügen.
- Destination Name (Zielname): Geben Sie Google SecOps Forwarder ein.
- Log Export Type (Log-Exporttyp): Wählen Sie Syslog (RFC 5424-Format) für strukturiertes Logging aus.
- Remote Syslog Server IP: Geben Sie die IP-Adresse des Bindplane-Agents ein.
- Port: Geben Sie einen Port ein, auf den der Bindplane-Agent wartet (z. B. 514 für UDP oder 601 für TCP).
- Protokoll: Wählen Sie je nach Bindplane-Konfiguration UDP oder TCP aus.
- Klicken Sie auf Speichern.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
action |
event.idm.read_only_udm.security_result.action |
Wenn action „drop“ ist, setzen Sie es auf „BLOCK“. |
attack_desc |
event.idm.read_only_udm.security_result.description |
Direkt zugeordnet. |
attack_type |
event.idm.read_only_udm.security_result.threat_name |
Direkt zugeordnet. |
command |
event.idm.read_only_udm.principal.process.command_line |
Direkt zugeordnet. |
description |
event.idm.read_only_udm.security_result.description |
Wird direkt zugeordnet, wenn attack_desc leer ist. |
dst_ip |
event.idm.read_only_udm.target.ip |
Direkt zugeordnet. |
dst_port |
event.idm.read_only_udm.target.port |
Direkt zugeordnet, in eine Ganzzahl umgewandelt. Legen Sie „MACHINE“ fest, wenn username vorhanden ist und command nicht. Aus dem Feld collection_time des Rohlogs kopiert. Standardmäßig ist „NETWORK_CONNECTION“ festgelegt. Legen Sie „GENERIC_EVENT“ fest, wenn entweder src_ip oder dst_ip fehlt. Legen Sie „USER_LOGIN“ fest, wenn username vorhanden ist und command nicht. Kann durch Logik auf Grundlage von attack_id überschrieben werden. Legen Sie den Wert auf „RADWARE_FIREWALL“ fest. Aus dem Feld product zugeordnet. Legen Sie diesen Wert auf „Radware“ fest. |
intermediary_ip |
event.idm.read_only_udm.intermediary.ip |
Direkt zugeordnet. |
obv_ip |
event.idm.read_only_udm.observer.ip |
Direkt zugeordnet. |
product |
event.idm.read_only_udm.metadata.product_name |
Direkt zugeordnet. |
protocol_number_src |
event.idm.read_only_udm.network.ip_protocol |
Mit der parse_ip_protocol.include -Logik geparst. |
rule_id |
event.idm.read_only_udm.security_result.rule_id |
Direkt zugeordnet. Abgeleitet vom Wert von attack_id . Zu den Werten gehören „ACL_VIOLATION“, „NETWORK_DENIAL_OF_SERVICE“, „NETWORK_SUSPICIOUS“ und „NETWORK_RECON“. |
src_ip |
event.idm.read_only_udm.principal.ip |
Direkt zugeordnet. |
src_port |
event.idm.read_only_udm.principal.port |
Direkt zugeordnet, in eine Ganzzahl umgewandelt. |
ts |
event.idm.read_only_udm.metadata.event_timestamp |
Geparst und in einen Zeitstempel umgewandelt. |
username |
event.idm.read_only_udm.target.user.userid |
Direkt zugeordnet, wenn command nicht vorhanden ist. |
username |
event.idm.read_only_udm.principal.user.userid |
Wird direkt zugeordnet, wenn command vorhanden ist. |
Änderungen
2023-12-08
- Ein Grok-Muster wurde geändert, um „src_ip“ richtig zu parsen.
2023-11-23
- Neue Grok-Muster hinzugefügt, um neue nicht analysierte SYSLOG-Muster zu unterstützen.
- Unterstützung für das neue Datumsmuster „ts“ hinzugefügt.
- „attack_type“, „attack_desc“, „protocol_number_src“, „security_result“, „action“ und „product“ wurden auf „null“ initialisiert.
- Es wurde eine Null-Prüfung für „product“ hinzugefügt, bevor eine Zuordnung zu „event.idm.read_only_udm.metadata.product_name“ erfolgt.
- Es wurde eine Null-Prüfung für „rule_id“ hinzugefügt, bevor eine Zuordnung zu „event.idm.read_only_udm.security_result.rule_id“ erfolgt.
- Es wurde eine Null-Prüfung für „attack_desc“ hinzugefügt, bevor eine Zuordnung zu „event.idm.read_only_udm.security_result.description“ erfolgt.
- Für „attack_type“ wurde eine Null-Prüfung hinzugefügt, bevor eine Zuordnung zu „event.idm.read_only_udm.security_result.threat_name“ erfolgt.
- „username“ wurde zu „event.idm.read_only_udm.principal.user.userid“ zugeordnet.
- „command“ wurde auf „event.idm.read_only_udm.principal.process.command_line“ zugeordnet
- „description“ wurde in „event.idm.read_only_udm.security_result.description“ geändert.
- „intermediary_ip“ wurde zu „event.idm.read_only_udm.intermediary.ip“ zugeordnet.
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten