Cisco Umbrella Web Proxy-Logs erfassen
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 (Secure Web Gateway, SWG). Web Proxy-Logs erfassen HTTP- und HTTPS-Trafficdetails, einschließlich vollständiger URLs, Nutzeridentitäten, Inhaltstypen und Sicherheitsurteile für Anfragen, die über den intelligenten Proxy von Umbrella weitergeleitet 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 Web Proxy-Logs in einen von Ihnen verwalteten Amazon S3-Bucket. Wenn Sie den S3-Logexport bereits für Umbrella DNS-Logs konfiguriert haben, können Sie denselben S3-Bucket und dieselbe IAM-Konfiguration wiederverwenden. Umbrella speichert Proxy-Logs mit einem separaten Präfix.
- Melden Sie sich unter
https://dashboard.umbrella.comim Cisco Umbrella -Dashboard an. - Rufen Sie Admin > Log Management auf.
- Wenn der S3-Logexport noch nicht konfiguriert ist, klicken Sie auf Use your company-managed Amazon S3 bucket.
- 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.
- Bucket Name: Geben Sie den Namen des S3-Buckets ein, z. B.
- Kopieren Sie die von Umbrella angezeigte AWS Account ID (AWS-Konto-ID) und External ID (Externe ID), falls sie noch nicht gespeichert sind.
- Klicken Sie auf Speichern.
AWS S3-Bucket und IAM für Google SecOps konfigurieren
- Erstellen Sie einen Amazon S3-Bucket gemäß dieser Anleitung: Bucket erstellen
- Speichern Sie den Namen und die Region des Buckets zur späteren Verwendung, z. B.
umbrella-logs. - Erstellen Sie einen Nutzer gemäß dieser Anleitung: IAM-Nutzer erstellen.
- Wählen Sie den erstellten Nutzer aus.
- Wählen Sie den Tab Security credentials (Sicherheitsanmeldedaten) aus.
- Klicken Sie im Abschnitt Access Keys (Zugriffsschlüssel) auf Create Access Key (Zugriffsschlüssel erstellen).
- Wählen Sie als Use case (Anwendungsfall) die Option Third-party service (Drittanbieterdienst) aus.
- Klicken Sie auf Weiter.
- Optional: Fügen Sie ein Beschreibungstag hinzu.
- Klicken Sie auf Create access key (Zugriffsschlüssel erstellen).
- Klicken Sie auf Download CSV file (CSV-Datei herunterladen), um den Zugriffsschlüssel und den geheimen Zugriffsschlüssel zur späteren Verwendung zu speichern.
- Klicken Sie auf Fertig.
- Wählen Sie den Tab Permissions (Berechtigungen) aus.
- Klicken Sie im Abschnitt Permissions policies (Berechtigungsrichtlinien) auf Add permissions (Berechtigungen hinzufügen).
- Wählen Sie Add permissions (Berechtigungen hinzufügen) aus.
- Wählen Sie Attach policies directly (Richtlinien direkt anhängen) aus.
- Suchen Sie nach der Richtlinie AmazonS3FullAccess.
- Wählen Sie die Richtlinie aus.
- Klicken Sie auf Weiter.
- Klicken Sie auf Berechtigungen hinzufügen.
IAM-Richtlinie und ‑Rolle für den Cisco Umbrella S3-Zugriff konfigurieren
Cisco Umbrella benötigt eine kontoübergreifende IAM-Rolle, um Logs in Ihren S3-Bucket zu schreiben.
- Rufen Sie in der AWS Console IAM > Policies > Create policy > JSON tab (IAM > Richtlinien > Richtlinie erstellen > Tab „JSON“) auf.
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/*" ] } ] }Klicken Sie auf Next > Create policy (Weiter > Richtlinie erstellen). Geben Sie ihr den Namen
UmbrellaS3WritePolicy.Rufen Sie IAM > Roles > Create role > Custom trust policy (IAM > Rollen > Rolle erstellen > Benutzerdefinierte Vertrauensrichtlinie) auf.
Fügen Sie die folgende Vertrauensrichtlinie ein und ersetzen Sie
UMBRELLA_AWS_ACCOUNT_IDundUMBRELLA_EXTERNAL_IDdurch 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" } } } ] }Klicken Sie auf Weiter.
Hängen Sie die Richtlinie
UmbrellaS3WritePolicyan.Geben Sie der Rolle den Namen
UmbrellaS3Roleund klicken Sie auf Create role (Rolle erstellen).Kopieren Sie den Rolle-ARN zur Verwendung im Umbrella-Dashboard.
Cisco Umbrella-Logexport prüfen
- Kehren Sie zum Cisco Umbrella -Dashboard zurück.
- Rufen Sie Admin > Log Management auf.
- Geben Sie den Rolle-ARN aus der erstellten IAM-Rolle ein, falls er noch nicht konfiguriert ist.
- Klicken Sie auf Verify (Prüfen), um zu bestätigen, dass Umbrella in den S3-Bucket schreiben kann.
- Nach erfolgreicher Prü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
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf + Neuen Feed hinzufügen.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B.
Cisco Umbrella Web Proxy logs. - Wählen Sie als Quelltyp die Option Amazon S3 V2 aus.
- Wählen Sie als Logtyp die Option Cisco Umbrella Web Proxy aus.
- Klicken Sie auf Weiter.
Geben Sie Werte für die folgenden Eingabeparameter an:
- S3-URI:
s3://umbrella-logs/proxylogs/ - Optionen für das Löschen der Quelle: Wählen Sie die gewünschte Löschoption aus.
- Maximale Dateialter: Schließen Sie Dateien ein, die in den letzten Tagen geändert wurden. Der Standardwert ist 180 Tage.
- Zugriffsschlüssel-ID: Der 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.
- S3-URI:
Klicken Sie auf Weiter.
Prüfen Sie die Konfiguration des neuen Feeds auf dem Bildschirm Finalize (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, in einen 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. Fest codiert auf NETWORK_HTTP. Fest codiert auf Cisco. Fest codiert auf Umbrella. Fest codiert auf UMBRELLA_WEBPROXY. Abgeleitet aus dem Schema des URL-Felds (http oder https). Aus dem Feld userAgent mit einer Bibliothek zum Parsen von User-Agents geparst. Der Wert von requestSize aus dem Rohlog, in eine Ganzzahl umgewandelt. Der Wert von responseSize aus dem Rohlog, in eine Ganzzahl umgewandelt. Abgeleitet aus dem Feld identity, wenn identityType (oder identityTypeV8 mit identitiesV8) einen Nutzer angibt. Weiter geparst, um Nutzerdetails wie Anzeigename, Vorname, Nachname und E-Mail-Adresse zu extrahieren. Aus dem Feld verdict zugeordnet: allowed oder allowed -> ALLOW, andere Werte -> BLOCK. Wenn categories nicht leer ist, auf NETWORK_CATEGORIZED_CONTENT festgelegt. 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, lautet die Zusammenfassung Traffic %{statusCode}. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten