Aanbevelingen voor het beveiligen van resources

Van toepassing op deze aanbeveling voor de controlelijst voor beveiliging van Azure Well-Architected Framework:

SE:08 Behard alle workloadonderdelen door overbodige oppervlakten te verminderen en configuraties aan te scherpen om de kosten van aanvallers te verhogen.

In deze handleiding worden de aanbevelingen beschreven voor het beveiligen van resources door gelokaliseerde besturingselementen binnen een workload te ontwikkelen en deze te onderhouden om bestand te zijn tegen herhaalde aanvallen.

Beveiligingsbeveiliging is een opzettelijke oefening voor zelfbehoud. Het doel is om de kwetsbaarheid voor aanvallen te verminderen en de kosten van aanvallers op andere gebieden te verhogen, waardoor kwaadwillende actoren minder mogelijkheden hebben om misbruik te maken van beveiligingsproblemen. Implementeer best practices en configuraties voor beveiliging om uw workload te beschermen.

Beveiligingsbeveiliging is een doorlopend proces dat continue bewaking en aanpassing aan veranderende bedreigingen en beveiligingsproblemen vereist.

Definities

Termijn Definitie
Beperking De praktijk van het verminderen van een kwetsbaarheid voor aanvallen door overbodige resources te verwijderen of configuraties aan te passen.
Paw (Privileged Access Workstation) Een toegewezen en veilige machine die u gebruikt om gevoelige taken uit te voeren, waardoor het risico op inbreuk wordt verkleind.
Beveiligd beheerwerkstation (SAW) Een gespecialiseerde PAW die wordt gebruikt door kritieke impactaccounts.
Oppervlakte Een logische footprint van een workload die beveiligingsproblemen bevat.

Belangrijke ontwerpstrategieën

Beveiligingsbeveiliging is een zeer gelokaliseerde oefening die de besturingselementen op onderdeelniveau versterkt, of het nu gaat om resources of processen. Wanneer u de beveiliging van elk onderdeel aanscherpt, verbetert dit de aggregatiebeveiligingsgarantie van uw workload.

Beveiligingsbeveiliging houdt geen rekening met de functionaliteit van de workload en detecteert geen bedreigingen en voert geen geautomatiseerde scan uit. Beveiligingsbeveiliging is gericht op het afstemmen van configuraties met een mentaliteit van overschrijding en diepgaande verdediging. Het doel is om het moeilijk te maken voor een aanvaller om controle over een systeem te krijgen. De beveiliging mag het beoogde hulpprogramma van een workload of de bijbehorende bewerkingen niet wijzigen.

De eerste stap van het hardeningsproces is het verzamelen van een uitgebreide inventaris van alle hardware, software en gegevensassets. Houd uw voorraadrecords up-to-date door nieuwe activa toe te voegen en buiten gebruik gestelde activa te verwijderen. Houd rekening met de volgende aanbevolen procedures voor alle assets in uw inventaris:

  • Verklein de voetafdruk. Verwijder overbodige oppervlakte of verklein het bereik. Verwijder eenvoudige doelen of goedkope en goed gevestigde aanvalsvectoren, zoals niet-gepatchte software-aanvallen en beveiligingsaanvallen. Voorafgaand aan de productie-implementatie moet u identiteiten, buildonderdelen en andere niet-benodigde assets uit de bronstructuur opschonen.

  • Configuraties afstemmen. Evalueer en draai het resterende oppervlak aan. Wanneer resources zijn beveiligd, zijn beproefde en geteste methoden die aanvallers gebruiken, niet meer succesvol. Het dwingt aanvallers om geavanceerde of niet-geteste aanvalsmethoden te verkrijgen en te gebruiken, waardoor hun kosten toenemen.

  • Behoud verdediging. Behoud beschermende maatregelen door continue bedreigingsdetectie uit te voeren om ervoor te zorgen dat hardingsinspanningen in de loop van de tijd betrouwbaar zijn.

Houd ook rekening met de volgende factoren.

Vertrouwde bron. Een onderdeel van de hardening-oefening omvat de toeleveringsketen van software. In deze richtlijnen wordt ervan uitgegaan dat alle onderdelen zijn verkregen uit vertrouwde bronnen. Uw organisatie moet software goedkeuren die is aangeschaft bij externe leveranciers. Deze goedkeuring is van toepassing op bronnen van het besturingssysteem, installatiekopieën en andere hulpprogramma's van derden. Zonder vertrouwde resources kan beveiliging een oneindige afvoer zijn van beveiligingsgaranties op niet-vertrouwde bronnen.

Zie Aanbevelingen voor het beveiligen van een ontwikkelingslevenscyclus voor aanbevelingen over beveiliging voor uw toeleveringsketen.

Opleiding. Hardening is een gespecialiseerde vaardigheid. Het is methodisch en vereist een hoog niveau van competentie. U moet de functionaliteit van een onderdeel begrijpen en weten hoe wijzigingen van invloed zijn op het onderdeel. Een teamlid moet de richtlijnen van branche-experts en het platform kunnen onderscheiden om deze te onderscheiden van de richtlijnen van onzekere bronnen. Informeer uw teamleden over het creëren van een beveiligingsbewuste cultuur. Zorg ervoor dat uw team bedreven is in aanbevolen beveiligingsprocedures, zich bewust is van mogelijke bedreigingen en leert van retrospectieven na incidenten.

Documentatie. Documenteer en publiceer beveiligingsvereisten, beslissingen en gedefinieerde methoden. Voor transparantie documenteert u ook uitzonderingen of afwijkingen van deze vereisten.

Hardening kan omslachtig zijn, maar het is een cruciale beveiligingsoefening die u moet documenteren. Verstevig eerst de kernonderdelen en breid vervolgens uit naar andere gebieden, zoals geautomatiseerde processen en menselijke processen, om potentiële hiaten te dichten. Wees zorgvuldig bij wijzigingen. Een noodzakelijke stap is bijvoorbeeld het uitschakelen van de standaardinstellingen, omdat wijzigingen in standaardwaarden geen invloed kunnen hebben op de stabiliteit van het systeem. Zelfs als de vervangende configuratie hetzelfde is als de standaardconfiguratie, moet deze worden gedefinieerd. In de volgende secties worden algemene doelen voor beveiliging beschreven. Evalueer de belangrijkste ontwerpgebieden van uw workload en volg de belangrijkste strategieën om te beveiligen op onderdeelniveau.

Netwerken

Verdeel het netwerk in segmenten om kritieke assets en gevoelige gegevens te isoleren van minder veilige assets, waardoor laterale verplaatsingen door aanvallers worden verminderd. In deze segmenten past u een standaardbenadering voor weigeren toe. Voeg alleen toegang toe aan de acceptatielijst als dit is gerechtvaardigd.

Schakel poorten en protocollen uit die niet actief worden gebruikt. Als u bijvoorbeeld op Azure App Service niet via FTP hoeft te implementeren, kunt u dit uitschakelen. Of als u beheerbewerkingen uitvoert via een intern netwerk, kunt u beheerderstoegang via internet uitschakelen.

Verouderde protocollen verwijderen of uitschakelen. Aanvallers misbruiken systemen die gebruikmaken van oude versies. Gebruik een Azure-detectieservice om logboeken te controleren en het protocolgebruik te bepalen. Het kan lastig zijn om protocollen te verwijderen, omdat dit de functionaliteit van het systeem kan verstoren. Test alle wijzigingen vóór de implementatie om het risico op operationele onderbrekingen te beperken.

Behandel openbare IP-adressen (PIP) als activa met een hoog risico , omdat ze gemakkelijk toegankelijk zijn en een breed wereldwijd bereik hebben. Verwijder onnodige internettoegang tot de workload om de blootstelling te verminderen. Gebruik gedeelde openbare IP-adressen die Microsoft-services, zoals Azure Front Door, bieden. Deze services zijn ontworpen om internetgericht te zijn en ze blokkeren de toegang tot niet-toegestane protocollen. Veel van dergelijke services voeren initiële controles uit op binnenkomende aanvragen aan de netwerkrand. Met een toegewezen PIP bent u verantwoordelijk voor het beheren van de beveiligingsaspecten, het toestaan of blokkeren van poorten en het scannen van binnenkomende aanvragen om de geldigheid ervan te controleren.

Voor internetgerichte toepassingen beperkt u de toegang door een laag-7-service toe te voegen waarmee ongeldig verkeer kan worden gefilterd. Verken systeemeigen services die DDoS-beveiliging (gedistribueerde denial-of-service) afdwingen, webtoepassingsfirewalls hebben en beveiliging bieden aan de rand voordat verkeer de toepassingslaag bereikt.

Dns-beveiliging (Domain Name System) is een andere netwerkbeveiligingspraktijk. Om ervoor te zorgen dat de DNS-infrastructuur veilig is, raden we u aan vertrouwde DNS-resolvers te gebruiken. Als u informatie van DNS-resolvers wilt valideren en een extra beveiligingslaag wilt bieden, gebruikt u indien mogelijk een DNS-beveiligingsprotocol voor zeer gevoelige DNS-zones. Om aanvallen zoals vergiftiging van DNS-cache, DDoS-aanvallen en versterkingsaanvallen te voorkomen, verkent u andere DNS-gerelateerde beveiligingsmechanismen, zoals het beperken van queryfrequenties, het beperken van de reactiesnelheid en DNS-cookies.

Identiteit

Verwijder ongebruikte of standaardaccounts. Schakel ongebruikte verificatie- en autorisatiemethoden uit.

Schakel verouderde verificatiemethoden uit omdat ze vaak aanvalsvectoren zijn. Oude protocollen hebben vaak geen maatregelen tegen aanvallen, zoals accountvergrendelingen. Externaliseer uw verificatievereisten naar uw id-provider (IdP), zoals Microsoft Entra ID.

Geef de voorkeur aan federatie boven het maken van dubbele identiteiten. Als een identiteit is gecompromitteerd, is het eenvoudiger om de toegang in te trekken wanneer deze centraal wordt beheerd.

Inzicht in platformmogelijkheden voor verbeterde verificatie en autorisatie. Be perk de toegangsbeheer door gebruik te maken van meervoudige verificatie, verificatie zonder wachtwoord, voorwaardelijke toegang en andere functies die Microsoft Entra ID biedt om de identiteit te verifiëren. U kunt extra beveiliging toevoegen voor aanmeldingsgebeurtenissen en het bereik beperken waarin een aanvaller een aanvraag kan indienen.

Gebruik waar mogelijk beheerde identiteiten en workloadidentiteiten zonder referenties. Referenties kunnen worden gelekt. Zie Aanbevelingen voor het beveiligen van toepassingsgeheimen voor meer informatie.

Gebruik de methode met minimale bevoegdheden voor uw beheerprocessen. Verwijder onnodige roltoewijzingen en voer regelmatig Microsoft Entra toegangsbeoordelingen uit. Gebruik beschrijvingen van roltoewijzingen om een papieren spoor van redenen bij te houden, wat van cruciaal belang is voor audits.

Cloudresources

De voorgaande aanbevelingen voor beveiliging van netwerken en identiteit zijn van toepassing op afzonderlijke cloudservices. Voor netwerken moet u speciale aandacht besteden aan firewalls op serviceniveau en de bijbehorende regels voor binnenkomend verkeer evalueren.

Ontdek en schakel ongebruikte functies of functies uit, zoals ongebruikte gegevensvlaktoegang en productfuncties, die mogelijk door andere onderdelen worden behandeld. App Service ondersteunt bijvoorbeeld Kudu, dat FTP-implementaties, externe foutopsporing en andere functies biedt. Als u deze functies niet nodig hebt, schakelt u ze uit.

Blijf altijd op de hoogte van de Azure-roadmap en de workloadroadmap. Patches en versiebeheerupdates toepassen die Azure-services bieden. Sta door het platform geleverde updates toe en abonneer u op geautomatiseerde updatekanalen.

Risico: Cloudresources hebben vaak vereisten voor toegestane machtigingen of moeten worden uitgevoerd in gedocumenteerde configuraties om als ondersteund te worden beschouwd. Sommige beveiligingstechnieken, zoals het agressief blokkeren van uitgaand verkeer, kunnen ertoe leiden dat een service buiten een ondersteunde configuratie valt, zelfs als de service normaal werkt. Krijg inzicht in de runtimevereisten van elke cloudresource van uw platform om ervoor te zorgen dat u ondersteuning voor die resource behoudt.

Toepassingen

Evalueer gebieden waar uw toepassing onbedoeld informatie kan lekken. Stel dat u een API hebt waarmee gebruikersgegevens worden opgehaald. Een aanvraag kan een geldige gebruikers-id hebben en uw toepassing retourneert een 403-fout. Maar met een ongeldige klant-id retourneert de aanvraag een 404-fout. Vervolgens lekt u in feite informatie over uw gebruikers-id's.

Er kunnen subtielere gevallen zijn. De reactielatentie met een geldige gebruikers-id is bijvoorbeeld hoger dan een ongeldige klant-id.

Overweeg toepassingsbeveiliging te implementeren op de volgende gebieden:

  • Invoervalidatie en opschoning: voorkom injectieaanvallen zoals SQL-injectie en CROSS-site scripting (XSS) door alle gebruikersinvoer te valideren en op teschonen. Automatiseer het opschonen van invoer met behulp van invoervalidatiebibliotheken en -frameworks.

  • Sessiebeheer: beveilig sessie-id's en tokens tegen diefstal of sessiefixatieaanvallen met behulp van beveiligde sessiebeheertechnieken. Implementeer sessietime-outs en dwing opnieuw verificatie af voor gevoelige acties.

  • Foutbeheer: implementeer aangepaste foutafhandeling om het blootstellen van gevoelige informatie aan aanvallers te minimaliseren. Registreer fouten veilig en bewaak deze logboeken op verdachte activiteiten.

  • HTTP-beveiligingsheaders: beperk veelvoorkomende beveiligingsproblemen op het web door gebruik te maken van beveiligingsheaders in HTTP-antwoorden, zoals het Content Security Policy (CSP), X-Content-Type-Options en X-Frame-Options.

  • API-beveiliging: beveilig uw API's met de juiste verificatie- en autorisatiemechanismen. Als u de beveiliging verder wilt verbeteren, implementeert u snelheidsbeperking, aanvraagvalidatie en toegangsbeheer voor API-eindpunten.

Volg de procedures voor veilig coderen wanneer u toepassingen ontwikkelt en onderhoudt. Voer regelmatig codebeoordelingen uit en scan toepassingen op beveiligingsproblemen. Zie Aanbevelingen voor het beveiligen van een ontwikkelingslevenscyclus voor meer informatie.

Beheerbewerkingen

Behard ook andere niet-runtime-resources. Verminder bijvoorbeeld uw footprint voor buildbewerkingen door een inventarisatie van alle assets te maken en ongebruikte assets uit uw pijplijn te verwijderen. Haal vervolgens taken op die zijn gepubliceerd door vertrouwde bronnen en voer alleen taken uit die zijn gevalideerd.

Bepaal of u door Microsoft gehoste of zelf-hostende buildagents nodig hebt. Zelf-hostende buildagents hebben extra beheer nodig en moeten worden beveiligd.

Implementeer vanuit het perspectief van waarneembaarheid een proces voor het controleren van logboeken op mogelijke schendingen. Controleer regelmatig de regels voor toegangsbeheer en werk deze bij op basis van toegangslogboeken. Werk samen met centrale teams om SIEM-logboeken (Security Information Event Management) en SOAR-logboeken (Security Orchestration Automated Response) te analyseren om afwijkingen te detecteren.

Overweeg PAW's of SAW's te vereisen voor bevoegde beheerbewerkingen. PAW's en SAW's zijn beveiligde fysieke apparaten die aanzienlijke beveiligingsvoordelen bieden, maar de implementatie ervan vereist een zorgvuldige planning en beheer. Zie Apparaten beveiligen als onderdeel van het verhaal over bevoegde toegang voor meer informatie.

Azure-facilitering

Microsoft Defender for Cloud biedt verschillende beveiligingsmogelijkheden:

Het Center for Internet Security (CIS) biedt beveiligde installatiekopieën in Azure Marketplace.

U kunt Azure VM Image Builder gebruiken om een herhaalbaar proces te bouwen voor beveiligde installatiekopieën van het besturingssysteem. Common Base Linux-Mariner is een beperkte Linux-distributie die is ontwikkeld door Microsoft en die beveiligingsstandaarden en branchecertificeringen volgt. U kunt deze gebruiken met Azure-infrastructuurproducten om workload-implementaties te bouwen.

Voorbeeld

De volgende procedure is een voorbeeld van hoe u een besturingssysteem kunt beperken:

  1. Verklein de voetafdruk. Verwijder overbodige onderdelen in een installatiekopie. Installeer alleen wat u nodig hebt.

  2. Configuraties afstemmen. Ongebruikte accounts uitschakelen. De standaardconfiguratie van besturingssystemen heeft extra accounts die zijn gekoppeld aan beveiligingsgroepen. Als u deze accounts niet gebruikt, schakelt u ze uit of verwijdert u ze uit het systeem. Extra identiteiten zijn bedreigingsvectoren die kunnen worden gebruikt om toegang te krijgen tot de server.

    Onnodige toegang tot het bestandssysteem uitschakelen. Versleutel het bestandssysteem en verfijn de toegangsbeheer voor identiteit en netwerken.

    Voer alleen uit wat nodig is. Toepassingen en services blokkeren die standaard worden uitgevoerd. Alleen toepassingen en services goedkeuren die nodig zijn voor workloadfunctionaliteit.

  3. Behoud verdediging. Werk de onderdelen van het besturingssysteem regelmatig bij met de nieuwste beveiligingsupdates en patches om bekende beveiligingsproblemen te verhelpen.

CIS-benchmarks

Controlelijst voor beveiliging

Raadpleeg de volledige set aanbevelingen.