Jaa


Opi kehittynyt metsästyskyselykieli

Kehittynyt metsästys perustuu Kusto-kyselykieleen. Kusto-operaattoreiden ja -lausekkeiden avulla voit luoda kyselyjä, jotka paikantavat tietoa erikoisrakenteesta.

Katso tästä lyhyestä videosta kätevia Kusto-kyselyn kielen perusteita.

Jos haluat ymmärtää näitä käsitteitä paremmin, suorita ensimmäinen kyselysi.

Kokeile ensimmäistä kyselyä

Suorita ensimmäinen kyselysi Microsoft Defender portaalissa Metsästys-kohtaan. Käytä seuraavaa esimerkkiä:

// 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

Suorita tämä kysely kehittyneessä metsästyksessä

Kyselyn alkuun on lisätty lyhyt kommentti, jossa kuvataan, mihin se on tarkoitettu. Tämä kommentti auttaa, jos päätät myöhemmin tallentaa kyselyn ja jakaa sen muiden kanssa organisaatiossasi.

// Finds PowerShell execution events that could involve a download

Itse kysely alkaa yleensä taulukon nimellä ja sen jälkeen useilla elementeillä, jotka alkavat putkella (|). Tässä esimerkissä aloitamme luomalla kahden taulukon DeviceProcessEventsDeviceNetworkEventsja , ja lisäämällä putkitetut elementit tarpeen mukaan.

union DeviceProcessEvents, DeviceNetworkEvents

Määritä aika-alue

Ensimmäinen piped-elementti on aikasuodatin, joka on suodatettu seitsemään edelliseen päivään. Aika-alueen rajoittaminen auttaa varmistamaan, että kyselyt toimivat hyvin, palauttamaan hallittavissa olevat tulokset aikakatkaisun sijaan.

| where Timestamp > ago(7d)

Huomautus

Kusto-aikasuodattimet ovat UTC-tilassa riippumatta asetuksissa määrittämästäsi aikavyöhykkeestä.

Tarkista tietyt prosessit

Aikaväliä seuraa heti PowerShell-sovellusta edustavien prosessitiedostojen nimien haku.

// Pivoting on PowerShell processes
| where FileName in~ ("powershell.exe", "powershell_ise.exe")

Hae tiettyjä komentomerkkijonoja

Myöhemmin kysely etsii komentoriveillä merkkijonoja, joita käytetään yleensä tiedostojen lataamiseen PowerShellin avulla.

// Suspicious commands
| where ProcessCommandLine has_any("WebClient",
    "DownloadFile",
    "DownloadData",
    "DownloadString",
    "WebRequest",
    "Shellcode",
    "http",
    "https")

Mukauta tulossarakkeita ja pituutta

Nyt kun kyselysi tunnistaa selvästi tiedot, jotka haluat paikantaa, voit määrittää, miltä tulokset näyttävät. project palauttaa tiettyjä sarakkeita ja top rajoittaa tulosten määrää. Nämä operaattorit auttavat varmistamaan, että tulokset ovat hyvin muotoiltuja ja kohtuullisen suuria ja helppoja käsitellä.

| project Timestamp, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine,
FileName, ProcessCommandLine, RemoteIP, RemoteUrl, RemotePort, RemoteIPType
| top 100 by Timestamp

Näet tulokset valitsemalla Suorita kysely .

Vihje

Voit tarkastella kyselyn tuloksia kaavioina ja säätää suodattimia nopeasti. Saat lisätietoja kyselytulosten käsittelemisestä.

Tutustu yleisiin kyselyoperaattoreihin

Olet juuri suorittanut ensimmäisen kyselyn ja sinulla on yleinen käsitys sen osista. On aika perääntyä hieman ja oppia perusasiat. Kehittyneen metsästyksen käyttämä Kusto-kyselykieli tukee useita operaattoreita, mukaan lukien seuraavat yleiset.

Operaattori Kuvaus ja käyttö
where Suodata taulukko predikaatin täyttävien rivien alijoukkoon.
summarize Luo taulukko, joka koostaa syötetaulukon sisällön.
join Yhdistä kahden taulukon rivit ja muodosta uusi taulukko yhdistämällä määritettyjen sarakkeiden arvot kustakin taulukosta. Katso, miten voit liittää taulukoita KQL:ssä .
count Palauta syötetietuejoukon tietueiden määrä.
top Palauta ensimmäiset N tietuetta määritettyjen sarakkeiden mukaan lajiteltuina.
limit Palaa määritettyyn määrään rivejä.
project Valitse sisällytettävät sarakkeet, nimeä ne uudelleen tai pudota ne ja lisää uusia laskettuja sarakkeita.
extend Luo laskettuja sarakkeita ja liitä ne tulosjoukkoon.
makeset Palauta dynaaminen (JSON) matriisi erillisten arvojen joukosta, jotka lauseke ottaa ryhmässä.
find Etsi rivejä, jotka vastaavat predikaattia taulukoiden välillä.

Jos haluat nähdä esimerkin näistä operaattoreista, suorita ne kehittyneen metsästyksen Aloittaminen-osiosta .

Tutustu tietotyyppeihin

Kehittynyt metsästys tukee Kusto-tietotyyppejä, mukaan lukien seuraavat yleiset tyypit:

Tietotyyppi Kuvauksen ja kyselyn vaikutukset
datetime Tiedot ja aikatiedot, jotka yleensä edustavat tapahtuman aikaleimaa. Näytä tuetut päivämäärä- ja aikamuodot
string Merkkimerkkijono UTF-8:ssa puolilainausmerkeissä (') tai lainausmerkeissä ("). Lue lisää merkkijonoista
bool Tämä tietotyyppi tukee true tai false tilaa. Katso tuetut literaalit ja operaattorit
int 32-bittinen kokonaisluku
long 64-bittinen kokonaisluku

Jos haluat lisätietoja näistä tietotyypeistä, lue kusto-skalaaritietotyypeistä.

Hanki apua, kun kirjoitat kyselyitä

Hyödynnä seuraavia toimintoja kyselyiden kirjoittamiseksi nopeammin:

  • Autosuggest – kun kirjoitat kyselyitä, kehittynyt metsästys antaa ehdotuksia IntelliSense-kohteesta.
  • Rakennepuu – rakenneesitys, joka sisältää taulukoiden luettelon ja niiden sarakkeet, annetaan työalueesi vieressä. Saat lisätietoja viemällä hiiren osoittimen kohteen päälle. Lisää kohde kyselyeditoriin kaksoisnapsauttamalla sitä.
  • Rakenneviittaus – portaalissa oleva viittaus, jossa on taulukon ja sarakkeen kuvaukset sekä tuetut tapahtumatyypit (ActionType arvot) ja esimerkkikyselyt

Useiden kyselyiden käsitteleminen editorissa

Kyselyeditorin avulla voit kokeilla useita kyselyitä. Useiden kyselyiden käyttäminen:

  • Erota kukin kysely tyhjällä rivillä.

  • Valitse kysely asettamalla kohdistin mihin tahansa kyselyn osaan ennen sen suorittamista. Tämä suorittaa vain valitun kyselyn. Jos haluat suorittaa toisen kyselyn, siirrä kohdistinta vastaavasti ja valitse Suorita kysely.

    Esimerkki useiden kyselyiden suorittamisesta Microsoft Defender-portaalin **Uusi kysely** -sivulla

    Tehokkaamman työtilan kohdalla voit käyttää samalla metsästyssivulla myös useita välilehtiä. Valitse Uusi kysely , jos haluat avata välilehden uudelle kyselylle.

    Avaa uusi välilehti valitsemalla luo uusi kehittyneessä metsästyksessä Microsoft Defender portaalissa

    Voit sitten suorittaa eri kyselyitä avaamatta uutta selainvälilehteä.

    Suorita eri kyselyitä poistumatta Microsoft Defender portaalin kehittyneestä metsästyssivusta

Huomautus

Useiden selainvälilehtien käyttäminen kehittyneen metsästyksen kanssa saattaa aiheuttaa tallentamattomien kyselyiden menettämisen. Jos haluat estää tämän, käytä lisämetsästyksessä olevaa sarkainominaisuutta erillisten selainvälilehtien sijaan.

Mallikyselyiden käyttäminen

Aloittaminen-osiossa on muutamia yksinkertaisia kyselyitä, jotka käyttävät usein käytettyjä operaattoreita. Kokeile suorittaa nämä kyselyt ja tehdä niihin pieniä muutoksia.

**Aloittaminen**-osa Microsoft Defender portaalin **Lisämetsästyksen** sivulla

Huomautus

Peruskyselymallien lisäksi voit käyttää jaettuja kyselyitä tietyissä uhkien metsästysskenaarioita varten. Tutustu sivun vasemmalla puolella tai GitHub-kyselysäilössä oleviin jaettuihin kyselyihin.

Access-kyselykielen dokumentaatio

Lisätietoja Kuston kyselykielestä ja tuetuista operaattoreista on Kusto-kyselykielen ohjeissa.

Huomautus

Jotkin tämän artikkelin taulukot eivät ehkä ole käytettävissä Microsoft Defender for Endpoint. Ota Microsoft Defender XDR käyttöön uhkien etsimiseksi käyttämällä enemmän tietolähteitä. Voit siirtää kehittyneet metsästystyönkulut Microsoft Defender for Endpoint Microsoft Defender XDR noudattamalla kohdassa Kehittyneiden metsästyskyselyjen siirtäminen Microsoft Defender for Endpoint ohjeita.

Vihje

Haluatko tietää lisää? Ota yhteyttä Microsoft Security -yhteisöön Tech Community -yhteisössä: Microsoft Defender XDR Tech Community.