Cisco Umbrella-Web-Proxy-Logs erfassen

Parserversion:16.0

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Cisco Umbrella Web Proxy-Logs mit Amazon S3 in Google Security Operations aufnehmen. Cisco Umbrella Web Proxy bietet vollständige URL-Sichtbarkeit und ‑Kontrolle für Webtraffic und fungiert als cloudbasiertes sicheres Web-Gateway (SWG). In Web-Proxy-Protokollen werden HTTP- und HTTPS-Traffic-Details erfasst, einschließlich vollständiger URLs, Nutzeridentitäten, Inhaltstypen und Sicherheitsurteile für Anfragen, die über den intelligenten Umbrella-Proxy geleitet werden.

Hinweis

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

  • Google SecOps-Instanz.
  • Privilegierter Zugriff auf das Cisco Umbrella-Dashboard mit der Rolle „Full Admin“ oder „Read-Only Admin“.
  • Privilegierter Zugriff auf AWS (S3, IAM).
  • Cisco Umbrella Secure Internet Gateway (SIG) oder DNS Security Advantage-Lizenz mit aktiviertem intelligenten Proxy.

Cisco Umbrella-Logexport nach Amazon S3 konfigurieren

Cisco Umbrella unterstützt nativ den Export von Webproxy-Protokollen in einen von Ihnen verwalteten Amazon S3-Bucket. Wenn Sie den S3-Logexport für Umbrella-DNS-Logs bereits konfiguriert haben, können Sie denselben S3-Bucket und dieselbe IAM-Konfiguration wiederverwenden. Umbrella speichert Proxy-Logs in einem separaten Präfix.

  1. Melden Sie sich im Cisco Umbrella-Dashboard unter https://dashboard.umbrella.com an.
  2. Klicken Sie auf Verwaltung > Log Management (Log-Verwaltung).
  3. Wenn der S3-Logexport noch nicht konfiguriert ist, klicken Sie auf Von Ihrem Unternehmen verwalteten Amazon S3-Bucket verwenden.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Bucket-Name: Geben Sie den Namen des S3-Buckets ein (z. B. umbrella-logs).
    • Region: Wählen Sie die AWS-Region aus, in der sich Ihr Bucket befindet.
  5. Kopieren Sie die von Umbrella angezeigte AWS Account ID (AWS-Konto-ID) und External ID (externe ID), sofern sie noch nicht gespeichert sind.
  6. Klicken Sie auf Speichern.

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

  1. Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu dieser Anleitung: Bucket erstellen.
  2. Speichern Sie den Namen und die Region des Buckets zur späteren Verwendung (z. B. umbrella-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 Drittanbieterdienst als Anwendungsfall 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) für die zukünftige 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.
  18. Wählen Sie die Richtlinie aus.
  19. Klicken Sie auf Weiter.
  20. Klicken Sie auf Berechtigungen hinzufügen.

IAM-Richtlinie und ‑Rolle für den Cisco Umbrella S3-Zugriff konfigurieren

Für Cisco Umbrella ist eine kontoübergreifende IAM-Rolle erforderlich, um Protokolle in Ihren S3-Bucket zu schreiben.

  1. Rufen Sie in der AWS-Konsole IAM > Richtlinien > Richtlinie erstellen > Tab „JSON“ auf.
  2. Kopieren Sie die folgende Richtlinie und fügen Sie sie ein. Ersetzen Sie umbrella-logs, wenn Sie einen anderen Bucket-Namen eingegeben haben:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "AllowUmbrellaPutObjects",
          "Effect": "Allow",
          "Action": [
            "s3:PutObject",
            "s3:GetBucketLocation"
          ],
          "Resource": [
            "arn:aws:s3:::umbrella-logs",
            "arn:aws:s3:::umbrella-logs/*"
          ]
        }
      ]
    }
    
  3. Klicken Sie auf Weiter > Richtlinie erstellen. Geben Sie den Namen UmbrellaS3WritePolicy ein.

  4. Rufen Sie IAM> „Rollen“ > „Rolle erstellen“ > „Benutzerdefinierte Vertrauensrichtlinie“ auf.

  5. Fügen Sie die folgende Vertrauensrichtlinie ein und ersetzen Sie UMBRELLA_AWS_ACCOUNT_ID und UMBRELLA_EXTERNAL_ID durch die Werte, die Sie aus dem Umbrella-Dashboard kopiert haben:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::UMBRELLA_AWS_ACCOUNT_ID:root"
          },
          "Action": "sts:AssumeRole",
          "Condition": {
            "StringEquals": {
              "sts:ExternalId": "UMBRELLA_EXTERNAL_ID"
            }
          }
        }
      ]
    }
    
  6. Klicken Sie auf Weiter.

  7. Hängen Sie die UmbrellaS3WritePolicy-Richtlinie an.

  8. Geben Sie der Rolle den Namen UmbrellaS3Role und klicken Sie auf Rolle erstellen.

  9. Kopieren Sie den Rolle-ARN zur Verwendung im Umbrella-Dashboard.

Cisco Umbrella-Logexport prüfen

  1. Kehren Sie zum Cisco Umbrella-Dashboard zurück.
  2. Klicken Sie auf Verwaltung > Log Management (Log-Verwaltung).
  3. Geben Sie den Rollen-ARN der von Ihnen erstellten IAM-Rolle ein, sofern er noch nicht konfiguriert ist.
  4. Klicken Sie auf Verify (Bestätigen), um zu bestätigen, dass Umbrella in den S3-Bucket schreiben kann.
  5. Nach erfolgreicher Überprüfung beginnt Umbrella mit dem Export von Proxy-Logs in den S3-Bucket.

Feed in Google SecOps konfigurieren, um Cisco Umbrella Web Proxy-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. Cisco Umbrella Web Proxy logs.
  4. Wählen Sie Amazon S3 V2 als Quelltyp aus.
  5. Wählen Sie Cisco Umbrella Web Proxy als Log type (Protokolltyp) aus.
  6. Klicken Sie auf Weiter.
  7. Geben Sie Werte für die folgenden Eingabeparameter an:

    • S3-URI: s3://umbrella-logs/proxylogs/
    • Optionen zum Löschen der Quelle: Wählen Sie die gewünschte Option 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
ampDisposition security_result.detection_fields[].value Der Wert von ampDisposition aus dem Rohlog.
ampMalware security_result.detection_fields[].value Der Wert von ampMalware aus dem Rohlog.
ampScore security_result.detection_fields[].value Der Wert von ampScore aus dem Rohlog.
avDetections security_result.detection_fields[].value Der Wert von avDetections aus dem Rohlog.
blockedCategories security_result.threat_name Der Wert von blockedCategories aus dem Rohlog.
certificateErrors security_result.detection_fields[].value Der Wert von certificateErrors aus dem Rohlog.
contentType security_result.detection_fields[].value Der Wert von contentType aus dem Rohlog.
destinationIp target.ip Der Wert von destinationIp aus dem Rohlog.
destinationListID security_result.detection_fields[].value Der Wert von destinationListID aus dem Rohlog.
dlpstatus security_result.detection_fields[].value Der Wert von dlpstatus aus dem Rohlog.
externalIp principal.ip Der Wert von externalIp aus dem Rohlog.
fileAction security_result.detection_fields[].value Der Wert von fileAction aus dem Rohlog.
fileName target.file.names Der Wert von fileName aus dem Rohlog.
identitiesV8 principal.hostname Der Wert von identitiesV8 aus dem Rohlog.
identity principal.location.name Der Wert von identity aus dem Rohlog.
internalIp principal.ip Der Wert von internalIp aus dem Rohlog.
isolateAction security_result.detection_fields[].value Der Wert von isolateAction aus dem Rohlog.
referer network.http.referral_url Der Wert von referer aus dem Rohlog.
requestMethod network.http.method Der Wert von requestMethod aus dem Rohlog.
requestSize security_result.detection_fields[].value Der Wert von requestSize aus dem Rohlog.
responseBodySize security_result.detection_fields[].value Der Wert von responseBodySize aus dem Rohlog.
responseSize security_result.detection_fields[].value Der Wert von responseSize aus dem Rohlog.
ruleID security_result.rule_id Der Wert von ruleID aus dem Rohlog.
rulesetID security_result.detection_fields[].value Der Wert von rulesetID aus dem Rohlog.
sha security_result.about.file.sha256 Der Wert von sha aus dem Rohlog.
statusCode network.http.response_code Der Wert von statusCode aus dem Rohlog.
ts timestamp Der Wert von ts aus dem Rohlog, als Zeitstempel geparst.
url target.url Der Wert von url aus dem Rohlog.
userAgent network.http.user_agent Der Wert von userAgent aus dem Rohlog.
verdict security_result.detection_fields[].value Der Wert von verdict aus dem Rohlog.
warnstatus security_result.detection_fields[].value Der Wert von warnstatus aus dem Rohlog. Der Wert von collection_time aus dem Rohlog. Hartcodiert auf NETWORK_HTTP. Hartcodiert auf Cisco. Hartcodiert auf Umbrella. Hartcodiert auf UMBRELLA_WEBPROXY. Abgeleitet aus dem Schema des URL-Felds (http oder https). Wird aus dem Feld userAgent mit einer User-Agent-Parsing-Bibliothek geparst. Der Wert von requestSize aus dem Rohlog, in eine Ganzzahl konvertiert. Der Wert von responseSize aus dem Rohlog, in eine Ganzzahl konvertiert. Wird aus dem Feld identity abgeleitet, wenn identityType (oder identityTypeV8 mit identitiesV8) einen Nutzer angibt. Weiter analysiert, um Nutzerdetails wie Anzeigename, Vorname, Nachname und E‑Mail-Adresse zu extrahieren. Wird aus dem Feld verdict abgebildet: allowed oder allowed -> ALLOW, andere Werte -> BLOCK. Wenn categories nicht leer ist, legen Sie NETWORK_CATEGORIZED_CONTENT fest. Der Wert von categories aus dem Rohlog. Basierend auf verdict und möglicherweise anderen Feldern. Normalerweise Traffic allowed oder Traffic blocked. Wenn verdict nicht allowed oder blocked ist und statusCode vorhanden ist, ist die Zusammenfassung Traffic %{statusCode}.

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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