Ange säkerhetskrav för containrar och containerorkestrering

Slutförd

Den här lektionen sammanfattar Azures säkerhetsbaslinje för Azure Kubernetes Service. För områden där det finns många kontroller har vi bara tagit med de fem första som nämndes.

Mer bakgrund om Microsoft Cloud Security Benchmark finns i Introduktion till Microsofts referensarkitektur för cybersäkerhet och molnsäkerhet.

I tabellen nedan har vi inkluderat kontroller från den fullständiga baslinjen där:

  • Säkerhetskontroller stöds men är inte aktiverade som standard
  • Det fanns uttrycklig vägledning som innehöll åtgärder som skulle vidtas från kundens sida
Ytdiagram Ctrl Vägledningssammanfattning
Nätverkssäkerhet 1.1: Skydda Azure-resurser i virtuella nätverk Som standard skapas en nätverkssäkerhetsgrupp och routningstabell automatiskt när ett AkS-kluster (Microsoft Azure Kubernetes Service) skapas. AKS ändrar automatiskt nätverkssäkerhetsgrupper för lämpligt trafikflöde när tjänster skapas med lastbalanserare, portmappningar eller inkommande vägar.
1.2: Övervaka och logga konfigurationen och trafiken för virtuella nätverk, undernät och nätverkskort Använd Microsoft Defender för molnet och följ dess nätverksskyddsrekommendationer för att skydda de nätverksresurser som används av dina AkS-kluster (Azure Kubernetes Service).
1.3: Skydda kritiska webbprogram Använd en Azure Application Gateway-aktiverad brandvägg för webbaserade program (WAF) framför ett AKS-kluster för att ge ytterligare ett säkerhetslager genom att filtrera inkommande trafik till dina webbprogram. Azure WAF använder en uppsättning regler som tillhandahålls av Open Web Application Security Project (OWASP) för attacker, till exempel skript mellan webbplatser eller cookieförgiftning mot den här trafiken.
1.4: Neka kommunikation med kända skadliga IP-adresser Aktivera Standardskydd för Microsoft Distributed Denial-of-Service (DDoS) på de virtuella nätverk där Azure Kubernetes Service-komponenter (AKS) distribueras för skydd mot DDoS-attacker.
1.5: Registrera nätverkspaket Använd Network Watcher-paketinsamling som krävs för att undersöka avvikande aktivitet.
Loggning och övervakning 2.1: Använd godkända tidssynkroniseringskällor Azure Kubernetes Service-noder (AKS) använder ntp.ubuntu.com för tidssynkronisering, tillsammans med UDP-port 123 och NTP (Network Time Protocol).
2.2: Konfigurera central hantering av säkerhetsloggar Aktivera granskningsloggar från Azure Kubernetes Services (AKS) huvudkomponenter, kube-apiserver och kube-controller-manager, som tillhandahålls som en hanterad tjänst.
2.3: Aktivera granskningsloggning för Azure-resurser Använd aktivitetsloggar för att övervaka åtgärder på AKS-resurser (Azure Kubernetes Service) för att visa all aktivitet och deras status.
2.4: Samla in säkerhetsloggar från operativsystem Aktivera automatisk installation av Log Analytics-agenter för insamling av data från AKS-klusternoderna. Aktivera även automatisk etablering av Azure Log Analytics-övervakningsagenten från Microsoft Defender för molnet, som standard är automatisk etablering inaktiverad.
2.5: Konfigurera kvarhållning av säkerhetslogglagring Registrera dina Azure Kubernetes Service-instanser (AKS) till Azure Monitor och ange motsvarande kvarhållningsperiod för Azure Log Analytics-arbetsytan enligt organisationens efterlevnadskrav.
Identitets- och åtkomstkontroll 3.1: Upprätthålla en inventering av administrativa konton Själva Azure Kubernetes Service (AKS) tillhandahåller ingen identitetshanteringslösning som lagrar vanliga användarkonton och lösenord. Med Microsoft Entra-integrering kan du ge användare eller grupper åtkomst till Kubernetes-resurser inom ett namnområde eller i hela klustret.
3.2: Ändra standardlösenord där det är tillämpligt Azure Kubernetes Service (AKS) har inte begreppet vanliga standardlösenord och tillhandahåller ingen identitetshanteringslösning där vanliga användarkonton och lösenord kan lagras. Med Microsoft Entra-integrering kan du bevilja rollbaserad åtkomst till AKS-resurser inom ett namnområde eller i hela klustret.
3.3: Använd dedikerade administrativa konton Integrera användarautentisering för dina AKS-kluster (Azure Kubernetes Service) med Microsoft Entra-ID. Logga in på ett AKS-kluster med en Microsoft Entra-autentiseringstoken.
3.4: Använd enkel inloggning (SSO) med Microsoft Entra ID Använd enkel inloggning för Azure Kubernetes Service (AKS) med Microsoft Entra-integrerad autentisering för ett AKS-kluster.
3.5: Använd multifaktorautentisering för all Microsoft Entra-ID-baserad åtkomst Integrera autentisering för Azure Kubernetes Service (AKS) med Microsoft Entra-ID.
Dataskydd 4.1: Upprätthålla en inventering av känslig information Vägledning: Använda taggar för resurser som är relaterade till Azure Kubernetes Service-distributioner (AKS) för att spåra Azure-resurser som lagrar eller bearbetar känslig information.
4.2: Isolera system som lagrar eller bearbetar känslig information Isolera team och arbetsbelastningar logiskt i samma kluster med Azure Kubernetes Service (AKS) för att ge minst antal privilegier, begränsade till de resurser som krävs av varje team.
4.3: Övervaka och blockera obehörig överföring av känslig information Använd en tredjepartslösning från Azure Marketplace på nätverksperimeter som övervakar obehörig överföring av känslig information och blockerar sådana överföringar samtidigt som informationssäkerhetspersonal varnas.
4.4: Kryptera all känslig information under överföring Skapa en HTTPS-ingresskontrollant och använd dina egna TLS-certifikat (eller eventuellt Let's Encrypt) för dina Azure Kubernetes Service-distributioner (AKS).
4.5: Använd ett aktivt identifieringsverktyg för att identifiera känsliga data Funktioner för dataidentifiering, klassificering och förlustskydd är ännu inte tillgängliga för Azure Storage- eller beräkningsresurser. Implementera en lösning från tredje part om det behövs i efterlevnadssyfte. Microsoft hanterar den underliggande plattformen och behandlar allt kundinnehåll som känsligt och gör stora åtgärder för att skydda mot förlust och exponering av kunddata.
Sårbarhetshantering 5.1: Kör automatiserade verktyg för sårbarhetsgenomsökning Använd Microsoft Defender för molnet för att övervaka ditt Azure Container Registry, inklusive Azure Kubernetes Service-instanser (AKS) för sårbarheter. Aktivera containerregisterpaketet i Microsoft Defender för molnet för att säkerställa att Microsoft Defender för molnet är redo att skanna avbildningar som skickas till registret.
5.2: Distribuera en lösning för automatisk uppdatering av operativsystemet Säkerhetsuppdateringar tillämpas automatiskt på Linux-noder för att skydda kundens AKS-kluster (Azure Kubernetes Service). Dessa uppdateringar omfattar os-säkerhetskorrigeringar eller kerneluppdateringar. Observera att processen för att hålla Windows Server-noder uppdaterade skiljer sig från noder som kör Linux eftersom Windows Server-noder inte får dagliga uppdateringar.
5.3: Distribuera en automatiserad korrigeringshanteringslösning för programvarutitlar från tredje part Implementera en manuell process för att säkerställa att AKS-klusternodens program från tredje part förblir korrigerade under hela klusterlivslängden. Detta kan kräva aktivering av automatiska uppdateringar, övervakning av noderna eller periodiska omstarter.
5.4: Jämför sårbarhetssökningar från back-to-back Exportera Microsoft Defender for Cloud-genomsökningsresultat med konsekventa intervall och jämför resultaten för att kontrollera att säkerhetsrisker har åtgärdats.
5.5: Använd en riskklassificeringsprocess för att prioritera reparation av identifierade sårbarheter Använd allvarlighetsgraden som tillhandahålls av Microsoft Defender för molnet för att prioritera reparationen av säkerhetsrisker.
Inventerings- och tillgångshantering 6.1: Använd en automatiserad lösning för identifiering av tillgångar Använd Azure Resource Graph för att fråga/identifiera alla resurser (till exempel beräkning, lagring, nätverk och så vidare) i dina prenumerationer. Se till att du har lämpliga (läsbehörigheter) i din klientorganisation och kan räkna upp alla Azure-prenumerationer samt resurser i dina prenumerationer.
6.2: Underhålla tillgångsmetadata Använd taggar för Azure-resurser med metadata för att logiskt organisera dem i en taxonomi.
6.3: Ta bort obehöriga Azure-resurser Använd taggning, hanteringsgrupper och separata prenumerationer, där det är lämpligt, för att organisera och spåra tillgångar.
6.4: Definiera och underhålla en inventering av godkända Azure-resurser Definiera en lista över godkända Azure-resurser och godkänd programvara för beräkningsresurser baserat på organisationens affärsbehov.
6.5: Övervaka för ej godkända Azure-resurser Använd Azure Policy för att ange begränsningar för vilken typ av resurser som kan skapas i kundprenumerationer med hjälp av följande inbyggda principdefinitioner: Inte tillåtna resurstyper, Tillåtna resurstyper
Säker konfiguration 7.1: Upprätta säkra konfigurationer för alla Azure-resurser Använd Azure Policy-alias i namnområdet "Microsoft.ContainerService" för att skapa anpassade principer för att granska eller framtvinga konfigurationen av dina Azure Kubernetes Service-instanser (AKS). Använd inbyggda Azure Policy-definitioner.
7.2: Upprätta säkra operativsystemkonfigurationer AkS-kluster (Azure Kubernetes Clusters) distribueras på virtuella värddatorer med ett säkerhetsoptimerat operativsystem. Värdoperativsystemet har ytterligare säkerhetshärdningssteg som ingår i det för att minska attackytan och möjliggör distribution av containrar på ett säkert sätt.
7.3: Underhålla säkra Azure-resurskonfigurationer Skydda ditt AKS-kluster (Azure Kubernetes Service) med hjälp av poddsäkerhetsprinciper. Begränsa vilka poddar som kan schemaläggas för att förbättra säkerheten för klustret.
7.4: Underhålla säkra operativsystemkonfigurationer Azure Kubernetes Service-kluster (AKS) distribueras på virtuella värddatorer med ett säkerhetsoptimerat operativsystem. Värdoperativsystemet har ytterligare säkerhetshärdningssteg som ingår i det för att minska attackytan och möjliggör distribution av containrar på ett säkert sätt.
7.5: Lagra konfigurationen av Azure-resurser på ett säkert sätt Använd Azure Repos för att lagra och hantera dina konfigurationer på ett säkert sätt om du använder anpassade Azure Policy-definitioner. Exportera en mall för din AKS-konfiguration (Azure Kubernetes Service) i JavaScript Object Notation (JSON) med Azure Resource Manager.
Skydd mot skadlig kod 8.1: Använd centralt hanterad programvara mot skadlig kod AKS hanterar livscykeln och driften av agentnoder åt dig – det går inte att ändra de IaaS-resurser som är associerade med agentnoderna. För Linux-noder kan du dock använda daemonuppsättningar för att installera anpassad programvara som en lösning mot skadlig kod.
8.2: Förgenomsöka filer som ska laddas upp till azure-resurser som inte beräknas Förgenomsök alla filer som laddas upp till dina AKS-resurser. Använd Microsoft Defender för molnets hotidentifiering för datatjänster för att identifiera skadlig kod som laddats upp till lagringskonton om du använder ett Azure Storage-konto som ett datalager eller för att spåra Terraform-tillstånd för ditt AKS-kluster.
8.3: Se till att program och signaturer mot skadlig kod uppdateras AKS hanterar livscykeln och driften av agentnoder åt dig – det går inte att ändra de IaaS-resurser som är associerade med agentnoderna. För Linux-noder kan du dock använda daemonuppsättningar för att installera anpassad programvara som en lösning mot skadlig kod.
Dataåterställning 9.1: Se till att regelbundna automatiserade säkerhetskopieringar Säkerhetskopiera dina data med ett lämpligt verktyg för din lagringstyp, till exempel Velero, som kan säkerhetskopiera beständiga volymer tillsammans med ytterligare klusterresurser och konfigurationer. Verifiera regelbundet integriteten och säkerheten för dessa säkerhetskopior.
9.2: Utför fullständiga systemsäkerhetskopior och säkerhetskopiera alla kundhanterade nycklar Säkerhetskopiera dina data med ett lämpligt verktyg för din lagringstyp, till exempel Velero, som kan säkerhetskopiera beständiga volymer tillsammans med ytterligare klusterresurser och konfigurationer.
9.3: Verifiera alla säkerhetskopior, inklusive kundhanterade nycklar Utför regelbundet dataåterställning av innehåll i Velero Backup. Om det behövs testar du återställningen till ett isolerat virtuellt nätverk.
9.4: Se till att säkerhetskopior och kundhanterade nycklar skyddas Säkerhetskopiera dina data med ett lämpligt verktyg för din lagringstyp, till exempel Velero, som kan säkerhetskopiera beständiga volymer tillsammans med ytterligare klusterresurser och konfigurationer.
Incidentsvar 10.1: Skapa en guide för incidenthantering Skapa en guide för incidenthantering för din organisation. Se till att det finns skriftliga planer för incidenthantering som definierar alla roller för personal samt faser av incidenthantering/hantering från identifiering till granskning efter incident.
10.2: Skapa en incidentbedömnings- och prioriteringsprocedur Prioritera vilka aviseringar som måste undersökas först med Microsoft Defender för molnet tilldelad allvarlighetsgrad till aviseringar. Allvarlighetsgraden baseras på hur säker Microsoft Defender för molnet är på sökningen eller den analys som används för att utfärda aviseringen samt konfidensnivån att det fanns skadlig avsikt bakom aktiviteten som ledde till aviseringen.
10.3: Testa procedurer för säkerhetshantering Utför övningar för att testa systemens incidenthanteringsfunktioner med jämna mellanrum. Identifiera svaga punkter och luckor och revidera incidenthanteringsplaner efter behov.
10.4: Ange kontaktuppgifter för säkerhetsincidenter och konfigurera aviseringsmeddelanden för säkerhetsincidenter Kontaktinformation för säkerhetsincidenter kommer att användas av Microsoft för att kontakta dig om Microsoft Security Response Center (MSRC) upptäcker att kundens data har använts av en olaglig eller obehörig part.
10.5: Införliva säkerhetsaviseringar i ditt incidenthanteringssystem Exportera Aviseringar och rekommendationer för Microsoft Defender för molnet med hjälp av funktionen Kontinuerlig export. Med kontinuerlig export kan du exportera aviseringar och rekommendationer manuellt eller kontinuerligt.
Intrångstester och Red Team-övningar (rött lag) 11.1: Utför regelbundna intrångstester av dina Azure-resurser och se till att alla kritiska säkerhetsresultat åtgärdas Följ Microsofts regler för engagemang för att se till att intrångstesterna inte bryter mot Microsofts principer.