Azure Active Directory säkerhetsdriftsguide för program

Program utgör en angreppsyta för säkerhetsöverträdelser och måste övervakas. Överträdelser kan inträffa även om de inte riktas så ofta som användarkonton. Eftersom program ofta körs utan mänsklig inblandning kan attackerna vara svårare att identifiera.

Den här artikeln innehåller råd om hur du övervakar och varnar om programhändelser. Den uppdateras regelbundet för att säkerställa att du:

  • Förhindra att skadliga program får obehörig åtkomst till data.

  • Förhindra att befintliga program komprometteras av dåliga aktörer.

  • Samla in insikter som gör att du kan skapa och konfigurera nya program på ett säkrare sätt.

Om du inte är bekant med hur program fungerar i Azure Active Directory (Azure AD) kan du gå till Appar och tjänstens huvudnamn i Azure AD.

Anteckning

Om du ännu inte har granskat Azure Active Directory översikt över säkerhetsåtgärderbör du överväga att göra det nu.

Vad du ska leta efter

När du övervakar programloggarna efter säkerhetsincidenter kan du granska följande för att skilja mellan normal aktivitet och skadlig aktivitet. Följande händelser kan tyda på säkerhetsproblem och var och en beskrivs i resten av artikeln.

  • Ändringar som sker utanför normala affärsprocesser och scheman.

  • Ändringar av programautentiseringsuppgifter

  • Programbehörigheter

    • Tjänstens huvudnamn som tilldelats en Azure AD- eller Azure RBAC-roll.

    • Program som beviljas behörigheter med hög behörighet.

    • Azure Key Vault ändringar.

    • Slutanvändare som beviljar programmedgivande.

    • Stoppat slutanvändares medgivande baserat på risknivå.

  • Ändringar i programkonfigurationen

    • URI (Universal Resource Identifier) har ändrats eller inte är standard.

    • Ändringar av programägare.

    • Utloggnings-URL:er har ändrats.

Var du ska leta

Loggfilerna som du använder för undersökning och övervakning är:

Från Azure Portal kan du visa Azure AD-granskningsloggarna och ladda ned dem som filer med kommaavgränsade värden (CSV) eller JavaScript Object Notation (JSON). Det Azure Portal flera sätt att integrera Azure AD-loggar med andra verktyg som möjliggör större automatisering av övervakning och aviseringar:

  • Microsoft Sentinel – möjliggör intelligent säkerhetsanalys på företagsnivå genom att tillhandahålla funktioner för säkerhetsinformation och händelsehantering (SIEM).

  • Azure Monitor – möjliggör automatisk övervakning och avisering om olika villkor. Kan skapa eller använda arbetsböcker för att kombinera data från olika källor.

  • Azure Event Hubs integreras med siem Azure AD-loggar kan integreras med andra - SIEM-datorer som Splunk, ArcSight, QRadar och Sumo Logic via Azure Event Hub-integreringen.

  • Microsoft Defender för molnappar – gör att du kan identifiera och hantera appar, styra över appar och resurser och kontrollera dina molnappars efterlevnad.

Mycket av vad du kommer att övervaka och varna om är effekterna av dina principer för villkorsstyrd åtkomst. Du kan använda arbetsboken Insikter om villkorsstyrd åtkomst och rapportering för att undersöka effekterna av en eller flera principer för villkorlig åtkomst på dina inloggningar, samt resultatet av principer, inklusive enhetstillstånd. Med den här arbetsboken kan du visa en effektsammanfattning och identifiera effekten under en viss tidsperiod. Du kan också använda arbetsboken för att undersöka inloggningar för en viss användare.

Resten av den här artikeln beskriver vad vi rekommenderar att du övervakar och varnar för och är ordnade efter typ av hot. Där det finns specifika förbyggda lösningar länkar vi till dem eller ger exempel efter tabellen. Annars kan du skapa aviseringar med hjälp av föregående verktyg.

Programautentiseringsuppgifter

Många program använder autentiseringsuppgifter för att autentisera i Azure AD. Eventuella ytterligare autentiseringsuppgifter som läggs till utanför förväntade processer kan vara en illvillig aktör som använder dessa autentiseringsuppgifter. Vi rekommenderar starkt att du använder X509-certifikat som utfärdats av betrodda myndigheter eller hanterade identiteter i stället för att använda klienthemligheter. Men om du behöver använda klienthemligheter bör du följa god praxis för att skydda program. Observera att uppdateringar av program och tjänstens huvudnamn loggas som två poster i granskningsloggen.

  • Övervaka program för att identifiera de med långa förfallotider för autentiseringsuppgifter.

  • Ersätt långlivade autentiseringsuppgifter med autentiseringsuppgifter som har en kort livslängd. Vidta åtgärder för att säkerställa att autentiseringsuppgifter inte sparas i koddatabaser och lagras på ett säkert sätt.

Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
Autentiseringsuppgifter har lagts till i befintliga program Högt Azure AD-granskningsloggar Service-Core Directory, Category-ApplicationManagement
Aktivitet: Application-Certificates hantering av Application-Certificates och hemligheter
-and-
Aktivitet: Uppdatera tjänstens huvudnamn/Uppdatera program
Avisering när autentiseringsuppgifterna är:
  • läggs till utanför normal arbetstid eller arbetsflöden.
  • av typer som inte används i din miljö.
  • har lagts till i ett icke-SAML-flöde som stöder tjänstens huvudnamn.
  • Autentiseringsuppgifter med en livslängd som är längre än vad dina principer tillåter. Medel Microsoft Graph Tillstånd och slutdatum för autentiseringsuppgifter för programnyckel
    -and-
    Autentiseringsuppgifter för programlösenord
    Du kan använda MS Graph-API för att hitta start- och slutdatum för autentiseringsuppgifter och utvärdera dem med en längre livslängd än den tillåtna livslängden. Se PowerShell-skript efter den här tabellen.

    Följande färdiga övervakning och aviseringar är tillgängliga.

    Programbehörigheter

    Precis som ett administratörskonto kan program tilldelas privilegierade roller. Appar kan tilldelas Azure AD-roller, till exempel global administratör eller Azure RBAC-roller som prenumerationsägare. Eftersom de kan köras utan en användare som finns och som en bakgrundstjänst bör du noggrant övervaka när ett program beviljas en privilegierad roll eller behörighet.

    Tjänstens huvudnamn som tilldelats till en roll

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    App tilldelad till Azure RBAC-roll eller Azure AD-roll Hög till medel Azure AD-granskningsloggar Typ: tjänstens huvudnamn
    Aktivitet: "Lägg till medlem i roll" eller "Lägg till berättigad medlem till roll"
    - eller -
    "Lägg till omfångsmedlem till roll."
    För mycket privilegierade roller som global administratör är risken hög. Risken för lägre privilegierade roller är medelhög. Avisering varje gång ett program tilldelas till en Azure-roll eller Azure AD-roll utanför normala procedurer för ändringshantering eller konfiguration.

    Program som beviljats behörigheter med hög behörighet

    Program bör också följa huvudprincipen för minsta behörighet. Undersök programbehörigheter för att se till att de verkligen behövs. Du kan skapa en rapport för att bevilja appmedgivande för att identifiera befintliga program och markera privilegierade behörigheter.

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Appen har beviljats behörigheter med hög behörighet, till exempel behörigheter med ". Alla" (Directory.ReadWrite.All) eller omfattande behörigheter (E-post.) Högt Azure AD-granskningsloggar "Lägg till approlltilldelning till tjänstens huvudnamn",
    – var-
    Mål identifierar ett API med känsliga data (till exempel Microsoft Graph)
    -and-
    AppRole.Value identifierar en programbehörighet med hög behörighet (approll).
    Appar beviljas breda behörigheter, till exempel ". Alla" (Directory.ReadWrite.All) eller omfattande behörigheter (E-post.)
    Administratören beviljar antingen programbehörigheter (approller) eller mycket privilegierade delegerade behörigheter Högt Microsoft 365 portal "Lägg till approlltilldelning till tjänstens huvudnamn",
    -where-
    Mål identifierar ett API med känsliga data (till exempel Microsoft Graph)
    "Lägg till delegerat behörighets beviljande",
    -where-
    Mål identifierar ett API med känsliga data (till exempel Microsoft Graph)
    -and-
    DelegatedPermissionGrant.Scope innehåller behörigheter med hög behörighet.
    Avisering när en global administratör, programadministratör eller molnprogramadministratör godkänner ett program. Leta särskilt efter medgivande utanför normal aktivitet och ändringsprocedurer.
    Programmet beviljas behörigheter för Microsoft Graph, Exchange, SharePoint eller Azure AD. Högt Azure AD-granskningsloggar "Lägg till delegerad behörighets grant"
    - eller -
    "Lägg till approlltilldelning till tjänstens huvudnamn",
    -where-
    Mål identifierar ett API med känsliga data (till exempel Microsoft Graph, Exchange Online och så vidare)
    Avisering som på föregående rad.
    Programbehörigheter (approller) för andra API:er beviljas Medel Azure AD-granskningsloggar "Lägg till approlltilldelning till tjänstens huvudnamn",
    -where-
    Mål identifierar alla andra API:er.
    Avisering som på föregående rad.
    Delegerade behörigheter med hög behörighet beviljas för alla användares räkning Högt Azure AD-granskningsloggar "Lägg till beviljad behörighet", där mål identifierar ett API med känsliga data (till exempel Microsoft Graph)
    DelegatedPermissionGrant.Scope innehåller behörigheter med hög behörighet,
    -and-
    DelegatedPermissionGrant.ConsentType är "AllPrincipals".
    Avisering som på föregående rad.

    Mer information om hur du övervakar appbehörigheter finns i den här självstudien: Undersöka och åtgärda riskfyllda OAuth-appar.

    Azure Key Vault

    Azure Key Vault kan användas för att lagra din klients hemligheter. Vi rekommenderar att du är särskilt uppmärksam på eventuella ändringar Key Vault konfiguration och aktiviteter.

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Hur och när dina nyckelvalv används och av vem Medel Azure Key Vault loggar Resurstyp: Nyckelvalv Titta efter
  • all åtkomst till Key Vault utanför vanliga processer och timmar.
  • eventuella ändringar i Key Vault ACL.
  • När du har konfigurerat Azure Key Vault måste du aktivera loggning ,som visar hur och när dina nyckelvalv används och konfigurera aviseringar på Key Vault för att meddela tilldelade användare eller distributionslistor via e-post, telefonsamtal, SMS eller Event Grid-meddelande om hälsotillståndet påverkas. Genom att konfigurera övervakning med Key Vault Insights får du dessutom en ögonblicksbild av Key Vault, prestanda, fel och svarstider. Log Analytics har också några exempelfrågor för Azure Key Vault som kan nås när du har valt Key Vault och sedan under "Övervakning" och valt "Loggar".

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Slutanvändares medgivande till programmet Låg Azure AD-granskningsloggar Aktivitet: Medgivande till program/ConsentContext.IsAdminConsent = false Titta efter:
  • hög profil eller konton med hög privilegier.
  • appen begär högriskbehörigheter
  • appar med misstänkta namn, till exempel generiska, felstavade osv.
  • Medgivande till ett program är inte i sig skadligt. Undersök dock nya medgivanden för slutanvändare som söker efter misstänkta program. Du kan begränsa åtgärder för användarmedgivande.

    Mer information om medgivandeåtgärder finns i följande resurser:

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Slutanvändares medgivande stoppades på grund av riskbaserat medgivande Medel Azure AD-granskningsloggar Core Directory/ApplicationManagement/Medgivande till program
    Felstatusorsak = Microsoft.online.Security.userConsent
    BlockedForRiskyAppsExceptions
    Övervaka och analysera varje gång medgivande stoppas på grund av risk. Titta efter:
  • hög profil eller hög privilegierade konton.
  • appen begär högriskbehörigheter
  • appar med misstänkta namn, till exempel generiska, felstavade osv.
  • Ändringar i programkonfigurationen

    Övervaka ändringar i alla programkonfigurationer. Mer specifikt ändras konfigurationen till URI (Uniform Resource Identifier), ägarskap och utloggnings-URL.

    Dinglande URI- och omdirigerings-URI-ändringar

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Dinglings-URI Högt Azure AD-loggar och programregistrering Service-Core Directory, Category-ApplicationManagement
    Aktivitet: Uppdatera program
    Lyckades – Egenskapsnamn AppAddress
    Leta efter dingling URI:er, till exempel som pekar på ett domännamn som inte längre finns eller ett som du inte uttryckligen äger.
    Ändringar i omdirigerings-URI-konfiguration Högt Azure AD-loggar Service-Core Directory, Category-ApplicationManagement
    Aktivitet: Uppdatera program
    Lyckades – Egenskapsnamn AppAddress
    Leta efter URI:er som inte använder HTTPS*, URI:er med jokertecken i slutet eller domänen för URL:en, URI:er som INTE är unika för programmet, URI:er som pekar på en domän som du inte styr.

    Avisering varje gång dessa ändringar identifieras.

    AppID-URI har lagts till, ändrats eller tagits bort

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Ändringar i AppID-URI Högt Azure AD-loggar Service-Core Directory, Category-ApplicationManagement
    Aktivitet: Uppdatera
    Program
    Aktivitet: Uppdatera tjänstens huvudnamn
    Leta efter eventuella AppID URI-ändringar, till exempel att lägga till, ändra eller ta bort URI:en.

    Avisering varje gång dessa ändringar identifieras utanför godkända procedurer för ändringshantering.

    Ny ägare

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Ändringar av programägarskap Medel Azure AD-loggar Service-Core Directory, Category-ApplicationManagement
    Aktivitet: Lägg till ägare till program
    Leta efter alla instanser av en användare som läggs till som programägare utanför normala aktiviteter för ändringshantering.

    Utloggnings-URL har ändrats eller tagits bort

    Vad som ska övervakas Risknivå Var Filter/underfilter Kommentarer
    Ändringar i utloggnings-URL Låg Azure AD-loggar Service-Core Directory, Category-ApplicationManagement
    Aktivitet: Uppdatera program
    -and-
    Aktivitet: Uppdatera tjänstens huvudprincip
    Leta efter eventuella ändringar i en ut logga ut-URL. Tomma poster eller poster på obefintliga platser skulle hindra en användare från att avsluta en session.

    Ytterligare resurser

    Följande är länkar till användbara resurser:

    Konfigurationsinformation för Azure AD-övervakning för SIEM –Partnerverktyg med Azure Monitor integrering

    Nästa steg

    Se dessa artiklar om säkerhetsdriftsguide:

    Översikt över Azure AD-säkerhetsåtgärder

    Säkerhetsåtgärder för användarkonton

    Säkerhetsåtgärder för privilegierade konton

    Säkerhetsåtgärder för Privileged Identity Management

    Säkerhetsåtgärder för program

    Säkerhetsåtgärder för enheter

    Säkerhetsåtgärder för infrastruktur