Få mere at vide om det avancerede forespørgselssprog for jagt
Avanceret jagt er baseret på Kusto-forespørgselssproget. Du kan bruge Kusto-operatorer og -sætninger til at oprette forespørgsler, der finder oplysninger i et specialiseret skema.
Se denne korte video for at lære nogle praktiske grundlæggende oplysninger om Kusto-forespørgselssprog.
Hvis du vil have en bedre forståelse af disse begreber, skal du køre din første forespørgsel.
Prøv din første forespørgsel
I Microsoft Defender-portalen skal du gå til Jagt for at køre din første forespørgsel. Brug følgende eksempel:
// Finds PowerShell execution events that could involve a download
union DeviceProcessEvents, DeviceNetworkEvents
| where Timestamp > ago(7d)
// Pivoting on PowerShell processes
| where FileName in~ ("powershell.exe", "powershell_ise.exe")
// Suspicious commands
| where ProcessCommandLine has_any("WebClient",
"DownloadFile",
"DownloadData",
"DownloadString",
"WebRequest",
"Shellcode",
"http",
"https")
| project Timestamp, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine,
FileName, ProcessCommandLine, RemoteIP, RemoteUrl, RemotePort, RemoteIPType
| top 100 by Timestamp
Kør denne forespørgsel i avanceret jagt
Beskriv forespørgslen, og angiv de tabeller, der skal søges i
Der er føjet en kort kommentar til starten af forespørgslen for at beskrive, hvad den er beregnet til. Denne kommentar hjælper, hvis du senere beslutter at gemme forespørgslen og dele den med andre i din organisation.
// Finds PowerShell execution events that could involve a download
Selve forespørgslen starter typisk med et tabelnavn efterfulgt af flere elementer, der starter med en pipe (|
). I dette eksempel starter vi med at oprette en forening af to tabeller DeviceProcessEvents
og DeviceNetworkEvents
og tilføje pipede elementer efter behov.
union DeviceProcessEvents, DeviceNetworkEvents
Angiv tidsinterval
Det første pipe-element er et tidsfilter, der er begrænset til de forrige syv dage. Hvis du begrænser tidsintervallen, hjælper det med at sikre, at forespørgslerne fungerer godt, returnerer resultater, der kan administreres, og at der ikke opstår timeout.
| where Timestamp > ago(7d)
Bemærk!
Kusto-tidsfiltre er i UTC, uanset hvilken tidszone du har angivet i dine indstillinger.
Kontrollér bestemte processer
Tidsintervallet efterfølges straks af en søgning efter procesfilnavne, der repræsenterer PowerShell-programmet.
// Pivoting on PowerShell processes
| where FileName in~ ("powershell.exe", "powershell_ise.exe")
Søg efter bestemte kommandostrenge
Derefter søger forespørgslen efter strenge i kommandolinjer, der typisk bruges til at downloade filer ved hjælp af PowerShell.
// Suspicious commands
| where ProcessCommandLine has_any("WebClient",
"DownloadFile",
"DownloadData",
"DownloadString",
"WebRequest",
"Shellcode",
"http",
"https")
Tilpas resultatkolonner og -længde
Nu, hvor din forespørgsel tydeligt identificerer de data, du vil finde, kan du definere, hvordan resultaterne skal se ud.
project
returnerer bestemte kolonner og top
begrænser antallet af resultater. Disse operatorer er med til at sikre, at resultaterne er velformateret og forholdsvis store og nemme at behandle.
| project Timestamp, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine,
FileName, ProcessCommandLine, RemoteIP, RemoteUrl, RemotePort, RemoteIPType
| top 100 by Timestamp
Vælg Kør forespørgsel for at se resultaterne.
Tip
Du kan få vist forespørgselsresultater som diagrammer og hurtigt justere filtre. Du kan få vejledning ved at læse om at arbejde med forespørgselsresultater
Få mere at vide om almindelige forespørgselsoperatorer
Du har lige kørt din første forespørgsel og har en generel idé om dens komponenter. Det er tid til at bakke lidt op og lære nogle grundlæggende. Det Kusto-forespørgselssprog, der bruges af avanceret jagt, understøtter en række operatorer, herunder følgende almindelige.
Operatør | Beskrivelse og anvendelse |
---|---|
where |
Filtrer en tabel til delsættet af rækker, der opfylder et prædikat. |
summarize |
Producere en tabel, der samler indholdet af inputtabellen. |
join |
Flet rækkerne i to tabeller for at danne en ny tabel ved at matche værdierne for de angivne kolonner fra hver tabel. Se Sammenføjning-tabeller i KQL for at få mere at vide. |
count |
Returner antallet af poster i inputpostsættet. |
top |
Returner de første N-poster sorteret efter de angivne kolonner. |
limit |
Vend tilbage til det angivne antal rækker. |
project |
Vælg de kolonner, der skal medtages, omdøbes eller slippes, og indsæt nye beregnede kolonner. |
extend |
Opret beregnede kolonner, og føj dem til resultatsættet. |
makeset |
Returnerer en dynamisk matrix (JSON) af sættet af entydige værdier, som Udtryk tager i gruppen. |
find |
Find rækker, der matcher et prædikat på tværs af et sæt tabeller. |
Hvis du vil se et live eksempel på disse operatorer, skal du køre dem fra afsnittet Kom i gang i avanceret jagt.
Forstå datatyper
Avanceret jagt understøtter Kusto-datatyper, herunder følgende almindelige typer:
Datatype | Beskrivelse og konsekvenser for forespørgsler |
---|---|
datetime |
Data- og tidsoplysninger, der typisk repræsenterer hændelsestidsstempler. Se understøttede formater for dato/klokkeslæt |
string |
Tegnstreng i UTF-8 omsluttet af enkelte anførselstegn (' ) eller dobbelte anførselstegn (" ).
Læs mere om strenge |
bool |
Denne datatype understøtter true eller false tilstande.
Se understøttede konstanter og operatorer |
int |
32-bit heltal |
long |
64-bit heltal |
Du kan få mere at vide om disse datatyper ved at læse om Kusto-skalardatatyper.
Få hjælp, når du skriver forespørgsler
Benyt følgende funktionalitet til at skrive forespørgsler hurtigere:
- Autosuggest – når du skriver forespørgsler, giver avanceret jagt forslag fra IntelliSense.
- Skematræ – en skemarepræsentation, der indeholder listen over tabeller og deres kolonner, er angivet ud for dit arbejdsområde. Du kan få flere oplysninger ved at holde markøren over et element. Dobbeltklik på et element for at indsætte det i forespørgselseditoren.
-
Skemareference – reference i portalen med tabel- og kolonnebeskrivelser samt understøttede hændelsestyper (
ActionType
værdier) og eksempelforespørgsler
Arbejd med flere forespørgsler i editoren
Du kan bruge forespørgselseditoren til at eksperimentere med flere forespørgsler. Sådan bruger du flere forespørgsler:
Adskil hver forespørgsel med en tom linje.
Placer markøren på en del af en forespørgsel for at vælge den pågældende forespørgsel, før du kører den. Dette kører kun den valgte forespørgsel. Hvis du vil køre en anden forespørgsel, skal du flytte markøren tilsvarende og vælge Kør forespørgsel.
Hvis du vil have et mere effektivt arbejdsområde, kan du også bruge flere faner på den samme jagtside. Vælg Ny forespørgsel for at åbne en fane til den nye forespørgsel.
Du kan derefter køre forskellige forespørgsler uden at åbne en ny browserfane.
Bemærk!
Hvis du bruger flere browserfaner med avanceret jagt, kan det medføre, at du mister dine forespørgsler, der ikke er gemt. Hvis du vil forhindre dette, skal du bruge fanefunktionen i avanceret jagt i stedet for separate browserfaner.
Brug eksempelforespørgsler
Afsnittet Introduktion indeholder nogle få enkle forespørgsler, der bruger almindeligt anvendte operatorer. Prøv at køre disse forespørgsler og foretage små ændringer af dem.
Bemærk!
Ud over de grundlæggende forespørgselseksempler kan du også få adgang til delte forespørgsler for specifikke trusselsjagtscenarier. Udforsk de delte forespørgsler i venstre side eller i GitHub-forespørgselslageret.
Få adgang til dokumentation til forespørgselssprog
Du kan få flere oplysninger om Kusto-forespørgselssprog og understøttede operatorer i dokumentationen til Kusto-forespørgselssprog.
Bemærk!
Nogle tabeller i denne artikel er muligvis ikke tilgængelige i Microsoft Defender for Endpoint. Slå Microsoft Defender XDR til for at jage efter trusler ved hjælp af flere datakilder. Du kan flytte dine avancerede arbejdsprocesser for jagt fra Microsoft Defender for Endpoint til Microsoft Defender XDR ved at følge trinnene i Overfør avancerede jagtforespørgsler fra Microsoft Defender for Endpoint.
Relaterede emner
- Oversigt over avanceret jagt
- Arbejd med forespørgselsresultater
- Brug delte forespørgsler
- Lede på tværs af enheder, mails, apps og identiteter
- Forstå skemaet
- Anvend bedste praksis for forespørgsler
Tip
Vil du vide mere? Kontakt Microsoft Security-community'et i vores Tech Community: Microsoft Defender XDR Tech Community.