WatchGuard Fireware-Logs erfassen

Unterstützt in:

Übersicht

Dieser Parser extrahiert WatchGuard Fireware-Protokolle im JSON- oder Schlüssel/Wert-Format (KV) und wandelt sie in UDM um. „Traffic“- und „Event“-Logs werden unterschiedlich verarbeitet. Dabei werden Grok- und KV-Filter verwendet, um Felder zu extrahieren und UDM zuzuordnen. Es gibt eine spezielle Logik für verschiedene msg_id-Werte und Ereignisnamen, die Netzwerkprotokolle, Nutzeraktionen, Sicherheitsergebnisse und andere relevante Details verarbeitet. Außerdem wird eine zweite Gruppe von Syslog-Einträgen verarbeitet, aus der ähnliche Informationen extrahiert und dem UDM-Format zugeordnet werden.

Hinweise

  • Prüfen Sie, ob Sie eine Google SecOps-Instanz haben.
  • Sie müssen privilegierten Zugriff auf Watchguard haben.
  • Achten Sie darauf, dass Sie einen Windows 2012 SP2-Host oder höher oder einen Linux-Host mit systemd haben.
  • Wenn Sie einen Proxy verwenden, müssen die Firewallports geöffnet sein.

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Profil auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

  1. Führen Sie für die Windows-Installation das folgende Skript aus: msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet.
  2. Führen Sie für die Linux-Installation das folgende Skript aus: sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh.
  3. Weitere Installationsoptionen finden Sie in dieser Installationsanleitung.

Bindplane-Agent so konfigurieren, dass Syslog-Daten aufgenommen und an Google SecOps gesendet werden

  1. Greifen Sie auf den Computer zu, auf dem BindPlane installiert ist.
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
      tcplog:
        # Replace the below port <54525> and IP (0.0.0.0) with your specific values
        listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            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: testNamespace
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Starten Sie den Bindplane-Agent neu, um die Änderungen zu übernehmen. Verwenden Sie dazu den folgenden Befehl: sudo systemctl bindplane restart

Syslog-Serverkonfiguration zu Watchguard hinzufügen

  1. Melden Sie sich in der Watchguard-Benutzeroberfläche an.
  2. Wählen Sie System > Logging aus.
  3. Klicken Sie auf den Tab Syslog-Server.
  4. Klicken Sie das Kästchen Protokollnachrichten an diese Syslog-Server senden an.
  5. Klicken Sie auf Hinzufügen.
  6. Geben Sie im Dialogfeld Syslog-Server Werte für die Eingabeparameter an:

    • IP-Adresse: Geben Sie die IP-Adresse des Servers ein.
    • Port: Ändern Sie den Standardport des Syslog-Servers (514), indem Sie einen anderen Port für Ihren Server eingeben.
    • Logformat: Wählen Sie im Drop-down-Menü Syslog aus.
    • Optional: Beschreibung: Geben Sie eine Beschreibung für den Server ein, z. B. Google SecOps-Export.
    • Optional: Zeitstempel: Wählen Sie das Kästchen aus, um das Datum und die Uhrzeit des Ereignisses auf Ihrer Firebox in die Details der Protokollnachricht aufzunehmen.
    • Optional: Die Seriennummer des Geräts: Aktivieren Sie das Kästchen, um die Seriennummer der Firebox in die Details der Protokollnachricht aufzunehmen.
    • Syslog-Einrichtung: Wählen Sie für jeden Typ von Log-Nachricht eine Priorität aus dem Drop-down-Menü aus. Für Syslog-Nachrichten mit hoher Priorität, z. B. Alarme, wählen Sie Local0 aus.
    • Optional: Standardeinstellungen wiederherstellen: Damit werden die Standardeinstellungen wiederhergestellt.
  7. Klicken Sie auf Speichern.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
action security_result.action_details Der Wert von action aus dem Rohlog wird security_result.action_details zugewiesen.
action target.labels.value Der Wert von action aus dem Rohlog wird target.labels.value zugewiesen. target.labels.key ist „Vorgang für Ressource“.
arg target.file.full_path Der Wert von arg aus dem Rohlog wird target.file.full_path zugewiesen.
app_cat_id about.labels.value Der Wert von app_cat_id aus dem Rohlog wird about.labels.value zugewiesen, wobei about.labels.key „app_cat_id“ ist.
app_cat_name target.application Wird in Kombination mit app_name verwendet, um den Wert von target.application zu bilden (z.B. „Google – Webservices“).
app_id about.labels.value Der Wert von app_id aus dem Rohlog wird about.labels.value zugewiesen, wobei about.labels.key „app_id“ ist.
app_name target.application Wird in Kombination mit app_cat_name verwendet, um den Wert von target.application zu bilden (z.B. „Google – Webservices“).
cats security_result.category_details Der Wert von cats aus dem Rohlog wird security_result.category_details zugewiesen.
cert_issuer network.tls.server.certificate.issuer Der Wert von cert_issuer aus dem Rohlog wird network.tls.server.certificate.issuer zugewiesen.
cert_subject network.tls.server.certificate.subject Der Wert von cert_subject aus dem Rohlog wird network.tls.server.certificate.subject zugewiesen.
cn network.tls.server.certificate.subject Der Wert von cn aus dem Rohlog wird network.tls.server.certificate.subject zugewiesen.
conn_action security_result.action_details Der Wert von conn_action aus dem Rohlog wird security_result.action_details zugewiesen.
content_type Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
description metadata.description Der Wert von description, der aus dem Rohlog abgeleitet wird, wird metadata.description zugewiesen.
dhcp_type network.dhcp.type Der Wert von dhcp_type aus dem Rohlog wird dem entsprechenden DHCP-Typ in network.dhcp.type zugeordnet (z.B. „REQUEST“, „ACK“).
dst_host target.hostname Der Wert von dst_host aus dem Rohlog wird target.hostname zugewiesen.
dst_ip target.ip Der Wert von dst_ip aus dem Rohlog wird target.ip zugewiesen.
dst_mac target.mac Der Wert von dst_mac aus dem Rohlog wird target.mac zugewiesen.
dst_port target.port Der Wert von dst_port aus dem Rohlog wird target.port zugewiesen.
dst_user target.user.user_display_name Der Wert von dst_user aus dem Rohlog wird target.user.user_display_name zugewiesen.
dstname target.administrative_domain Der Wert von dstname aus dem Rohlog wird target.administrative_domain zugewiesen.
duration Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
elapsed_time Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
endpoint intermediary.labels.value Der Wert von endpoint aus dem Rohlog wird intermediary.labels.value zugewiesen, wobei intermediary.labels.key „Gateway-Endpoint“ ist.
event_name principal.application Der Wert von event_name aus dem Rohlog wird principal.application zugewiesen.
firewall_id intermediary.asset_id Der Wert von firewall_id aus dem Rohlog wird mit „Firewall ID: “ vorangestellt und intermediary.asset_id zugewiesen.
firewall_name principal.asset_id Der Wert von firewall_name aus dem Rohlog wird mit „Firewall: “ vorangestellt und principal.asset_id zugewiesen.
firewallname intermediary.hostname Der Wert von firewallname aus dem Rohlog wird intermediary.hostname zugewiesen.
firewallname principal.hostname Der Wert von firewallname aus dem Rohlog wird principal.hostname zugewiesen.
fqdn_dst_match Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
geo Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
geo_dst target.location.country_or_region Der Wert von geo_dst aus dem Rohlog wird target.location.country_or_region zugewiesen.
geo_src principal.location.country_or_region Der Wert von geo_src aus dem Rohlog wird principal.location.country_or_region zugewiesen.
host Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
ike_policy security_result.rule_id Der Wert von ike_policy aus dem Rohlog wird security_result.rule_id zugewiesen.
ike_policy_version security_result.rule_version Der Wert von ike_policy_version aus dem Rohlog wird security_result.rule_version zugewiesen.
intermediary_host intermediary.hostname Der Wert von intermediary_host aus dem Rohlog wird intermediary.hostname zugewiesen.
ipaddress Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
ipsec_policy Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
ipsec_policy_version Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
keyword Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
line Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
log_message metadata.description Der Wert von log_message aus dem Rohlog wird metadata.description zugewiesen, wenn keine anderen spezifischeren Beschreibungen verfügbar sind.
log_reason security_result.summary Der Wert von log_reason aus dem Rohlog wird security_result.summary zugewiesen.
log_type metadata.log_type Der Wert von log_type aus dem Rohlog wird metadata.log_type zugewiesen. Immer auf „WATCHGUARD“ festgelegt.
msg security_result.summary Der Wert von msg aus dem Rohlog wird security_result.summary zugewiesen.
msg_id metadata.product_event_type Der Wert von msg_id aus dem Rohlog wird metadata.product_event_type zugewiesen.
new_action security_result.action_details Wird mit conn_action verwendet, um den Wert von security_result.action_details zu bilden (z.B. „ProxyReplace: IP protocol - HTTPS-Client.DPI-Off“).
op network.http.method Der Wert von op aus dem Rohlog wird network.http.method zugewiesen.
path target.url Der Wert von path aus dem Rohlog wird target.url zugewiesen.
pid Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
policy_name intermediary.resource.name Der Wert von policy_name aus dem Rohlog wird intermediary.resource.name zugewiesen.
policy_name security_result.rule_name Der Wert von policy_name aus dem Rohlog wird security_result.rule_name zugewiesen.
policyname_label.value security_result.rule_labels.value Der Wert von policy_name aus dem Rohlog wird security_result.rule_labels.value zugewiesen, wobei security_result.rule_labels.key „PolicyName“ ist.
prin_host principal.hostname Der Wert von prin_host aus dem Rohlog wird principal.hostname zugewiesen.
proc_id Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
protocol network.ip_protocol Der Wert von protocol aus dem Rohlog, in Großbuchstaben umgewandelt, wird network.ip_protocol zugewiesen. Sonderbehandlung für „EXTERNAL ICMP“, das „ICMP“ zugeordnet wird.
proxy_act security_result.rule_id Der Wert von proxy_act aus dem Rohlog wird security_result.rule_id zugewiesen.
proxy_act security_result.rule_name Der Wert von proxy_act aus dem Rohlog wird security_result.rule_name zugewiesen.
query_name network.dns.questions.name Der Wert von query_name aus dem Rohlog wird network.dns.questions.name zugewiesen.
query_type network.dns.questions.type Der Wert von query_type aus dem Rohlog wird network.dns.questions.type zugewiesen. Spezielle Verarbeitung für numerische Abfragetypen und Zuordnung zu Standard-DNS-Abfragetypen.
rc Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
reason security_result.summary Der Wert von reason aus dem Rohlog wird security_result.summary zugewiesen.
record_type network.dns.answers.type Der Wert von record_type aus dem Rohlog wird dem entsprechenden DNS-Eintragstyp in network.dns.answers.type zugeordnet.
redirect_action Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
reputation additional.fields.value.string_value Der Wert von reputation aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „reputation“ ist.
response Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
response_code network.dns.response_code Der Wert von response_code aus dem Rohlog wird dem entsprechenden DNS-Antwortcode in network.dns.response_code zugeordnet.
route_type Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
rule_name security_result.rule_name Der Wert von rule_name aus dem Rohlog wird security_result.rule_name zugewiesen.
rcvd_bytes network.received_bytes Der Wert von rcvd_bytes aus dem Rohlog wird network.received_bytes zugewiesen.
sent_bytes network.sent_bytes Der Wert von sent_bytes aus dem Rohlog wird network.sent_bytes zugewiesen.
server_ssl Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
severity Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
sig_vers network.tls.server.certificate.version Der Wert von sig_vers aus dem Rohlog wird network.tls.server.certificate.version zugewiesen.
signature_cat additional.fields.value.string_value Der Wert von signature_cat aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „signature_cat“ ist.
signature_id additional.fields.value.string_value Der Wert von signature_id aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „signature_id“ ist.
signature_name additional.fields.value.string_value Der Wert von signature_name aus dem Rohlog wird additional.fields.value.string_value zugewiesen, wobei additional.fields.key „signature_name“ ist.
sni network.tls.client.server_name Der Wert von sni aus dem Rohlog wird network.tls.client.server_name zugewiesen.
src_ctid Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
src_host principal.hostname Der Wert von src_host aus dem Rohlog wird principal.hostname zugewiesen.
src_ip principal.ip Der Wert von src_ip aus dem Rohlog wird principal.ip zugewiesen.
src_ip_nat Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
src_mac principal.mac Der Wert von src_mac aus dem Rohlog wird principal.mac zugewiesen.
src_port principal.port Der Wert von src_port aus dem Rohlog wird principal.port zugewiesen.
src_user principal.user.user_display_name Der Wert von src_user aus dem Rohlog wird principal.user.user_display_name zugewiesen.
src_user_name principal.user.user_display_name Der Wert von src_user_name aus dem Rohlog wird principal.user.user_display_name zugewiesen.
src_vpn_ip principal.ip Der Wert von src_vpn_ip aus dem Rohlog wird principal.ip zugewiesen.
srv_ip Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
srv_port Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
ssl_offload Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
tcp_info Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
time metadata.event_timestamp.seconds, timestamp.seconds Der Wert von time aus dem Rohlog wird geparst und zum Ausfüllen von metadata.event_timestamp.seconds und timestamp.seconds verwendet.
time1 metadata.event_timestamp.seconds, timestamp.seconds Der Wert von time1 aus dem Rohlog wird geparst und zum Ausfüllen von metadata.event_timestamp.seconds und timestamp.seconds verwendet.
tls_profile about.labels.value Der Wert von tls_profile aus dem Rohlog wird about.labels.value zugewiesen, wobei about.labels.key „tls_profile“ ist.
tls_version Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
user_name principal.user.userid, principal.user.user_display_name Der Wert von user_name aus dem Rohlog wird je nach Kontext principal.user.userid oder principal.user.user_display_name zugewiesen.
user_type Nicht zugeordnet Nicht dem IDM-Objekt in den bereitgestellten UDM-Beispielen zugeordnet.
(–) intermediary.resource.type Immer auf „ACCESS_POLICY“ festgelegt.
(–) metadata.event_type Wird von der Parserlogik basierend auf msg_id, log_type, event_name und anderen Feldern bestimmt. Kann NETWORK_CONNECTION, SERVICE_MODIFICATION, NETWORK_SMTP, NETWORK_DNS, NETWORK_HTTP, USER_LOGIN, USER_LOGOUT, USER_RESOURCE_UPDATE_CONTENT, RESOURCE_PERMISSIONS_CHANGE, RESOURCE_CREATION, GENERIC_EVENT, STATUS_UPDATE oder USER_UNCATEGORIZED sein.
(–) metadata.product_name Immer auf „Fireware“ festgelegt.
(–) metadata.vendor_name Immer auf „Watchguard“ eingestellt.
(–) security_result.action Wird durch die Parserlogik auf Grundlage von disposition bestimmt. Kann „ALLOW“ oder „BLOCK“ sein.
(–) extensions.auth.type Für Nutzeranmelde- und ‑abmeldeereignisse auf „AUTHTYPE_UNSPECIFIED“ und für Netzwerkereignisse im Zusammenhang mit VPNs auf „VPN“ festgelegt.
(–) network.application_protocol Wird durch die Parserlogik basierend auf msg_id und event_name bestimmt. Kann „DNS“, „DHCP“, „HTTP“ oder „HTTPS“ sein.
(–) network.dns.questions.type Auf 1 für Abfragen von A-Einträgen festlegen.
(–) target.labels.key Auf „Aktion über Ressource“ festgelegt, wenn action target.labels.value zugeordnet ist.
(–) intermediary.labels.key Auf „Firewall Member Name“ (Firewall-Mitgliedsname) festgelegt, wenn prin_host intermediary.labels.value zugeordnet ist.
(–) intermediary.labels.key Auf „Gateway-Endpoint“ (Gateway-Endpunkt) festgelegt, wenn endpoint intermediary.labels.value zugeordnet ist.
(–) principal.labels.key Legen Sie „Gateway“ fest, wenn gateway principal.labels.value zugeordnet ist.
(–) target.labels.key Legen Sie „Gateway“ fest, wenn gateway target.labels.value zugeordnet ist.
(–) principal.labels.key Legen Sie „state“ fest, wenn status principal.labels.value zugeordnet ist.
(–) target.labels.key Auf „Gateway-Status“ festgelegt, wenn status target.labels.value zugeordnet ist.
(–) additional.fields.key Legen Sie „signature_name“, „signature_cat“, „signature_id“ oder „reputation“ fest, wenn die entsprechenden Werte aus dem Rohlog zugeordnet werden.

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten