Tanium Threat Response-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Tanium Threat Response-Logs mit der nativen AWS S3-Exportfunktion von Tanium Connect in Google Security Operations aufnehmen. Tanium Threat Response generiert Warnungen zur Bedrohungserkennung, Untersuchungsergebnisse und Daten zur Reaktion auf Vorfälle im JSON-Format, die mit Tanium Connect direkt in S3 exportiert werden können, ohne dass benutzerdefinierte Lambda-Funktionen erforderlich sind. Der Parser wandelt Roh-JSON-Daten aus Tanium Threat Response in ein einheitliches Datenmodell (Unified Data Model, UDM) um. Zuerst wird versucht, die eingehende Nachricht als JSON zu parsen. Dabei werden potenzielle Fehler behandelt. Anschließend werden relevante Felder extrahiert und der UDM-Struktur zugeordnet, einschließlich Details zum betroffenen Host, Nutzer, Prozess, zur Netzwerkaktivität und zu Sicherheitsergebnissen.

Hinweise

Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:

  • Eine Google SecOps-Instanz
  • Tanium Core Platform 7.0 oder höher
  • Das Modul Tanium Threat Response ist installiert und konfiguriert.
  • Das Modul Tanium Connect ist mit einer gültigen Lizenz installiert.
  • Tanium Direct Connect 1.9.30 oder höher für Untersuchungsfunktionen
  • Privilegierter Zugriff auf die Tanium Console mit Administratorberechtigungen
  • Privilegierter Zugriff auf AWS (S3, IAM)

Tanium Threat Response-Dienstkonto konfigurieren

  1. Melden Sie sich in der Tanium Console an.
  2. Rufen Sie Module > Threat Response auf.
  3. Klicken Sie rechts oben auf Einstellungen.
  4. Konfigurieren Sie im Abschnitt Dienstkonto Folgendes:
    • Dienstkontonutzer: Wählen Sie einen Nutzer mit den entsprechenden Threat Response-Berechtigungen aus.
    • Prüfen Sie, ob das Konto die Rolle „Connect-Nutzer“ hat.
    • Bestätigen Sie den Zugriff auf Threat Response-Benachrichtigungen und Untersuchungsdaten.
  5. Klicken Sie auf Speichern, um die Dienstkontokonfiguration anzuwenden.

Voraussetzungen für Tanium Threat Response

  1. Melden Sie sich als Administrator in der Tanium Console an.
  2. Klicken Sie auf Verwaltung > Berechtigungen > Nutzer.
  3. Erstellen oder identifizieren Sie einen Dienstkontonutzer mit den folgenden Rollen:
    • Threat Response Administrator oder Threat Response Read Only User.
    • Berechtigung für die Rolle Connect User.
    • Zugriff auf überwachte Computergruppen (empfohlen: Gruppe Alle Computer).
    • Berechtigung Gespeicherte Frage lesen für Threat Response-Inhaltsgruppen.

AWS S3-Bucket und IAM für Google SecOps konfigurieren

  1. Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu der Anleitung unter Bucket erstellen.
  2. Speichern Sie den Namen und die Region des Buckets zur späteren Verwendung (z. B. tanium-threat-response-logs).
  3. Erstellen Sie einen Nutzer gemäß dieser Anleitung: IAM-Nutzer erstellen.
  4. Wählen Sie den erstellten Nutzer aus.
  5. Wählen Sie den Tab Sicherheitsanmeldedaten aus.
  6. Klicken Sie im Abschnitt Zugriffsschlüssel auf Zugriffsschlüssel erstellen.
  7. Wählen Sie als Anwendungsfall Drittanbieterdienst aus.
  8. Klicken Sie auf Weiter.
  9. Optional: Fügen Sie ein Beschreibungstag hinzu.
  10. Klicken Sie auf Zugriffsschlüssel erstellen.
  11. Klicken Sie auf CSV-Datei herunterladen, um den Access Key (Zugriffsschlüssel) und den Secret Access Key (geheimer Zugriffsschlüssel) zur späteren Verwendung zu speichern.
  12. Klicken Sie auf Fertig.
  13. Wählen Sie den Tab Berechtigungen aus.
  14. Klicken Sie im Bereich Berechtigungsrichtlinien auf Berechtigungen hinzufügen.
  15. Wählen Sie Berechtigungen hinzufügen aus.
  16. Wählen Sie Richtlinien direkt anhängen aus.
  17. Suchen Sie nach der Richtlinie AmazonS3FullAccess und wählen Sie sie aus.
  18. Klicken Sie auf Weiter.
  19. Klicken Sie auf Berechtigungen hinzufügen.

Tanium Connect-AWS S3-Ziel konfigurieren

  1. Melden Sie sich in der Tanium Console an.
  2. Klicken Sie auf Module> Connect (Module > Verbinden).
  3. Klicken Sie auf Create Connection.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie einen aussagekräftigen Namen ein, z. B. Threat Response Alerts to S3 for SecOps.
    • Beschreibung: Optionale Beschreibung (z. B. Export threat detection alerts and investigation findings to AWS S3 for Google SecOps ingestion).
    • Aktivieren: Wählen Sie diese Option aus, um die Verbindung nach Zeitplan auszuführen.
  5. Klicken Sie auf Weiter.

Verbindungsquelle konfigurieren

  1. Geben Sie im Abschnitt Quelle die folgenden Konfigurationsdetails an:
    • Quelltyp: Wählen Sie Gespeicherte Frage aus.
    • Gespeicherte Frage: Wählen Sie eine der folgenden gespeicherten Fragen zu Threat Response aus:
      • Threat Response – Alerts für Warnmeldungen zur Bedrohungserkennung.
      • Threat Response – Investigation Results (Reaktion auf Bedrohungen – Untersuchungsergebnisse) für Untersuchungsergebnisse.
      • Reaktion auf Bedrohungen – Intel-Übereinstimmungen für Threat Intelligence-Übereinstimmungen.
      • Threat Response – Endpoint Activity (Reaktion auf Bedrohungen – Endpunktaktivität) für verdächtige Endpunktaktivitäten.
      • Threat Response – Netzwerkverbindungen für netzwerkbasierte Bedrohungen.
    • Computer Group (Computergruppe): Wählen Sie All Computers (Alle Computer) oder bestimmte Computergruppen aus, die überwacht werden sollen.
    • Aktualisierungsintervall: Legen Sie ein geeignetes Intervall für die Datenerhebung fest (z. B. 10 Minuten für Bedrohungsbenachrichtigungen).
  2. Klicken Sie auf Weiter.

AWS S3-Ziel konfigurieren

  1. Geben Sie im Bereich Ziel die folgenden Konfigurationsdetails an:
    • Zieltyp: Wählen Sie AWS S3 aus.
    • Zielname: Geben Sie einen eindeutigen Namen ein, z. B. Google SecOps ThreatResponse S3 Destination.
    • AWS-Zugriffsschlüssel: Geben Sie den AWS-Zugriffsschlüssel aus der CSV-Datei ein, die Sie im Schritt zur AWS S3-Konfiguration heruntergeladen haben.
    • AWS Secret Access Key (Geheimer AWS-Zugriffsschlüssel): Geben Sie den geheimen AWS-Zugriffsschlüssel aus der CSV-Datei ein, die Sie im Konfigurationsschritt für AWS S3 heruntergeladen haben.
    • Bucket-Name: Geben Sie den Namen Ihres S3-Buckets ein (z. B. tanium-threat-response-logs).
    • Region: Wählen Sie die AWS-Region aus, in der sich Ihr S3-Bucket befindet.
    • Schlüsselpräfix: Geben Sie ein Präfix für die S3-Objekte ein (z. B. tanium/threat-response/).
  2. Klicken Sie auf Weiter.

Filter konfigurieren

  1. Konfigurieren Sie im Bereich Filter die Optionen zum Filtern von Daten:
    • Nur neue Elemente senden: Wählen Sie diese Option aus, um nur neue Bedrohungsbenachrichtigungen seit dem letzten Export zu senden.
    • Spaltenfilter: Fügen Sie bei Bedarf Filter basierend auf bestimmten Benachrichtigungsattributen hinzu, z. B. nach Benachrichtigungsschweregrad, Bedrohungstyp oder Untersuchungsstatus.
  2. Klicken Sie auf Weiter.

Daten für AWS S3 formatieren

  1. Konfigurieren Sie im Bereich Format das Datenformat:
    • Format: Wählen Sie JSON aus.
    • Optionen:
      • Header einfügen: Deaktivieren Sie diese Option, um Header in der JSON-Ausgabe zu vermeiden.
      • Leere Zellen einbeziehen: Wählen Sie die Option aus, die Ihren Anforderungen entspricht.
    • Erweiterte Optionen:
      • Dateibenennung: Verwenden Sie die standardmäßige zeitstempelbasierte Benennung.
      • Komprimierung: Wählen Sie Gzip aus, um Speicherkosten und Übertragungszeit zu reduzieren.
  2. Klicken Sie auf Weiter.

Verbindung planen

  1. Konfigurieren Sie im Abschnitt Zeitplan den Exportzeitplan:
    • Zeitplan aktivieren: Wählen Sie diese Option aus, um automatische geplante Exporte zu aktivieren.
    • Planungstyp: Wählen Sie Wiederkehrend aus.
    • Häufigkeit: Wählen Sie Alle 10 Minuten aus, um zeitnah über Bedrohungen informiert zu werden.
    • Startzeit: Legen Sie eine geeignete Startzeit für den ersten Export fest.
  2. Klicken Sie auf Weiter.

Verbindung speichern und bestätigen

  1. Überprüfen Sie die Verbindungskonfiguration auf dem Übersichtsbildschirm.
  2. Klicken Sie auf Save, um die Verbindung herzustellen.
  3. Klicken Sie auf Verbindung testen, um die Konfiguration zu überprüfen.
  4. Wenn der Test erfolgreich ist, klicken Sie auf Jetzt ausführen, um einen ersten Export durchzuführen.
  5. Überwachen Sie den Verbindungsstatus auf der Seite Connect-Übersicht.

Feed in Google SecOps konfigurieren, um Tanium Threat Response-Logs aufzunehmen

  1. Rufen Sie die SIEM-Einstellungen > Feeds auf.
  2. Klicken Sie auf + Neuen Feed hinzufügen.
  3. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. Tanium Threat Response logs.
  4. Wählen Sie Amazon S3 V2 als Quelltyp aus.
  5. Wählen Sie Tanium Threat Response als Logtyp aus.
  6. Klicken Sie auf Weiter.
  7. Geben Sie Werte für die folgenden Eingabeparameter an:
    • S3-URI: s3://tanium-threat-response-logs/tanium/threat-response/
    • Optionen zum Löschen von Quellen: Wählen Sie die gewünschte Option zum Löschen aus.
    • Maximales Dateialter: Dateien einschließen, die in den letzten Tagen geändert wurden. Der Standardwert ist 180 Tage.
    • Zugriffsschlüssel-ID: Nutzerzugriffsschlüssel mit Zugriff auf den S3-Bucket.
    • Geheimer Zugriffsschlüssel: Der geheime Schlüssel des Nutzers mit Zugriff auf den S3-Bucket.
    • Asset-Namespace: Der Asset-Namespace.
    • Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet wird.
  8. Klicken Sie auf Weiter.
  9. Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Benachrichtigungs-ID security_result.rule_instance Der Wert dieses Felds wird aus dem Feld „Alert ID“ im Rohlog übernommen.
Computer-IP principal.ip Der Wert dieses Felds wird aus dem Feld „Computer IP“ im Rohlog übernommen.
Computer-IP target.ip Der Wert dieses Felds wird aus dem Feld „Computer IP“ im Rohlog übernommen.
Computername principal.hostname Der Wert dieses Felds wird aus dem Feld „Computer Name“ (Computername) im Rohlog übernommen.
Computername target.hostname Der Wert dieses Felds wird aus dem Feld „Computer Name“ (Computername) im Rohlog übernommen.
id target.resource.attribute.labels Der Wert dieses Felds wird aus dem Feld „id“ im Rohlog übernommen. Der Schlüssel ist hartcodiert als „id“.
Intel-ID security_result.rule_id Der Wert dieses Felds wird aus dem Feld „Intel Id“ im Rohlog übernommen.
Intel-Labels security_result.description Der Wert dieses Felds wird aus dem Feld „Intel Labels“ im Rohlog übernommen.
Name des Intel-Produkts security_result.summary Der Wert dieses Felds wird aus dem Feld „Intel Name“ im Rohlog übernommen.
Name des Intel-Produkts security_result.threat_name Der Wert dieses Felds wird aus dem Feld „Intel Name“ im Rohlog übernommen.
Intel-Typ security_result.rule_type Der Wert dieses Felds wird aus dem Feld „Intel Type“ im Rohlog übernommen.
MatchDetails.finding.system_info.bits principal.asset.platform_software.bits Der Wert dieses Felds wird aus dem Feld „MatchDetails.finding.system_info.bits“ im Rohlog übernommen.
MatchDetails.finding.system_info.os principal.asset.platform_software.platform_version Der Wert dieses Felds wird aus dem Feld „MatchDetails.finding.system_info.os“ im Rohlog übernommen.
MatchDetails.finding.system_info.patch_level principal.asset.platform_software.platform_patch_level Der Wert dieses Felds wird aus dem Feld „MatchDetails.finding.system_info.patch_level“ im Rohlog übernommen.
MatchDetails.finding.system_info.platform principal.asset.platform_software.platform Der Wert dieses Felds wird aus dem Feld „MatchDetails.finding.system_info.platform“ im Rohlog übernommen.
MatchDetails.match.contexts.0.event.registrySet.keyPath target.registry.registry_key Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.contexts.0.event.registrySet.keyPath“ im Rohlog übernommen.
MatchDetails.match.contexts.0.event.registrySet.valueName target.registry.registry_value_name Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.contexts.0.event.registrySet.valueName“ im Rohlog übernommen.
MatchDetails.match.properties.args security_result.about.process.command_line Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.args“ im Rohlog übernommen.
MatchDetails.match.properties.file.fullpath target.process.file.full_path Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.file.fullpath“ im Rohlog übernommen.
MatchDetails.match.properties.file.md5 target.process.file.md5 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.file.md5“ im Rohlog übernommen.
MatchDetails.match.properties.file.sha1 target.process.file.sha1 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.file.sha1“ im Rohlog übernommen.
MatchDetails.match.properties.file.sha256 target.process.file.sha256 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.file.sha256“ im Rohlog übernommen.
MatchDetails.match.properties.fullpath target.process.file.full_path Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.fullpath“ im Rohlog übernommen.
MatchDetails.match.properties.local_port principal.port Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.local_port“ im Rohlog übernommen.
MatchDetails.match.properties.md5 target.process.file.md5 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.md5“ im Rohlog übernommen.
MatchDetails.match.properties.parent.args security_result.about.process.command_line Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.args“ im Rohlog übernommen.
MatchDetails.match.properties.parent.file.fullpath target.process.parent_process.file.full_path Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.file.fullpath“ im Rohlog übernommen.
MatchDetails.match.properties.parent.file.md5 target.process.parent_process.file.md5 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.file.md5“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.file.fullpath target.process.parent_process.parent_process.file.full_path Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.file.fullpath“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.file.md5 target.process.parent_process.parent_process.file.md5 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.file.md5“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.file.fullpath target.process.parent_process.parent_process.parent_process.file.full_path Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.file.fullpath“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.file.md5 target.process.parent_process.parent_process.parent_process.file.md5 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.file.md5“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.parent.file.fullpath target.process.parent_process.parent_process.parent_process.parent_process.file.full_path Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.parent.file.fullpath“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.parent.file.md5 target.process.parent_process.parent_process.parent_process.parent_process.file.md5 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.parent.file.md5“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.parent.parent.file.fullpath target.process.parent_process.parent_process.parent_process.parent_process.parent_process.file.full_path Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.parent.parent.file.fullpath“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.parent.parent.file.md5 target.process.parent_process.parent_process.parent_process.parent_process.parent_process.file.md5 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.parent.parent.file.md5“ im Rohlog übernommen.
MatchDetails.match.properties.parent.pid target.process.parent_process.pid Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.pid“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.pid target.process.parent_process.parent_process.pid Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.pid“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.pid target.process.parent_process.parent_process.parent_process.pid Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.pid“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.parent.pid target.process.parent_process.parent_process.parent_process.parent_process.pid Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.parent.pid“ im Rohlog übernommen.
MatchDetails.match.properties.parent.parent.parent.parent.parent.pid target.process.parent_process.parent_process.parent_process.parent_process.parent_process.pid Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.parent.parent.parent.parent.parent.pid“ im Rohlog übernommen.
MatchDetails.match.properties.pid target.process.pid Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.pid“ im Rohlog übernommen.
MatchDetails.match.properties.protocol network.ip_protocol Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.protocol“ im Rohlog übernommen.
MatchDetails.match.properties.remote_ip target.ip Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.remote_ip“ im Rohlog übernommen.
MatchDetails.match.properties.remote_port target.port Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.remote_port“ im Rohlog übernommen.
MatchDetails.match.properties.sha1 target.process.file.sha1 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.sha1“ im Rohlog übernommen.
MatchDetails.match.properties.sha256 target.process.file.sha256 Der Wert dieses Felds wird aus dem Feld „MatchDetails.match.properties.sha256“ im Rohlog übernommen.
MatchDetails.match.properties.user target.administrative_domain Der Domainname wird aus dem Feld „MatchDetails.match.properties.user“ im Rohlog extrahiert, indem nach einem Backslash-Zeichen („“) gesucht wird. Die Zeichen vor dem Backslash werden als Domainname betrachtet.
MatchDetails.match.properties.user target.user.userid Der Nutzername wird aus dem Feld „MatchDetails.match.properties.user“ im Rohlog extrahiert, indem nach einem Backslash-Zeichen („“) gesucht wird. Die Zeichen nach dem Backslash gelten als Nutzername.
MITRE-Techniken security_result.threat_id Der Wert dieses Felds wird aus dem Feld „MITRE Techniques“ im Rohlog übernommen.
params security_result.detection_fields Der Wert dieses Felds wird aus dem Feld „params“ im Rohlog übernommen. Der Schlüssel ist fest codiert und besteht aus „params_“ gefolgt vom Index des Parameters.
Zeitstempel metadata.event_timestamp Der Wert dieses Felds stammt aus dem Feld „Zeitstempel“ im Rohlog.
is_alert Dieses Feld ist fest auf „true“ codiert, wenn das Feld „Computer IP“ im Rohlog nicht leer ist.
metadata.log_type Dieses Feld ist fest auf „TANIUM_THREAT_RESPONSE“ codiert.
metadata.product_event_type Dieses Feld ist fest auf „Tanium Signal“ codiert.
metadata.product_name Dieses Feld ist fest auf „Threat Response“ (Reaktion auf Bedrohungen) codiert.
metadata.vendor_name Dieses Feld ist fest auf „Tanium“ codiert.
network.http.method Dieses Feld ist fest auf „POST“ codiert, wenn der Wert des Felds „method“ im Rohlog „submit“ ist.

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