Microsoft Defender for Office 365-Protokolle erfassen
In diesem Dokument wird beschrieben, wie Sie Microsoft Defender for Office 365-Logs erfassen können, indem Sie einen Google Security Operations-Feed mit Microsoft Azure Blob Storage V2 einrichten.
Microsoft Defender for Office 365 ist eine E‑Mail-Sicherheitslösung, die Organisationen vor komplexen Bedrohungen wie Phishing, Business Email Compromise und Malware-Angriffen schützt. E-Mail-Ereignisdaten aus Defender für Office 365 sind über die Microsoft Defender XDR Streaming API verfügbar, mit der Advanced Hunting-Ereignisse in ein Azure Storage-Konto gestreamt werden. Google SecOps liest die gestreamten Ereignisse direkt aus dem Speicherkonto. Ein Zwischencollector ist also nicht erforderlich.
Hinweis
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz
- Privilegierter Zugriff auf das Microsoft Azure-Portal mit Berechtigungen für:
- Speicherkonten im selben Mandanten wie Microsoft Defender XDR erstellen
- Ressourcenanbieter für das Abo registrieren
- Zugriffsschlüssel verwalten
- Die Rolle Mitwirkender für das Speicherkonto (erforderlich für die Streaming API-Konfiguration)
- Zugriff auf das Microsoft Defender-Portal mit mindestens der Rolle Sicherheitsadministrator
Microsoft Defender for Office 365 in Ihrem Mandanten bereitgestellt: Die Advanced Hunting-Tabellen „Email*“ und „UrlClickEvents“ werden mit Datensätzen aus Defender for Office 365 gefüllt und bleiben ohne diese leer.
Azure Storage-Konto konfigurieren
Registrieren des Ressourcenanbieters „Microsoft.Insights“
Für die Streaming API ist der Ressourcenanbieter Microsoft.Insights für das Abonnement erforderlich, das das Speicherkonto enthält:
- Melden Sie sich im Azure-Portal an.
- Rufen Sie Abos > Ihr Abo > Ressourcenanbieter auf.
- Suchen Sie nach Microsoft.Insights.
- Klicken Sie auf Registrieren.
Speicherkonto erstellen
- Suchen Sie im Azure-Portal nach Speicherkonten.
- Klicken Sie auf + Erstellen.
Geben Sie die folgenden Konfigurationsdetails an:
Einstellung Wert Abo Wählen Sie Ihr Azure-Abo aus (derselbe Mandant wie Microsoft Defender XDR). Ressourcengruppe Vorhandenen auswählen oder neuen erstellen Name des Speicherkontos Geben Sie einen eindeutigen Namen ein, z. B. defenderemaillogs.Region Wählen Sie die Region aus, z. B. East US.Leistung Standard (empfohlen) Redundanz GRS (georedundanter Speicher) oder LRS (lokal redundanter Speicher) Klicken Sie auf Überprüfen + Erstellen.
Sehen Sie sich die Übersicht des Kontos an und klicken Sie auf Erstellen.
Warten Sie, bis die Bereitstellung abgeschlossen ist.
Vertrauenswürdige Microsoft-Dienste zulassen
- Rufen Sie das Storage-Konto auf, das Sie gerade erstellt haben.
- Wählen Sie unter Sicherheit + Netzwerk die Option Netzwerk aus.
- Achten Sie auf dem Tab Firewalls und virtuelle Netzwerke unter Ausnahmen darauf, dass Azure-Diensten auf der Liste der vertrauenswürdigen Dienste erlauben, auf dieses Speicherkonto zuzugreifen ausgewählt ist.
- Klicken Sie auf Speichern.
Anmeldedaten für das Speicherkonto abrufen
- Wählen Sie im selben Speicherkonto unter Sicherheit + Netzwerk die Option Zugriffsschlüssel aus.
- Klicken Sie auf Schlüssel anzeigen.
- Kopieren und speichern Sie Folgendes für die spätere Verwendung:
- Name des Speicherkontos: Der Name, der bei der Erstellung eingegeben wurde (z. B.
defenderemaillogs) - Taste 1 oder Taste 2: Der geteilte Zugriffsschlüssel
- Name des Speicherkontos: Der Name, der bei der Erstellung eingegeben wurde (z. B.
Ressourcen-ID des Speicherkontos abrufen
- Klicken Sie im selben Speicherkonto auf der Seite Übersicht auf JSON-Ansicht.
Kopieren und speichern Sie die Ressourcen-ID. Sie hat folgendes Format:
/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
Microsoft Defender XDR Streaming API konfigurieren
- Melden Sie sich mit einem Konto mit mindestens Sicherheitsadministrator-Berechtigungen im Microsoft Defender-Portal an.
- Rufen Sie die Einstellungen > Microsoft Defender XDR > Streaming API auf.
- Klicken Sie auf Hinzufügen.
- Geben Sie im Flyout Neue Streaming API-Einstellungen hinzufügen die folgenden Konfigurationsdetails an:
- Name: Geben Sie einen Namen für die Einstellungen ein, z. B.
secops-email-events. - Wählen Sie Ereignisse an Azure Storage weiterleiten aus.
- Speicherkonto-Ressourcen-ID: Fügen Sie die zuvor gespeicherte Ressourcen-ID ein.
- Name: Geben Sie einen Namen für die Einstellungen ein, z. B.
- Wählen Sie die folgenden Ereignistypen aus:
- EmailEvents
- EmailAttachmentInfo
- EmailUrlInfo
- EmailPostDeliveryEvents
- UrlClickEvents
- Klicken Sie auf Senden.
Nachdem das Streaming gestartet wurde, wird für jeden ausgewählten Ereignistyp (von Microsoft dokumentiert) ein Blob-Container im Speicherkonto erstellt. Die Containernamen folgen dem Muster insights-logs-advancedhunting-<event type> (z. B. insights-logs-advancedhunting-emailevents). In der Dokumentation von Microsoft finden Sie das Muster für andere Tabellen. Verwenden Sie also immer die genauen Namen aus Ihrem Speicherkonto. Jede Blob-Zeile enthält das Ereignis als JSON mit time, tenantId, category (der Tabellenname mit dem Präfix AdvancedHunting-) und den Ereignisfeldern in einem properties-Objekt.
Feeds in Google SecOps konfigurieren, um Microsoft Defender for Office 365-Protokolle aufzunehmen
Erstellen Sie einen Feed pro Container für Ereignistypen:
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf Neuen Feed hinzufügen.
- Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B.
Defender for Office 365 - EmailEvents. - Wählen Sie Microsoft Azure Blob Storage V2 als Quelltyp aus.
- Wählen Sie Microsoft Defender for Office 365 als Log type (Protokolltyp) aus.
- Klicken Sie auf Weiter.
Geben Sie Werte für die folgenden Eingabeparameter an:
- Azure-URI: Geben Sie die Blob Service-Endpunkt-URL mit dem Containerpfad ein:
https://<STORAGE_ACCOUNT_NAME>.blob.core.windows.net/insights-logs-advancedhunting-emailevents/Ersetzen Sie Folgendes:
<STORAGE_ACCOUNT_NAME>: Der Name Ihres Azure Storage-Kontos.Das Containersegment: der genaue Containername, der aus dem Speicherkonto kopiert wurde.
Option zum Löschen der Quelle: Wählen Sie die gewünschte Option zum Löschen aus:
- Dateien nie löschen: Dateien werden nie aus der Quelle gelöscht.
- Übertragene Dateien und leere Verzeichnisse löschen: Dateien und leere Verzeichnisse werden nach einem erfolgreichen Abruf aus der Quelle gelöscht.
Höchstalter der Datei: Dateien einbeziehen, die in den letzten Tagen geändert wurden (Standardwert: 180 Tage)
Wählen Sie im Drop-down-Menü für die Authentifizierung (standardmäßig Zugriffs-/freigegebener Schlüssel) die gewünschte Methode aus und geben Sie die entsprechenden Anmeldedaten an:
- Zugriffs-/gemeinsamer Schlüssel: Fügen Sie im Feld Schlüssel einen zuvor erfassten Zugriffsschlüssel für das Speicherkonto (Schlüssel 1 oder Schlüssel 2) ein.
- SAS-Token: Fügen Sie im Feld Token ein für den Container ausgestelltes SAS-Token (Shared Access Signature) ein.
- Azure V2-Identitätsföderation von Arbeitslasten: Geben Sie die Client-ID und die Mandanten-ID der Microsoft Entra-Anwendung ein. Kopieren Sie die schreibgeschützte Subject ID, die im Feed angezeigt wird, und gewähren Sie der entsprechenden Identität Zugriff auf das Speicherkonto auf Azure-Seite.
Asset-Namespace: Der Asset-Namespace
Labels für Datenaufnahme: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll
Klicken Sie auf Weiter.
Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.
Wiederholen Sie die Schritte für jeden verbleibenden Container (
insights-logs-advancedhunting-emailattachmentinfo,insights-logs-advancedhunting-emailurlinfo,insights-logs-advancedhunting-emailpostdeliveryevents,insights-logs-advancedhunting-urlclickevents) und verwenden Sie dabei denselben Logtyp und einen eindeutigen Feednamen.
Azure Storage-Firewall konfigurieren (falls aktiviert)
Wenn für Ihr Azure Storage-Konto eine Firewall verwendet wird, müssen Sie die IP-Bereiche von Google SecOps hinzufügen.
- Rufen Sie im Azure-Portal Ihr Storage-Konto auf.
- Wählen Sie unter Sicherheit + Netzwerk die Option Netzwerk aus.
- Wählen Sie unter Firewalls und virtuelle Netzwerke die Option Aktiviert für ausgewählte virtuelle Netzwerke und IP-Adressen aus.
- Klicken Sie im Bereich Firewall unter Adressbereich auf + IP-Bereich hinzufügen.
- Fügen Sie jeden Google SecOps-IP-Bereich in CIDR-Notation hinzu.
So rufen Sie die aktuellen IP-Bereiche ab:
- Dokumentation zum Zulassen von IP-Adressen
- Oder Sie rufen sie programmatisch mit der Feed Management API ab.
Klicken Sie auf Speichern.
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
CompAuth_label |
additional.fields |
Zusammengeführt |
DKIM_label |
additional.fields |
Zusammengeführt |
DMARC_label |
additional.fields |
Zusammengeführt |
SPF_label |
additional.fields |
Zusammengeführt |
additional_email_cluster_id |
additional.fields |
Zusammengeführt |
additional_fields_label |
additional.fields |
Zusammengeführt |
additional_replyto |
additional.fields |
Zusammengeführt |
attachment_cnt_label |
additional.fields |
Zusammengeführt |
attachment_count_label |
additional.fields |
Zusammengeführt |
bulk_complaint_level_label |
additional.fields |
Zusammengeführt |
clicked_label |
additional.fields |
Zusammengeführt |
confidence_level_label |
additional.fields |
Zusammengeführt |
connectors_label |
additional.fields |
Zusammengeführt |
delivery_action_label |
additional.fields |
Zusammengeführt |
delivery_location_label |
additional.fields |
Zusammengeführt |
detection_methods_label |
additional.fields |
Zusammengeführt |
email_action_label |
additional.fields |
Zusammengeführt |
email_action_policy_guid_label |
additional.fields |
Zusammengeführt |
email_action_policy_label |
additional.fields |
Zusammengeführt |
email_cluster_id_label |
additional.fields |
Zusammengeführt |
email_direction_label |
additional.fields |
Zusammengeführt |
email_language_label |
additional.fields |
Zusammengeführt |
exchange_transport_rule_label |
additional.fields |
Zusammengeführt |
is_first_contact_label |
additional.fields |
Zusammengeführt |
org_level_action_label |
additional.fields |
Zusammengeführt |
org_level_policy_label |
additional.fields |
Zusammengeführt |
phishData_label |
additional.fields |
Zusammengeführt |
sender_from_address_label |
additional.fields |
Zusammengeführt |
sender_mail_label |
additional.fields |
Zusammengeführt |
spamData_label |
additional.fields |
Zusammengeführt |
threat_names_label |
additional.fields |
Zusammengeführt |
threat_types_label |
additional.fields |
Zusammengeführt |
url_chain_list |
additional.fields |
Zusammengeführt |
url_count_label |
additional.fields |
Zusammengeführt |
url_loc_label |
additional.fields |
Zusammengeführt |
url_location_label |
additional.fields |
Zusammengeführt |
urlcount_label |
additional.fields |
Zusammengeführt |
user_level_action_label |
additional.fields |
Zusammengeführt |
user_level_policy_label |
additional.fields |
Zusammengeführt |
workload_label |
additional.fields |
Zusammengeführt |
_time |
metadata.event_timestamp |
Als RFC3339 geparst |
time |
metadata.event_timestamp |
Als yyyy-MM-ddTHH:mm:ss.SSSSSSSZ geparst |
event_type |
metadata.event_type |
Direkt zugeordnet |
_raw.category |
metadata.product_event_type |
Direkt zugeordnet |
operationName |
metadata.product_event_type |
Direkt zugeordnet |
_raw.properties.ReportId |
metadata.product_log_id |
Direkt zugeordnet |
_raw.properties.SenderFromAddress |
network.email.from |
Direkt zugeordnet |
_raw.properties.InternetMessageId |
network.email.mail_id |
Direkt zugeordnet |
_raw.properties.Subject |
network.email.subject |
Zusammengeführt |
properties.Subject |
network.email.subject |
Zusammengeführt |
_raw.properties.RecipientEmailAddress |
network.email.to |
Zusammengeführt |
email |
network.email.to |
Zugeordnet: ^.+@.+$ → email |
properties.EmailSize |
network.received_bytes |
Umbenannt/zugeordnet |
_raw.properties.NetworkMessageId |
network.session_id |
Direkt zugeordnet |
_raw.properties.SenderFromDomain |
principal.administrative_domain |
Direkt zugeordnet |
_raw.properties.SenderMailFromDomain |
principal.administrative_domain |
Direkt zugeordnet |
properties.SenderMailFromDomain |
principal.administrative_domain |
Direkt zugeordnet |
_raw.properties.UrlDomain |
principal.asset.hostname |
Direkt zugeordnet |
properties.SenderFromDomain |
principal.asset.hostname |
Direkt zugeordnet |
properties.UrlDomain |
principal.asset.hostname |
Direkt zugeordnet |
_raw.properties.SenderIPv4 |
principal.asset.ip |
Zusammengeführt |
_raw.properties.SenderIPv6 |
principal.asset.ip |
Zusammengeführt |
sender_ip |
principal.asset.ip |
Zusammengeführt |
_raw.properties.SenderMailFromAddress |
principal.email |
Direkt zugeordnet |
target.SHA256 |
principal.file.sha256 |
Direkt zugeordnet |
_raw.properties.UrlDomain |
principal.hostname |
Direkt zugeordnet |
properties.SenderFromDomain |
principal.hostname |
Direkt zugeordnet |
properties.UrlDomain |
principal.hostname |
Direkt zugeordnet |
_raw.properties.SenderIPv4 |
principal.ip |
Zusammengeführt |
_raw.properties.SenderIPv6 |
principal.ip |
Zusammengeführt |
sender_ip |
principal.ip |
Zusammengeführt |
_raw.properties.Url |
principal.url |
Direkt zugeordnet |
properties.Url |
principal.url |
Direkt zugeordnet |
_raw.properties.SenderObjectId |
principal.user.product_object_id |
Direkt zugeordnet |
tenantId |
principal.user.product_object_id |
Direkt zugeordnet |
_raw.properties.SenderDisplayName |
principal.user.user_display_name |
Direkt zugeordnet |
properties.SenderDisplayName |
principal.user.user_display_name |
Direkt zugeordnet |
action |
security_result.action |
Zusammengeführt |
properties.Action |
security_result.action_details |
Direkt zugeordnet |
security_result_category |
security_result.category |
Zusammengeführt |
category |
security_result.category_details |
Zusammengeführt |
Phish_level |
security_result.confidence |
Zugeordnet: high → HIGH_CONFIDENCE, medium → MEDIUM_CONFIDENCE, low → LOW_CONFIDENCE |
properties.ActionResult |
security_result.description |
Direkt zugeordnet |
action_type_label |
security_result.detection_fields |
Zusammengeführt |
cribl_pipe_label |
security_result.detection_fields |
Zusammengeführt |
email_action_label |
security_result.detection_fields |
Zusammengeführt |
email_action_policy_label |
security_result.detection_fields |
Zusammengeführt |
email_language_label |
security_result.detection_fields |
Zusammengeführt |
emailactpol_guid_label |
security_result.detection_fields |
Zusammengeführt |
internet_message_id_label |
security_result.detection_fields |
Zusammengeführt |
network_message_id_label |
security_result.detection_fields |
Zusammengeführt |
operation_name_label |
security_result.detection_fields |
Zusammengeführt |
phish_level_label |
security_result.detection_fields |
Zusammengeführt |
recipient_id_label |
security_result.detection_fields |
Zusammengeführt |
report_id_label |
security_result.detection_fields |
Zusammengeführt |
sender_id_label |
security_result.detection_fields |
Zusammengeführt |
tenant_label |
security_result.detection_fields |
Zusammengeführt |
transport_rule_guid_label |
security_result.detection_fields |
Zusammengeführt |
trigger_label |
security_result.detection_fields |
Zusammengeführt |
properties.DeliveryLocation |
security_result.summary |
Direkt zugeordnet |
properties.ThreatNames |
security_result.threat_name |
Direkt zugeordnet |
properties.AccountUpn |
target.email |
Direkt zugeordnet |
_raw.properties.FileName |
target.file.full_path |
Direkt zugeordnet |
_raw.properties.FileType |
target.file.mime_type |
Direkt zugeordnet |
properties.FileType |
target.file.mime_type |
Direkt zugeordnet |
properties.FileName |
target.file.names |
Zusammengeführt |
_raw.properties.FileSize |
target.file.size |
Umbenannt/zugeordnet |
properties.FileSize |
target.file.size |
Umbenannt/zugeordnet |
properties.RecipientDomain |
target.hostname |
Direkt zugeordnet |
_raw.tenantId |
target.resource.id |
Direkt zugeordnet |
_raw.properties.RecipientObjectId |
target.user.product_object_id |
Direkt zugeordnet |
| – | metadata.event_type |
Konstante: GENERIC_EVENT |
| – | metadata.product_name |
Konstante: MICROSOFT_DEFENDER_MAIL |
| – | metadata.vendor_name |
Konstante: MICROSOFT_DEFENDER_MAIL |
| – | network.direction |
Konstante: INBOUND |
| – | security_result.confidence |
Konstante: HIGH_CONFIDENCE |
Änderungsprotokoll
Änderungsprotokoll für diesen Parser ansehen
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten