Erstellen von benutzerdefinierten Microsoft Defender XDR Berichten mithilfe der Microsoft Graph-Sicherheits-API und Power BI

Wenn Sicherheitsexperten ihre Daten visualisieren können, können sie schnell komplexe Muster, Anomalien und Trends erkennen, die sonst unter dem Rauschen lauern könnten. Mithilfe von Visualisierungen können SOC-Teams Bedrohungen schnell identifizieren, fundierte Entscheidungen treffen und Erkenntnisse effektiv organization kommunizieren.

Es gibt mehrere Möglichkeiten, Microsoft Defender Sicherheitsdaten zu visualisieren:

  • Navigieren in integrierten Berichten im Microsoft Defender-Portal.
  • Verwenden von Microsoft Sentinel Arbeitsmappen mit vordefinierten Vorlagen für jedes Defender-Produkt (integration in Microsoft Sentinel erforderlich).
  • Anwenden der render-Funktion in der erweiterten Bedrohungssuche.
  • Verwenden von Power BI zum Erweitern vorhandener Berichterstellungsfunktionen.

In diesem Artikel erstellen wir mithilfe der Microsoft Graph-Sicherheits-API ein Beispiel für die Effizienz von Security Operations Center (SOC) Dashboard in Power BI. Wir greifen im Benutzerkontext auf die Microsoft Graph Security API zu, daher muss der Benutzer die erforderlichen RBAC-Berechtigungen haben, um Warnungen und Vorfalldaten einsehen zu können.

Hinweis

Das folgende Beispiel basiert auf unserer neuen MS Graph-Sicherheits-API. Weitere Informationen finden Sie unter Verwenden der Microsoft Graph-Sicherheits-API.

Importieren von Daten in Power BI

Die folgenden Schritte zeigen, wie Sie Microsoft Defender Warnungsdaten in Power BI abrufen.

  1. Öffnen Sie Microsoft Power BI Desktop.

  2. Wählen Sie Daten abrufen >Leere Abfrage aus.

  3. Wählen Sie Erweiterter Editor aus.

    Screenshot: Erstellen einer neuen Datenabfrage in Power BI Desktop

  4. In Abfrage einfügen:

    let
        Source = OData.Feed("https://graph.microsoft.com/v1.0/security/alerts_v2", null, [Implementation="2.0"])
    in
        Source
    
  5. Wählen Sie Fertig aus.

  6. Wenn Sie zur Eingabe von Anmeldeinformationen aufgefordert werden, wählen Sie Anmeldeinformationen bearbeiten aus:

    Screenshot: Bearbeiten von Anmeldeinformationen für die API-Verbindung

  7. Wählen Sie Organisationskonto > Anmelden aus.

    Screenshot des Fensters für die Authentifizierung des Organisationskontos.

  8. Geben Sie Anmeldeinformationen für ein Konto mit Zugriff auf Microsoft Defender XDR-Vorfalldaten ein.

  9. Wählen Sie Verbinden aus.

Jetzt werden die Ergebnisse Ihrer Abfrage als Tabelle angezeigt, und Sie können damit beginnen, Visualisierungen darauf zu erstellen.

Tipp

Wenn Sie andere Formen von Microsoft Graph-Sicherheitsdaten wie Incidents, Advanced Hunting, Secure Score usw. visualisieren möchten, finden Sie weitere Informationen unter Übersicht über die Microsoft Graph-Sicherheits-API.

Filtern von Microsoft Defender XDR-Berichtsdaten in Power BI

Die Microsoft Graph-API unterstützt das Open Data Protocol (OData) Abfrageprotokoll für Filterung und Paginierung, sodass Nutzer sich keine Sorgen um Paginierung machen müssen – oder um die nächste Ergebnisseite anzufordern. Das Filtern von Daten ist jedoch wichtig, um die Ladezeiten in einer stark ausgelasteten Umgebung zu verbessern.

Microsoft Graph-API unterstützt Abfrageparameter. Im Folgenden finden Sie einige Beispiele für Filter, die im Bericht verwendet werden:

  • Die folgende Abfrage berechnet ein relatives Rückblickdatum und ruft aktuelle Benachrichtigungen aus Microsoft Graph für die letzten drei Tage ab. Die Verwendung dieser Abfrage in Umgebungen mit großen Datenmengen kann zu Hunderten von Megabytes an Daten führen, deren Ladevorgang einen Moment in Anspruch nehmen kann. Mit diesem hartcodierten Ansatz können Sie ihre letzten Warnungen in den letzten drei Tagen schnell anzeigen, sobald Sie den Bericht öffnen.

    let
        AlertDays = "3",
        TIME = "" & Date.ToText(Date.AddDays(Date.From(DateTime.LocalNow()), -AlertDays), "yyyy-MM-dd") & "",
        Source = OData.Feed("https://graph.microsoft.com/v1.0/security/alerts_v2?$filter=createdDateTime ge " & TIME & "", null, [Implementation="2.0"])
    in
        Source
    
  • Anstatt Daten über einen Datumsbereich hinweg zu sammeln, können Warnungen für genauere Daten erfasst werden, indem ein Datum im Format JJJJ-MM-TT eingegeben wird.

    let
        StartDate = "YYYY-MM-DD",
        EndDate = "YYYY-MM-DD",
        Source = OData.Feed("https://graph.microsoft.com/v1.0/security/ alerts_v2?$filter=createdDateTime ge " & StartDate & " and createdDateTime lt " & EndDate & "", null, [Implementation="2.0"])
    in
        Source
    
  • Wenn Verlaufsdaten erforderlich sind (z. B. der Vergleich der Anzahl von Vorfällen pro Monat), ist das Filtern nach Datum keine Option (da wir so weit wie möglich zurückgehen möchten). In diesem Fall verwendet die folgende Abfrage Datumsparameter, um Warnungen aus Microsoft Graph abzurufen und wählt nur Schlüsselfelder wie id, Titel, Schweregrad und createdDateTime aus, um das Datenvolumen zu reduzieren:

    let
        Source = OData.Feed("https://graph.microsoft.com/v1.0/security/alerts_v2?$filter=createdDateTime ge " & StartLookbackDate & " and createdDateTime lt " & EndLookbackDate &
    "&$select=id,title,severity,createdDateTime", null, [Implementation="2.0"])
    in
        Source
    

Erstellen von Berichtsparametern in Power BI

Anstatt den Code ständig abzufragen, um den Zeitrahmen anzupassen, verwenden Sie Parameter, um bei jedem Öffnen des Berichts ein Start- und Enddatum festzulegen.

  1. Wechseln Sie zu Abfrage-Editor.

  2. Wählen Sie Parameter verwalten>Neuer Parameter aus.

  3. Legen Sie die gewünschten Parameter fest.

    Im folgenden Beispiel verwenden wir zwei verschiedene Zeitrahmen: Start- und Enddatum.

    Screenshot: Verwalten von Parametern in Power BI

  4. Entferne fest kodierte Werte aus den Abfragen und stelle sicher, dass StartDate- und EndDate-Variablennamen mit Parameternamen übereinstimmen. Die folgende parametrisierte Abfrage ruft Vorfälle ab, die innerhalb des von den StartDate- und EndDate-Parametern definierten Datumsbereichs erzeugt werden:

    let
        Source = OData.Feed("https://graph.microsoft.com/v1.0/security/incidents?$filter=createdDateTime ge " & StartDate & " and createdDateTime lt " & EndDate & "", null, [Implementation="2.0"])
    in
        Source
    

Überprüfen Sie den benutzerdefinierten Microsoft Defender XDR-Bericht

Sobald die Microsoft Defender-Alarm- und Vorfalldaten abgefragt und die Parameter festgelegt sind, können Sie den Bericht prüfen. Beim ersten Start der Power BI-Vorlagendatei (PBIT) werden Sie aufgefordert, die Parameter "StartDate" und "EndDate" bereitzustellen:

Screenshot des Eingabeaufforderungsfensters für power BI-Vorlagenparameter.

Das Dashboard bietet drei Registerkarten, die Einblicke in das SOC bieten sollen. Die erste Registerkarte enthält eine Zusammenfassung aller aktuellen Warnungen (abhängig vom ausgewählten Zeitrahmen). Der erste Tab hilft Analysten, den Sicherheitszustand in ihrer Umgebung klar zu verstehen, indem Alarmdetails nach Erkennungsquelle, Schwere der Alarme, Gesamtanzahl der Warnungen und mittlerer Bearbeitungszeit aufgeschlüsselt sind.

Screenshot der Registerkarte

Die zweite Registerkarte bietet mehr Einblick in die Angriffsdaten, die für die Vorfälle und Warnungen gesammelt wurden. Der zweite Tab kann Analysten einen besseren Überblick über die durchgeführten Arten von Angriffen geben und wie sie mit dem MITRE ATT&CK-Framework zugeordnet sind, einer Wissensdatenbank, die Taktiken und Techniken der Gegner kategorisiert.

Screenshot der Registerkarte

Beispiele für Power BI-Dashboard

Weitere Informationen finden Sie in der Beispieldatei für Power BI-Berichtsvorlagen.