Opprett egendefinerte Microsoft Defender XDR-rapporter ved hjelp av Microsoft Graph Security API og Power BI
Gjelder for:
Ved å gi sikkerhetsteknikere mulighet til å visualisere dataene sine, kan de raskt gjenkjenne komplekse mønstre, avvik og trender som ellers lurer under støyen. Med visualiseringer kan SOC-team raskt identifisere trusler, ta informerte beslutninger og kommunisere innsikt effektivt på tvers av organisasjonen.
Det finnes flere måter å visualisere Microsoft Defender sikkerhetsdata på:
- Navigering i innebygde rapporter i Microsoft Defender-portalen.
- Bruk av Microsoft Sentinel-arbeidsbøker med forhåndsbygde maler for hvert Defender-produkt (krever integrering med Microsoft Sentinel).
- Bruke gjengivelsesfunksjonen i Avansert jakt.
- Bruk Power BI til å utvide eksisterende rapporteringsfunksjoner.
I denne artikkelen oppretter vi et eksempel på et instrumentbord for effektivitet i Security Operations Center (SOC) i Power BI ved hjelp av Microsoft Graph Security API. Vi får tilgang til den i brukerkontekst, og derfor må brukeren ha tilsvarende tillatelser for å kunne vise varsler og hendelsesdata.
Obs!
Eksemplet nedenfor er basert på vår nye SIKKERHETS-API for MS Graph. Finn ut mer på: Bruk Microsoft Graph-sikkerhets-API-en.
Importere data til Power BI
I denne delen går vi gjennom trinnene som kreves for å få Microsoft Defender XDR data inn i Power BI, ved hjelp av Varsler-data som et eksempel.
Åpne Microsoft Power BI Desktop.
Velg Hent tom dataspørring>.
Velg avansert redigering.
Lim inn i spørring:
let Source = OData.Feed("https://graph.microsoft.com/v1.0/security/alerts_v2", null, [Implementation="2.0"]) in Source
Velg Ferdig.
Når du blir bedt om legitimasjon, velger du Rediger legitimasjon:
Velg Pålogging for organisasjonskonto>.
Angi legitimasjon for kontoen med tilgang til Microsoft Defender XDR hendelsesdata.
Velg Koble til.
Nå vises resultatene av spørringen som en tabell, og du kan begynne å bygge visualiseringer oppå den.
Tips
Hvis du ønsker å visualisere andre former for Microsoft Graph-sikkerhetsdata, for eksempel hendelser, avansert jakt, sikker poengsum osv., kan du se Oversikt over Microsoft Graph Security API.
Filtrere data
Microsoft Graph API støtter OData-protokollen, slik at brukere ikke trenger å bekymre seg for paginering – eller be om neste sett med data. Filtrering av data er imidlertid avgjørende for å forbedre innlastingstidene i et travelt miljø.
Microsoft Graph API støtter spørringsparametere. Her er noen eksempler på filtre som brukes i rapporten:
Følgende spørring returnerer listen over varsler som er generert i løpet av de siste tre dagene. Bruk av denne spørringen i miljøer med store mengder data kan føre til hundrevis av megabyte med data som kan ta litt tid å laste inn. Ved å bruke denne hardkodede tilnærmingen kan du raskt se de siste varslene dine de siste tre dagene så snart du åpner rapporten.
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
I stedet for å samle inn data på tvers av et datoområde, kan vi samle varsler på tvers av mer presise datoer ved å skrive inn en dato ved hjelp av YYYY-MM-DD-formatet.
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
Når historiske data er nødvendig (for eksempel sammenligne antall hendelser per måned), er filtrering etter dato ikke et alternativ (siden vi ønsker å gå så langt tilbake som mulig). I dette tilfellet må vi hente noen valgte felt som vist i eksemplet nedenfor:
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
Innføring i parametere
I stedet for å spørre koden hele tiden for å justere tidsrammen, kan du bruke parametere til å angi en start- og sluttdato hver gang du åpner rapporten.
Gå til Power Query-redigering.
Velg Behandle parametere>ny parameter.
Angi ønskede parametere.
I eksemplet nedenfor bruker vi to forskjellige tidsrammer, start- og sluttdatoer.
Fjern hardkodede verdier fra spørringene, og kontroller at variabelnavnene StartDate og EndDate tilsvarer parameternavn:
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
Se gjennom rapporten
Når dataene er forespurt og parameterne er angitt, kan vi nå se gjennom rapporten. Under den første oppstarten av PBIT-rapportfilen blir du bedt om å angi parameterne som vi angav tidligere:
Instrumentbordet tilbyr tre faner som er ment å gi SOC-innsikt. Den første fanen inneholder et sammendrag av alle nylige varsler (avhengig av den valgte tidsrammen). Denne fanen hjelper analytikere med å forstå sikkerhetstilstanden i miljøet ved hjelp av varseldetaljer inndelt etter gjenkjenningskilde, alvorlighetsgrad, totalt antall varsler og middeltid til løsning.
Den andre fanen gir mer innsikt i angrepsdataene som samles inn på tvers av hendelsene og varslene. Denne visningen kan gi analytikere større perspektiv på hvilke typer angrep som utføres, og hvordan de tilordner til MITRE ATT&CK-rammeverket.
Eksempler på Power BI-instrumentbord
Hvis du vil ha mer informasjon, kan du se eksempelfilen for Power BI-rapportmaler.