Kaspersky-AV-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie Kaspersky Antivirus-Logs mit Bindplane in Google Security Operations aufnehmen. Der Parsercode versucht zuerst, die Roh-Logmeldung als JSON zu parsen. Wenn das fehlschlägt, werden reguläre Ausdrücke (grok
-Muster) verwendet, um Felder aus der Nachricht basierend auf gängigen Kaspersky AV-Logformaten zu extrahieren.
Hinweise
Prüfen Sie, ob die folgenden Voraussetzungen erfüllt sind:
- Google SecOps-Instanz
- Windows 2016 oder höher oder Linux-Host mit systemd
- Wenn die Ausführung hinter einem Proxy erfolgt, sind die Firewallports geöffnet.
- Zugriffsrechte für Kaspersky Antivirus
Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie SIEM-Einstellungen > Collection Agents auf.
- Laden Sie die Authentifizierungsdatei für die Aufnahme herunter. Speichern Sie die Datei sicher auf dem System, auf dem BindPlane installiert wird.
Google SecOps-Kundennummer abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > „Profil“ auf.
- Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.
BindPlane-Agent installieren
Fenstereinbau
- Öffnen Sie die Eingabeaufforderung oder 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
Zusätzliche Installationsressourcen
Weitere Installationsoptionen finden Sie im Installationsleitfaden.
BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren
Greifen Sie auf die Konfigurationsdatei zu:
- 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 the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization ingestion_labels: log_type: KASPERSKY_AV 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 Kunden-ID.Aktualisieren Sie
/path/to/ingestion-authentication-file.json
auf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Google SecOps-Aufnahmeauthentifizierungsdatei abrufen gespeichert wurde.
Bindplane-Agent neu starten, um die Änderungen zu übernehmen
Führen Sie den folgenden Befehl aus, um den Bindplane-Agent unter Linux neu zu starten:
sudo systemctl restart bindplane-agent
Wenn Sie den Bindplane-Agent unter Windows neu starten möchten, können Sie entweder die Konsole Dienste verwenden oder den folgenden Befehl eingeben:
net stop BindPlaneAgent && net start BindPlaneAgent
Ereignisexport in Kaspersky AV konfigurieren
- Melden Sie sich in der Kaspersky Security Center-Konsole an.
- Wählen Sie den Administrationsserver aus, dessen Ereignisse Sie exportieren möchten.
- Klicken Sie im Arbeitsbereich Administrationsserver auf den Tab Ereignisse.
- Klicken Sie auf den Link „Benachrichtigungen und Ereignisexport konfigurieren“.
- Wählen Sie in der Liste Export in SIEM-System konfigurieren aus.
- Geben Sie die folgenden Konfigurationsdetails an:
- SIEM-System: Wählen Sie Arcsight (CEF-Format) aus.
- Serveradresse des SIEM-Systems: Geben Sie die IP-Adresse des Bindplane-Agents ein.
- SIEM-Systemserverport: Geben Sie die Portnummer des Bindplane-Agents ein (z. B.
514
für UDP). - Protokoll: Wählen Sie UDP aus.
- Klicken Sie auf OK.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
Anwendung | network.http.user_agent | Direkt aus dem Feld Application im Rohlog zugeordnet. |
Anwendungspfad | target.process.file.full_path | Wird mit dem Feld Name verwendet, um den vollständigen Pfad zu erstellen, wenn Application path im Rohlog vorhanden ist. |
Komponente | target.resource.name | Direkt aus dem Feld Component im Rohlog zugeordnet. |
Inhaltskategorie | security_result.category_details | Wird dem Feld security_result.category_details hinzugefügt, wenn Content category im Rohlog vorhanden ist. |
Quelle der Inhaltskategorie | target.resource.type | Wenn der Wert databases enthält, wird das UDM-Feld auf DATABASE gesetzt. |
Erreur | security_result.summary | Direkt aus dem Feld Erreur im Rohlog zugeordnet, wenn das Feld summary leer ist. |
et | metadata.product_event_type | Direkt aus dem Feld et im Rohlog zugeordnet, wenn das Feld product_event_type leer ist. |
et | security_result.category_details | Dem Feld security_result.category_details hinzugefügt. |
etdn | extensions.vulns.vulnerabilities.description | Direkt aus dem Feld etdn im Rohlog zugeordnet. |
SHA256-Hash der Datei | target.process.file.sha256 | Direkt aus dem Feld File SHA256 hash im Rohlog zugeordnet. |
gn | security_result.about.labels | key wird auf GN und value auf den Wert des Felds gn festgelegt. |
hdn | principal.hostname | Direkt aus dem Feld hdn im Rohlog zugeordnet. |
Hüfte | principal.ip | Direkt aus dem Feld hip im Rohlog zugeordnet. |
host_name | principal.hostname | Direkt aus dem Feld host_name im Rohlog zugeordnet. |
intermediary_host | intermediary.hostname | Direkt aus dem Feld intermediary_host im Rohlog zugeordnet. |
intermediary_hostname | intermediary.hostname | Direkt aus dem Feld intermediary_hostname im Rohlog zugeordnet. |
kv_data1 | Dieses Feld wird geparst und seine Werte werden anderen UDM-Feldern zugeordnet. | |
kv_data2 | Dieses Feld wird geparst und seine Werte werden anderen UDM-Feldern zugeordnet. | |
Label | network.http.user_agent | Wenn der Wert User-Agent ist, wird das UDM-Feld mit dem Wert des Felds description gefüllt. |
Label | principal.hostname | Wenn der Wert Host ist, wird das UDM-Feld mit dem Hostnamen gefüllt, der aus dem Feld description extrahiert wurde. |
Label | security_result.description | Bei anderen Werten wird das UDM-Feld mit einem String gefüllt, der die Felder label und description enthält. |
MD5 | target.process.file.md5 | Direkt aus dem Feld MD5 im Rohlog abgeleitet, nachdem es in Kleinbuchstaben umgewandelt wurde. |
MD5-Datei-Hash | target.process.file.md5 | Direkt aus dem Feld MD5 file hash im Rohlog zugeordnet. |
Nachricht | Dieses Feld wird geparst und seine Werte werden anderen UDM-Feldern zugeordnet. | |
Methode | network.http.method | Direkt aus dem Feld method im Rohlog abgeleitet, wenn es mit einer Liste von HTTP-Methoden übereinstimmt. |
Name | target.file.full_path | Direkt aus dem Feld name im Rohlog zugeordnet. |
Nom | target.process.file.full_path | Wird mit dem Feld application_path verwendet, um den vollständigen Pfad zu erstellen. |
p1 | target.process.file.sha256 | Direkt aus dem Feld p1 im Rohlog zugeordnet, nachdem es in Kleinbuchstaben konvertiert wurde, wenn das Feld SHA256 leer ist und der Wert ein hexadezimaler String ist. |
p2 | target.process.file.full_path | Direkt aus dem Feld p2 im Rohlog zugeordnet. |
P5 | security_result.rule_name | Direkt aus dem Feld p5 im Rohlog zugeordnet. |
p7 | principal.user.user_display_name | Direkt aus dem Feld p7 im Rohlog zugeordnet, wenn die Felder User und user_name leer sind. |
Prozess-ID | principal.process.pid | Direkt aus dem Feld Process ID im Rohlog zugeordnet. |
process_id | target.process.pid | Direkt aus dem Feld process_id im Rohlog zugeordnet. |
Protokoll | network.application_protocol | Wenn der Wert http (unabhängig von der Groß-/Kleinschreibung) enthält, wird das UDM-Feld auf HTTP gesetzt. |
Grund | security_result.summary | Direkt aus dem Feld Reason im Rohlog zugeordnet. |
Angefragte Webseite | target.url | Direkt aus dem Feld Requested web page im Rohlog zugeordnet. |
Ergebnis | Wenn der Wert Allowed ist, wird das Feld sr_action auf ALLOW gesetzt. |
|
rtid | security_result.about.labels | key wird auf rtid und value auf den Wert des Felds rtid festgelegt. |
Regel | security_result.description | Direkt aus dem Feld Rule im Rohlog zugeordnet. |
SHA256 | target.process.file.sha256 | Direkt aus dem Feld SHA256 im Rohlog abgeleitet, nachdem es in Kleinbuchstaben umgewandelt wurde. |
sr_action | security_result.action | Mit dem Feld security_result.action zusammengeführt. |
Zusammenfassung | security_result.summary | Direkt aus dem Feld summary im Rohlog zugeordnet. |
task_name | security_result.about.labels | key wird auf TaskName und value auf den Wert des Felds task_name festgelegt. |
threat_action_taken | Wenn der Wert blocked ist, wird das Feld security_action auf BLOCK gesetzt. Wenn der Wert allowed ist, wird das Feld security_action auf ALLOW gesetzt. |
|
timestamp | metadata.event_timestamp | Wird verwendet, um den Ereigniszeitstempel zu erfassen. |
Typ | security_result.threat_name | Direkt aus dem Feld Type im Rohlog zugeordnet. |
URL | network.http.referral_url | Direkt aus dem Feld url im Rohlog zugeordnet. |
Nutzer | principal.user.user_display_name | Der Nutzername wird aus diesem Feld extrahiert und dem UDM-Feld zugeordnet. |
Nutzer | principal.administrative_domain | Die Domain wird aus diesem Feld extrahiert und dem UDM-Feld zugeordnet. |
user_name | principal.user.user_display_name | Direkt aus dem Feld user_name im Rohlog zugeordnet, wenn das Feld User leer ist. |
metadata.event_type | Wird auf SCAN_VULN_NETWORK gesetzt, wenn Application path und Name vorhanden sind, auf STATUS_UNCATEGORIZED , wenn hdn oder host_name vorhanden sind, und auf GENERIC_EVENT , wenn keines der beiden vorhanden ist. |
|
metadata.vendor_name | Immer auf KASPERSKY gesetzt. |
|
metadata.product_name | Immer auf KASPERSKY_AV gesetzt. |
|
metadata.log_type | Immer auf KASPERSKY_AV gesetzt. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten