Logs von Active Countermeasures AC-Hunter erfassen
Parserversion:3.0
In diesem Dokument wird beschrieben, wie Sie Logs von Active Countermeasures AC-Hunter mit Bindplane in Google Security Operations aufnehmen.
AC-Hunter ist eine Plattform zur Erkennung von Netzwerkbedrohungen von Active Countermeasures, die automatische Bedrohungssuche durchführt, indem sie den Netzwerkverkehr analysiert, um kompromittierte Systeme zu identifizieren, die mit Command-and-Control-Servern kommunizieren. AC-Hunter wird in Docker-Containern auf einem Linux-Server ausgeführt und kann Bedrohungsbenachrichtigungen über das Syslog-Protokoll an einen SIEM- oder zentralisierten Logging-Server weiterleiten.
Hinweis
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz.
- Windows Server 2016 oder höher oder ein Linux-Host mit
systemd. - Wenn Sie einen Proxy verwenden, achten Sie darauf, dass die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sind.
- Privilegierter Zugriff (SSH mit sudo) auf den Active Countermeasures AC-Hunter-Server, um die Konfigurationsdatei zu bearbeiten.
- AC-Hunter Version 5.3.0 oder höher (frühere Versionen enthalten einen Fehler, der das Senden von Syslog-Nachrichten verhindert).
- Netzwerkpfad vom AC-Hunter-Server zum Bindplane-Agent-Host auf dem ausgewählten Syslog-Port (UDP oder TCP).
- IP-Weiterleitung auf dem AC-Hunter-Host aktiviert, damit Docker-Container Syslog an externe Server senden können.
Google SecOps-Anmeldedaten für den Bindplane-Agent abrufen
Wählen Sie eine der folgenden Methoden aus, um den Bindplane-Agent bei Google SecOps zu authentifizieren:
- Neue Bereitstellungen: Verwenden Sie die Chronicle API (Option 1).
- Legacy-Bereitstellungen: Verwenden Sie die Authentifizierungsdatei für die Aufnahme (Option 2) weiter, bis die Ingestion API am 20. Juli 2027 eingestellt wird.
Option 1: Dienstkonto für die Chronicle API erstellen (empfohlen)
- Melden Sie sich in der Google Cloud Console an und wählen Sie das Google Cloud Projekt aus, das mit Ihrer Google SecOps-Instanz verknüpft ist.
- Rufen Sie IAM und Verwaltung > Dienstkonten auf.
- Klicken Sie auf Dienstkonto erstellen.
- Geben Sie die folgenden Konfigurationsdetails an:
- Name des Dienstkontos: Geben Sie einen Namen für das Konto ein (z. B.
bindplane-ingest). - Dienstkontobeschreibung: Geben Sie eine Beschreibung ein (z. B.
Bindplane agent log ingestion).
- Name des Dienstkontos: Geben Sie einen Namen für das Konto ein (z. B.
- Klicken Sie auf Erstellen und fortfahren.
- Klicken Sie im Abschnitt Diesem Dienstkonto Zugriff auf das Projekt erteilen auf Rolle auswählen und wählen Sie Chronicle-Editor aus.
- Klicken Sie auf Weiter und dann auf Fertig.
- Klicken Sie auf das erstellte Dienstkonto und rufen Sie den Tab Schlüssel auf.
- Klicken Sie auf Schlüssel hinzufügen > Neuen Schlüssel erstellen.
- Wählen Sie JSON aus und klicken Sie auf Erstellen. Die Schlüsseldatei wird auf Ihren Computer heruntergeladen.
- Speichern Sie die Schlüsseldatei als
ingestion-auth.jsonim Bindplane-Collector-Verzeichnis (/opt/observiq-otel-collector/ingestion-auth.jsonunter Linux oderC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.jsonunter Windows) oder aktualisieren Siecreds_file_pathinconfig.yaml, damit der Pfad mit dem Speicherort übereinstimmt. - Rufen Sie IAM und Verwaltung > Einstellungen auf und kopieren Sie die Projektnummer. Sie benötigen sie für die Exporterkonfiguration.
Option 2: Authentifizierungsdatei für die Aufnahme herunterladen (Legacy)
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Erfassungs-Agents auf.
- Laden Sie die Authentifizierungsdatei für die Aufnahme 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-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Profil auf.
- Kopieren und speichern Sie die Kundennummer aus dem Abschnitt Organisationsdetails.
Bindplane-Agent installieren
Installieren Sie den Bindplane-Agent gemäß der folgenden Anleitung auf Ihrem Windows- oder Linux-Betriebssystem.
Windows-Installation
- Ö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
Weitere Installationsressourcen
Weitere Installationsoptionen finden Sie in der Installationsanleitung für den Bindplane-Agent.
Bindplane-Agent so konfigurieren, dass Syslog aufgenommen und an Google SecOps gesendet wird
Konfigurationsdatei suchen
Linux :
sudo nano /opt/observiq-otel-collector/config.yamlWindows :
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Konfigurationsdatei bearbeiten
Ersetzen Sie den gesamten Inhalt von
config.yamldurch die folgende Konfiguration:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/ac_hunter: 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: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: '<CUSTOMER_ID>' endpoint: chronicle.googleapis.com log_type: AI_HUNTER raw_log_field: body service: pipelines: logs/ac_hunter_to_chronicle: receivers: - udplog exporters: - chronicle/ac_hunter
Konfigurationsparameter
Ersetzen Sie die folgenden Platzhalter:
Empfängerkonfiguration :
udplog: Verwenden Sieudplogfür UDP-Syslog odertcplogfür TCP-Syslog. Das Protokoll muss mit dem in AC-Hunter konfigurierten Protokoll übereinstimmen.0.0.0.0:514: IP-Adresse und Port, auf die gewartet werden soll. Verwenden Sie0.0.0.0, um auf allen Schnittstellen zu warten.
Exporterkonfiguration :
<CUSTOMER_ID>: Google SecOps-Kundennummer, die im vorherigen Schritt kopiert wurde./opt/observiq-otel-collector/ingestion-auth.json: Vollständiger Pfad zur JSON-Schlüsseldatei des Dienstkontos (Option 1).- Linux:
/opt/observiq-otel-collector/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
location: Ersetzen Sie<LOCATION>durch die Region Ihrer Google SecOps-Instanz (z. B.us,europeoderasia-southeast1). Der Exporter stelltchronicle.googleapis.commit diesem Wert voran. Die vollständige Liste finden Sie unter Regionale Endpunkte.project: Ersetzen Sie<PROJECT_NUMBER>durch die Projektnummer unter IAM und Verwaltung > Einstellungen.endpoint: Lassen Sie die Einstellungchronicle.googleapis.com.
Exporter für die Legacy Ingestion API
Wenn Sie die Authentifizierungsdatei für die Aufnahme aus Option 2 verwenden, ersetzen Sie den Block
exportersdurch Folgendes. Legen Siecreds_file_pathauf den Pfad zur Authentifizierungsdatei für die Aufnahme fest. Wenn sich Ihre Instanz außerhalb der USA befindet, ersetzen Siemalachiteingestion-pa.googleapis.comdurch Ihren regionalen Endpunkt (z. B.europe-malachiteingestion-pa.googleapis.com).exporters: chronicle/ac_hunter: compression: gzip creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: '<CUSTOMER_ID>' endpoint: malachiteingestion-pa.googleapis.com log_type: AI_HUNTER raw_log_field: body
Bindplane-Agent neu starten, damit die Änderungen übernommen werden
So starten Sie den Bindplane-Agent unter Linux neu:
Führen Sie dazu diesen Befehl aus:
sudo systemctl restart observiq-otel-collectorPrüfen Sie, ob der Dienst ausgeführt wird:
sudo systemctl status observiq-otel-collectorPrüfen Sie die Logs auf Fehler:
sudo journalctl -u observiq-otel-collector -f
So starten Sie den Bindplane-Agent unter Windows neu:
Wählen Sie eine der folgenden Optionen aus:
- Eingabeaufforderung oder PowerShell als Administrator:
net stop observiq-otel-collector && net start observiq-otel-collector- Dienstkonsole:
- Drücken Sie
Win+R, geben Sieservices.mscein und drücken Sie die Eingabetaste. - Suchen Sie nach observIQ OpenTelemetry Collector.
- Rechtsklicken Sie und wählen Sie Neu starten aus.
- Drücken Sie
Prüfen Sie, ob der Dienst ausgeführt wird:
sc query observiq-otel-collectorPrüfen Sie die Logs auf Fehler:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Syslog-Weiterleitung auf Active Countermeasures AC-Hunter konfigurieren
- Melden Sie sich über SSH mit privilegiertem Zugriff auf dem AC-Hunter-Server an.
Sichern Sie die vorhandene Konfigurationsdatei:
sudo cp /etc/AI-Hunter/config.yaml /etc/AI-Hunter/config.yaml.backupÖffnen Sie die Konfigurationsdatei in einem Texteditor.
sudo nano /etc/AI-Hunter/config.yamlSuchen Sie den Abschnitt Alert und den verschachtelten Abschnitt Syslog. Geben Sie die folgenden Konfigurationsdetails an:
Alert: Syslog: Threshold: 20 Protocol: "udp" Address: "BINDPLANE_IP:514" Tag: " AC-Hunter "- Threshold: Geben Sie den Mindestwert für die Bedrohungsbewertung ein, der Benachrichtigungen auslösen soll (z. B.
20). Für Systeme mit Bewertungen über oder gleich diesem Wert werden Syslog-Benachrichtigungen generiert. - Protokoll: Wählen Sie
"udp"oder"tcp"aus, um der Empfängerkonfiguration des Bindplane-Agents zu entsprechen. Verwenden Sie""(leere String), um für die rsyslog-Weiterleitung in/dev/logdes Hosts zu schreiben. - Adresse: Geben Sie die IP-Adresse und den Port des Bindplane-Agents ein (z. B.
"10.1.2.3:514"). - Tag: Geben Sie ein optionales Tag zur Logidentifizierung ein (z. B.
" AC-Hunter "). Fügen Sie vor dem schließenden Anführungszeichen ein Leerzeichen ein, damit das Tag nicht in den Nachrichtentext übergeht.
- Threshold: Geben Sie den Mindestwert für die Bedrohungsbewertung ein, der Benachrichtigungen auslösen soll (z. B.
Speichern Sie die Konfigurationsdatei und beenden Sie den Editor.
Starten Sie AC-Hunter neu, damit die Änderungen übernommen werden:
hunt up -d --force-recreateWarten Sie bis etwa 20 Minuten nach der nächsten Stunde. AC-Hunter importiert neue stündliche Logs von Sensoren und sendet Syslog-Benachrichtigungen für Systeme, die den konfigurierten Schwellenwert während dieses Importzyklus überschreiten.
Prüfen Sie, ob Syslog-Nachrichten auf dem Bindplane-Agent-Host eingehen, indem Sie die lokale Syslog-Logdatei prüfen:
sudo tail -f /var/log/syslog
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
api_msg_label |
additional.fields |
Zusammengeführt |
prev_score |
metadata.description |
Direkt zugeordnet |
score |
metadata.description |
Direkt zugeordnet |
ts_date |
metadata.event_timestamp |
Als MMM dd HH:mm:ss geparst |
ts_iso8601 |
metadata.event_timestamp |
Als ISO8601 geparst |
has_principal |
metadata.event_type |
Zugeordnet: true → STATUS_UNCATEGORIZED |
src_ip |
principal.asset.ip |
Zusammengeführt |
src_ip |
principal.ip |
Zusammengeführt |
blacklist_avg_bytes_label |
principal.labels |
Zusammengeführt |
blacklist_in_label |
principal.labels |
Zusammengeführt |
blacklist_out_label |
principal.labels |
Zusammengeführt |
database_label |
principal.labels |
Zusammengeführt |
dns_txt_query_label |
principal.labels |
Zusammengeführt |
invalid_cert_label |
principal.labels |
Zusammengeführt |
max_beacon_label |
principal.labels |
Zusammengeführt |
max_duration_label |
principal.labels |
Zusammengeführt |
prev_score_label |
principal.labels |
Zusammengeführt |
rare_client_label |
principal.labels |
Zusammengeführt |
score_label |
principal.labels |
Zusammengeführt |
unexpected_proto_label |
principal.labels |
Zusammengeführt |
source_module_label |
principal.resource.attribute.labels |
Zusammengeführt |
domain |
target.asset.hostname |
Direkt zugeordnet |
domain |
target.hostname |
Direkt zugeordnet |
| – | metadata.event_type |
Konstante: STATUS_UNCATEGORIZED |
| – | metadata.product_name |
Konstante: AI hunter |
| – | metadata.vendor_name |
Konstante: Active Countermeasures |
Änderungsprotokoll
Änderungsprotokoll für diesen Parser ansehen
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten