Skapa anpassade analysregler för att identifiera hot

Anteckning

Azure Sentinel heter nu Microsoft Sentinel och vi kommer att uppdatera dessa sidor under de kommande veckorna. Läs mer om microsofts senaste säkerhetsförbättringar.

När du har anslutit dina datakällor till Microsoft Sentinel skapar du anpassade analysregler för att identifiera hot och avvikande beteenden i din miljö.

Analysregler söker efter specifika händelser eller uppsättningar av händelser i din miljö, varnar dig när vissa tröskelvärden för händelser eller villkor nås, genererar incidenter för din SOC för att sortera och undersöka och svara på hot med automatiserade spårnings- och reparationsprocesser.

Tips

När du skapar anpassade regler använder du befintliga regler som mallar eller referenser. Att använda befintliga regler som baslinje hjälper till genom att bygga ut det mesta av logiken innan du gör några ändringar som behövs.

  • Skapa analysregler
  • Definiera hur händelser och aviseringar bearbetas
  • Definiera hur aviseringar och incidenter genereras
  • Välj automatiska hotsvar för dina regler

Skapa en anpassad analysregel med en schemalagd fråga

  1. På navigeringsmenyn i Microsoft Sentinel väljer du Analys.

  2. I åtgärdsfältet längst upp väljer du +Skapa och väljer Schemalagd frågeregel. Då öppnas guiden Analytics-regel.

    Create scheduled query

Guiden Analysregel – fliken Allmänt

  • Ange ett unikt namn och en Beskrivning.

  • I fältet Taktiker och tekniker kan du välja bland de kategorier av attacker som regeln ska klassificeras efter. Dessa baseras på taktiker och tekniker i MITRE ATT&CK-ramverket .

    Incidenter som skapas från aviseringar som identifieras av regler som mappas till MITRE ATT&CK-taktiker och tekniker ärver automatiskt regelns mappning.

  • Ange allvarlighetsgrad för aviseringen efter behov.

  • När du skapar regeln är statusen Aktiverad som standard, vilket innebär att den körs direkt när du har skapat den. Om du inte vill att den ska köras omedelbart väljer du Inaktiverad. Regeln läggs till på fliken Aktiva regler och du kan aktivera den därifrån när du behöver den.

    Start creating a custom analytics rule

Definiera regelfrågelogik och konfigurera inställningar

På fliken Ange regellogik kan du antingen skriva en fråga direkt i fältet Regelfråga eller skapa frågan i Log Analytics och sedan kopiera och klistra in den här.

  • Frågor skrivs med Kusto Query Language (KQL). Läs mer om KQL begrepp och frågor och se den här praktiska snabbreferensguiden.

  • Exemplet som visas i den här skärmbilden frågar tabellen SecurityEvent om du vill visa en typ av misslyckade Windows inloggningshändelser.

    Configure query rule logic and settings

  • Här är en annan exempelfråga som varnar dig när ett avvikande antal resurser skapas i Azure Activity.

    AzureActivity
    | where OperationName == "Create or Update Virtual Machine" or OperationName =="Create Deployment"
    | where ActivityStatus == "Succeeded"
    | make-series dcount(ResourceId)  default=0 on EventSubmissionTimestamp in range(ago(7d), now(), 1d) by Caller
    

    Viktigt

    Vi rekommenderar att din fråga använder en ASIM-parser (Advanced Security Information Model) och inte en intern tabell. Detta säkerställer att frågan stöder alla aktuella eller framtida relevanta datakällor i stället för en enda datakälla.

    Anteckning

    Metodtips för regelfrågor:

    • Frågelängden ska vara mellan 1 och 10 000 tecken och får inte innehålla "search *" eller "union *". Du kan använda användardefinierade funktioner för att lösa begränsningen av frågelängden.

    • Det går inte att använda ADX-funktioner för att skapa Azure Data Explorer frågor i Log Analytics-frågefönstret.

    • När du använder bag_unpack funktionen i en fråga misslyckas frågan om du projicerar kolumnerna som fält med "project field1" och kolumnen inte finns. För att skydda dig mot detta måste du projicera kolumnen på följande sätt:

      • project field1 = column_ifexists("field1","")

Aviseringsberikning

  • Använd konfigurationsavsnittet Entitetsmappning för att mappa parametrar från dina frågeresultat till Microsoft Sentinel-identifierade entiteter. Entiteter utökar reglernas utdata (aviseringar och incidenter) med viktig information som fungerar som byggstenar i eventuella undersökande processer och åtgärdsåtgärder som följer. De är också de kriterier genom vilka du kan gruppera aviseringar i incidenter på fliken Incidentinställningar .

    Läs mer om entiteter i Microsoft Sentinel.

    Se Mappa datafält till entiteter i Microsoft Sentinel för fullständiga instruktioner för entitetsmappning, tillsammans med viktig information om begränsningar och bakåtkompatibilitet.

  • Använd konfigurationsavsnittet Anpassad information för att extrahera händelsedataobjekt från din fråga och visa dem i aviseringarna som skapas av den här regeln, vilket ger dig omedelbar synlighet för händelseinnehåll i dina aviseringar och incidenter.

    Läs mer om att visa anpassad information i aviseringar och se de fullständiga instruktionerna.

  • Använd konfigurationsavsnittet Aviseringsinformation för att anpassa aviseringens presentationsinformation till det faktiska innehållet. Med aviseringsinformation kan du till exempel visa en angripares IP-adress eller kontonamn i själva aviseringens rubrik, så att den visas i din incidentkö, vilket ger dig en mycket rikare och tydligare bild av ditt hotlandskap.

    Se fullständiga anvisningar om hur du anpassar aviseringsinformationen.

Anteckning

Storleksgränsen för en hel avisering är 64 KB.

  • Aviseringar som blir större än 64 kB trunkeras. När entiteter identifieras läggs de till i aviseringen en i taget tills aviseringsstorleken når 64 kB och eventuella återstående entiteter tas bort från aviseringen.

  • De andra aviseringsberikningarna bidrar också till aviseringens storlek.

  • Om du vill minska storleken på aviseringen använder du operatorn project-away i frågan för att ta bort onödiga fält. (Överväg även operatorn project om det bara finns några få fält som du behöver behålla.)

Schemaläggning av frågor och tröskelvärde för aviseringar

  • I avsnittet Frågeschemaläggning anger du följande parametrar:

    Set query schedule and event grouping

    • Ställ in Kör fråga var för att styra hur ofta frågan körs – så ofta som var 5:e minut eller så sällan som en gång var 14:e dag.

    • Ange uppslagsdata från den sista för att fastställa tidsperioden för de data som omfattas av frågan, till exempel kan den fråga de senaste 10 minuternas data eller de senaste 6 timmarna med data. Det maximala värdet är 14 dagar.

      Anteckning

      Frågeintervall och återblicksperiod

      De här två inställningarna är oberoende av varandra, upp till en viss punkt. Du kan köra en fråga med ett kort intervall som täcker en tidsperiod som är längre än intervallet (i praktiken har överlappande frågor), men du kan inte köra en fråga med ett intervall som överskrider täckningsperioden, annars kommer du att ha luckor i den övergripande frågetäckningen. >>Inmatningsfördröjning>> För att ta hänsyn till svarstider som kan uppstå mellan en händelses generering vid källan och dess inmatning till Microsoft Sentinel, och för att säkerställa fullständig täckning utan dataduplicering, kör Microsoft Sentinel schemalagda analysregler på fem minuters fördröjning från den schemalagda tiden. >> Mer information finns i Hantera inmatningsfördröjning i schemalagda analysregler.

  • Använd avsnittet Tröskelvärde för avisering för att definiera känslighetsnivån för regeln. Ange till exempel Generera avisering när antalet frågeresultatär större än och ange talet 1 000 om du bara vill att regeln ska generera en avisering om frågan returnerar fler än 1 000 resultat varje gång den körs. Det här är ett obligatoriskt fält, så om du inte vill ange ett tröskelvärde , det vill sa om du vill att din avisering ska registrera varje händelse , anger du 0 i nummerfältet.

Resultatsimulering

I området Resultatsimulering till höger i guiden väljer du Testa med aktuella data så visar Microsoft Sentinel ett diagram över resultaten (logghändelser) som frågan skulle ha genererat under de senaste 50 gångerna den skulle ha körts, enligt det aktuella definierade schemat. Om du ändrar frågan väljer du Testa med aktuella data igen för att uppdatera diagrammet. Diagrammet visar antalet resultat under den definierade tidsperioden, vilket bestäms av inställningarna i avsnittet Frågeschemaläggning .

Så här kan resultatsimuleringen se ut för frågan i skärmbilden ovan. Den vänstra sidan är standardvyn och den högra sidan är det du ser när du hovra över en tidpunkt i diagrammet.

Results simulation screenshots

Om du ser att frågan skulle utlösa för många eller för frekventa aviseringar kan du experimentera med inställningarna i avsnittenFrågeschemaläggning och Tröskelvärde för aviseringar och välja Testa med aktuella data igen.

Händelsegruppering och regelundertryckning

  • Under Händelsegruppering väljer du ett av två sätt att hantera gruppering av händelser i aviseringar:

    • Gruppera alla händelser i en enda avisering (standardinställningen). Regeln genererar en enskild avisering varje gång den körs, så länge frågan returnerar fler resultat än det angivna tröskelvärdet för aviseringar ovan. Aviseringen innehåller en sammanfattning av alla händelser som returneras i resultatet.

    • Utlös en avisering för varje händelse. Regeln genererar en unik avisering för varje händelse som returneras av frågan. Detta är användbart om du vill att händelser ska visas individuellt, eller om du vill gruppera dem efter vissa parametrar – efter användare, värdnamn eller något annat. Du kan definiera dessa parametrar i frågan.

      För närvarande är antalet aviseringar som en regel kan generera högst 150. Om händelsegruppering i en viss regel är inställd på Utlös en avisering för varje händelse och regelns fråga returnerar fler än 150 händelser genererar var och en av de första 149 händelserna en unik avisering och den 150:e aviseringen sammanfattar hela uppsättningen returnerade händelser. Med andra ord är den 150:e aviseringen vad som skulle ha genererats under alternativet Gruppera alla händelser i en enda avisering .

      Om du väljer det här alternativet lägger Microsoft Sentinel till ett nytt fält, OriginalQuery, i resultatet av frågan. Här är en jämförelse av det befintliga frågefältet och det nya fältet:

      Fältnamn Innehåller Köra frågan i det här fältet
      resulterar i...
      Query Den komprimerade posten för händelsen som genererade den här instansen av aviseringen Händelsen som genererade den här instansen av aviseringen
      OriginalQuery Den ursprungliga frågan som skrivits i analysregeln Den senaste händelsen i tidsramen där frågan körs, som passar de parametrar som definieras av frågan

      Med andra ord fungerar fältet OriginalQuery som om frågefältet vanligtvis beter sig. Resultatet av det här extra fältet är att problemet som beskrivs av det första objektet i felsökningsavsnittet nedan har lösts.

    Anteckning

    Vad är skillnaden mellan händelser och aviseringar?

    • En händelse är en beskrivning av en enskild förekomst av en åtgärd. En enda post i en loggfil kan till exempel räknas som en händelse. I det här sammanhanget refererar en händelse till ett enda resultat som returneras av en fråga i en analysregel.

    • En avisering är en samling händelser som tillsammans är viktiga ur säkerhetssynpunkt. En avisering kan innehålla en enskild händelse om händelsen har betydande säkerhetskonsekvenser – till exempel en administrativ inloggning från ett främmande land utanför kontorstid.

    • Förresten, vad är incidenter? Microsoft Sentinels interna logik skapar incidenter från aviseringar eller grupper av aviseringar. Incidentkön står i fokus för SOC-analytikernas arbete – prioritering, undersökning och reparation.

    Microsoft Sentinel matar in råhändelser från vissa datakällor och redan bearbetade aviseringar från andra. Det är viktigt att notera vilken du har att göra med när som helst.

  • I avsnittet Undertryckning kan du aktivera inställningen Sluta köra frågan när aviseringen har genererats om du, när du får en avisering, vill pausa åtgärden för den här regeln under en tidsperiod som överskrider frågeintervallet. Om du aktiverar detta måste du ange Sluta köra frågan för till den tid som frågan ska sluta köras, upp till 24 timmar.

Konfigurera inställningarna för incidentskapande

På fliken Incident Inställningar kan du välja om och hur Microsoft Sentinel omvandlar aviseringar till åtgärdsbara incidenter. Om den här fliken lämnas ensam skapar Microsoft Sentinel en enskild, separat incident från varje avisering. Du kan välja att inga incidenter ska skapas eller gruppera flera aviseringar i en enda incident genom att ändra inställningarna på den här fliken.

Exempel:

Define the incident creation and alert grouping settings

Incidentinställningar

I avsnittet Incidentinställningar anges Skapa incidenter från aviseringar som utlöses av den här analysregeln som standard till Aktiverad, vilket innebär att Microsoft Sentinel skapar en enskild, separat incident från varje avisering som utlöses av regeln.

  • Om du inte vill att den här regeln ska resultera i att incidenter skapas (till exempel om den här regeln bara är för att samla in information för efterföljande analys) anger du detta till Inaktiverad.

  • Om du vill att en enskild incident ska skapas från en grupp av aviseringar, i stället för en för varje enskild avisering, kan du läsa nästa avsnitt.

Aviseringsgruppering

Om du vill att en enskild incident ska genereras från en grupp på upp till 150 liknande eller återkommande aviseringar i avsnittet Aviseringsgruppering (se anmärkning), anger du Grupprelaterade aviseringar, utlöses av den här analysregeln, till incidenter till Aktiverad och anger följande parametrar.

  • Begränsa gruppen till aviseringar som skapats inom den valda tidsramen: Bestäm inom vilken tidsram liknande eller återkommande aviseringar ska grupperas tillsammans. Alla motsvarande aviseringar inom den här tidsramen genererar tillsammans en incident eller en uppsättning incidenter (beroende på grupperingsinställningarna nedan). Aviseringar utanför den här tidsramen genererar en separat incident eller uppsättning incidenter.

  • Gruppaviseringar som utlöses av den här analysregeln i en enda incident av: Välj den grund som aviseringar ska grupperas på:

    Alternativ Beskrivning
    Gruppera aviseringar i en enda incident om alla entiteter matchar Aviseringar grupperas tillsammans om de delar identiska värden för var och en av de mappade entiteterna (definieras på fliken Ange regellogik ovan). Detta är den rekommenderade inställningen.
    Gruppera alla aviseringar som utlöses av den här regeln i en enda incident Alla aviseringar som genereras av den här regeln grupperas tillsammans även om de inte delar några identiska värden.
    Gruppera aviseringar i en enda incident om de valda entiteterna och informationen matchar Aviseringar grupperas tillsammans om de delar identiska värden för alla mappade entiteter, aviseringsinformation och anpassad information som valts från respektive listruta.

    Du kanske vill använda den här inställningen om du till exempel vill skapa separata incidenter baserat på källans eller målets IP-adresser, eller om du vill gruppera aviseringar som matchar en viss entitet och allvarlighetsgrad.

    Obs! När du väljer det här alternativet måste du ha minst en entitetstyp eller ett fält valt för regeln. Annars misslyckas verifieringen av regeln och regeln skapas inte.
  • Öppna stängda matchningsincidenter igen: Om en incident har lösts och stängts och senare en annan avisering genereras som ska tillhöra incidenten anger du den här inställningen till Aktiverad om du vill att den stängda incidenten ska öppnas igen och lämnar som Inaktiverad om du vill att aviseringen ska skapa en ny incident.

    Anteckning

    Upp till 150 aviseringar kan grupperas i en enda incident. Om fler än 150 aviseringar genereras av en regel som grupperar dem i en enda incident genereras en ny incident med samma incidentinformation som den ursprungliga och de överflödiga aviseringarna grupperas i den nya incidenten.

Ange automatiserade svar och skapa regeln

  1. På fliken Automatiserade svar kan du ange automatisering baserat på aviseringen eller aviseringarna som genereras av den här analysregeln eller baserat på incidenten som skapats av aviseringarna.

    • För aviseringsbaserad automatisering väljer du i listrutan under Aviseringsautomatisering alla spelböcker som du vill köra automatiskt när en avisering genereras.

    • För incidentbaserad automatisering visar rutnätet under Incidentautomatisering de automatiseringsregler som redan gäller för den här analysregeln (på grund av att den uppfyller de villkor som definieras i dessa regler). Du kan redigera någon av dessa genom att välja ellipsen i slutet av varje rad. Eller så kan du skapa en ny automatiseringsregel.

      Du kan anropa spelböcker (de som baseras på incidentutlösaren) från dessa automatiseringsregler, samt automatisera prioritering, tilldelning och stängning.

    • Mer information och instruktioner om hur du skapar spelböcker och automatiseringsregler finns i Automatisera hotsvar.

    • Mer information om när du ska använda aviseringsutlösaren eller incidentutlösaren finnsi Använda utlösare och åtgärder i Microsoft Sentinel-spelböcker.

    Define the automated response settings

  2. Välj Granska och skapa för att granska alla inställningar för den nya aviseringsregeln. När meddelandet "Valideringen godkändes" visas väljer du Skapa för att initiera aviseringsregeln.

    Review all settings and create the rule

Visa regeln och dess utdata

  • Du hittar din nyligen skapade anpassade regel (av typen "Schemalagd") i tabellen under fliken Aktiva regler på huvudskärmen i Analytics . I den här listan kan du aktivera, inaktivera eller ta bort varje regel.

  • Om du vill visa resultatet av de aviseringsregler som du skapar går du till sidan Incidenter , där du kan sortera, undersöka incidenter och åtgärda hoten.

  • Du kan uppdatera regelfrågan för att exkludera falska positiva identifieringar. Mer information finns i Hantera falska positiva identifieringar i Microsoft Sentinel.

Anteckning

Aviseringar som genereras i Microsoft Sentinel är tillgängliga via Microsoft Graph Security. Mer information finns i dokumentationen om Microsoft Graph Security-aviseringar.

Exportera regeln till en ARM-mall

Om du vill paketera regeln som ska hanteras och distribueras som kod kan du enkelt exportera regeln till en ARM-mall (Azure Resource Manager). Du kan också importera regler från mallfiler för att visa och redigera dem i användargränssnittet.

Felsökning

Problem: Inga händelser visas i frågeresultat

När händelsegruppering är inställt på att utlösa en avisering för varje händelse kan frågeresultat som visas vid ett senare tillfälle se ut att saknas eller skilja sig från förväntat. Du kan till exempel visa en frågas resultat vid ett senare tillfälle när du har pivoterat tillbaka till resultaten från en relaterad incident.

  • Resultaten sparas automatiskt med aviseringarna. Men om resultatet är för stort sparas inga resultat och inga data visas när du visar frågeresultatet igen.
  • I fall där inmatningsfördröjningen infaller, eller om frågan inte är deterministisk på grund av aggregering, kan aviseringens resultat skilja sig från det resultat som visas genom att köra frågan manuellt.

Anteckning

Det här problemet har lösts genom att ett nytt fält, OriginalQuery, har lagts till i resultatet när det här alternativet för händelsegruppering har valts. Se beskrivningen ovan.

Problem: En schemalagd regel kunde inte köras eller visas med AUTO DISABLED tillagt i namnet

Det är ovanligt att en schemalagd frågeregel inte kan köras, men det kan inträffa. Microsoft Sentinel klassificerar fel i förväg som antingen tillfälliga eller permanenta, baserat på den specifika typen av fel och de omständigheter som ledde till det.

Tillfälligt fel

Ett tillfälligt fel inträffar på grund av en omständighet som är tillfällig och snart återgår till det normala, då regelkörningen lyckas. Några exempel på fel som Microsoft Sentinel klassificerar som tillfälliga är:

  • En regelfråga tar för lång tid att köra och tidsgränsen uppnås.
  • Anslutningsproblem mellan datakällor och Log Analytics, eller mellan Log Analytics och Microsoft Sentinel.
  • Alla andra nya och okända fel betraktas som tillfälliga.

I händelse av ett tillfälligt fel fortsätter Microsoft Sentinel att försöka köra regeln igen efter förutbestämda och ständigt ökande intervall, upp till en punkt. Därefter körs regeln bara igen vid nästa schemalagda tid. En regel inaktiveras aldrig automatiskt på grund av ett tillfälligt fel.

Permanent fel – regeln avaktiveras automatiskt

Ett permanent fel inträffar på grund av en ändring av villkoren som tillåter att regeln körs, som utan mänsklig inblandning inte återgår till sin tidigare status. Följande är några exempel på fel som klassificeras som permanenta:

  • Målarbetsytan (där regelfrågan fungerade) har tagits bort.
  • Måltabellen (där regelfrågan fungerade) har tagits bort.
  • Microsoft Sentinel hade tagits bort från målarbetsytan.
  • En funktion som används av regelfrågan är inte längre giltig. den har antingen ändrats eller tagits bort.
  • Behörigheter till en av datakällorna i regelfrågan har ändrats.
  • En av datakällorna i regelfrågan togs bort eller kopplades från.

I händelse av ett förutbestämt antal permanenta fel i följd, av samma typ och på samma regel, Microsoft Sentinel slutar att försöka köra regeln och utför även följande steg:

  • Inaktiverar regeln.
  • Lägger till orden "AUTO DISABLED" i början av regelns namn.
  • Lägger till orsaken till felet (och inaktivering) i regelns beskrivning.

Du kan enkelt fastställa förekomsten av automatiskt inaktiverade regler genom att sortera regellistan efter namn. Reglerna för automatisk inaktivering kommer att finnas högst upp i listan.

SOC-chefer bör se till att regelbundet kontrollera regellistan för förekomsten av regler för automatiskt inaktiverade.

Nästa steg

När du använder analysregler för att identifiera hot från Microsoft Sentinel måste du aktivera alla regler som är associerade med dina anslutna datakällor för att säkerställa fullständig säkerhetstäckning för din miljö. Det mest effektiva sättet att aktivera analysregler är direkt från dataanslutningssidan, som visar alla relaterade regler. Mer information finns i Anslut datakällor.

Du kan också skicka regler till Microsoft Sentinel via API och PowerShell, även om det kräver ytterligare arbete. När du använder API eller PowerShell måste du först exportera reglerna till JSON innan du aktiverar reglerna. API eller PowerShell kan vara till hjälp när du aktiverar regler i flera instanser av Microsoft Sentinel med identiska inställningar i varje instans.

Mer information finns i:

Mer information finns i:

Lär dig också från ett exempel på hur du använder anpassade analysregler när du övervakar Zoom med en anpassad anslutningsapp.