2. AD
Active Directory
1. Scope
De focus van dit onderdeel ligt op het analyseren en optimaliseren van de beveiligings- en toegangsstructuren binnen de Azure Active Directory-omgeving. Hierbij wordt specifiek gekeken naar:
Gebruikersbeheer en de volledige accountlevenscyclus,
Toegangsbeheer aan de hand van Conditional Access, rollen en rechten,
Hybride implementaties met on-premises Active Directory,
Applicaties en API-integraties, en
Beveiligingsmechanismen en logging voor incidentdetectie en -respons.
Het doel is om te achterhalen waar de zwakke plekken zich bevinden, hoe ernstig deze zijn en welke verbeteringen of mitigerende maatregelen nodig zijn om een zo hoog mogelijk beveiligingsniveau te bereiken.
1.1 Gebruikersbeheer
Accountlevenscyclusbeheer
Evaluatie van aanmaak- en deactivatieprocessen: Hier wordt gekeken naar de mate waarin nieuwe gebruikersaccounts correct geprovisioned worden in Azure AD en oude of inactieve accounts tijdig worden verwijderd. Een onvolkomen proces kan leiden tot accumulatie van slapende accounts of accounts die onterecht actief blijven.
Controle op slapende en niet-gebruikte accounts: Slapende accounts vormen een potentieel risico voor ongeautoriseerde toegang, omdat aanvallers misbruik kunnen maken van accounts die onder de radar blijven.
Wachtwoordbeleid
Wachtwoordcomplexiteit en rotatievereisten: Sterke wachtwoorden, frequente rotatie en beleid rondom de opslag van wachtwoorden (bijvoorbeeld in een kluis) zijn cruciale elementen.
Wachtwoordloze methoden: We beoordelen of biometrie, FIDO2-tokens en andere moderne methoden adequaat zijn ingericht, en of deze methoden correct worden afgedwongen voor de juiste gebruikers.
Azure AD Password Protection: We onderzoeken in hoeverre zwakke of veelgebruikte wachtwoorden daadwerkelijk worden geblokkeerd en op welke wijze de organisatie dit beleid handhaaft.
Authenticatiemethoden
Controleren op veilige MFA: Multifactorauthenticatie is een van de belangrijkste verdedigingen tegen ongeautoriseerde toegang. Hierbij kijken we naar de configuratie, de gebruikte factoren (bijvoorbeeld pushnotificaties, hardwaretokens) en de naleving van best practices.
Kwetsbaarheden in authenticatie: Legacy of onveilige MFA-methoden (zoals SMS) kunnen voor aanvallers een mogelijk aanvalsvector vormen. We onderzoeken of de configuraties, met name rondom risicogebaseerde MFA, up-to-date en waterdicht zijn.
1.2 Toegangsbeheer
Conditional Access Policies
Beoordelen van beleidsregels: Policies die toegang regelen op basis van locatie, type apparaat, gebruikersrol of risiconiveau dienen zorgvuldig te worden opgezet. We controleren of deze regels correct zijn geïmplementeerd en effectief ongewenste toegang blokkeren.
Blokkeren van legacy authenticatie: Oude protocollen (zoals IMAP, POP3, SMTP) vormen een groot risico. We analyseren of dergelijke protocollen effectief zijn uitgeschakeld of voldoende worden beperkt.
Rollen en rechten
Analyse van toegewezen rechten: Het is van belang om te bepalen of de huidige roltoewijzingen in lijn zijn met het ‘least privilege’-principe. Excessieve rechten kunnen leiden tot escalatie door aanvallers of onbevoegde acties van interne gebruikers.
Detecteren van overprivilege: We onderzoeken of gebruikers of groepen meer rechten hebben dan strikt noodzakelijk is, met als doel het minimaliseren van schade bij een eventueel incident.
Just-In-Time (JIT)-toegang
Privileged Identity Management (PIM): PIM is ontworpen om tijdelijke escalatie van administratieve rechten te faciliteren zonder dat accounts voortdurend over hoge privileges beschikken. We verifiëren of PIM correct is geïmplementeerd en controleren de configuratie rondom toewijzingsduur, goedkeuringseisen en monitoring.
Beoordelen JIT-configuratie: JIT moet zo zijn ingericht dat gebruikers alleen bij uitzonderlijke gevallen hogere rechten krijgen en dat deze rechten automatisch worden ingetrokken na afloop van de toegestane periode.
1.3 Hybride Implementaties
Integratie met on-premises Active Directory
Azure AD Connect-configuraties: Synchronisatie tussen on-premises AD en Azure AD moet veilig, regelmatig en foutloos plaatsvinden. We analyseren of de synchronisatiefrequentie, de gesynchroniseerde objecten en eventuele filters correct zijn geconfigureerd.
Beveiligingsopties: Password Hash Synchronization, Pass-through Authentication en Federatieoplossingen (bijv. ADFS) brengen elk hun eigen risico’s met zich mee. We controleren of de gekozen optie aansluit bij de beveiligingseisen en op de juiste wijze is geconfigureerd.
Beveiliging van synchronisatie
Identificatie van zwakke punten: Bij hybride verbindingen kunnen onbeveiligde serviceaccounts, verouderde protocollen of slechte encryptie voor kwetsbaarheden zorgen.
Validatie van encryptie en authenticatie: De data die van on-premises naar de cloud wordt gesynchroniseerd (en omgekeerd), moet altijd versleuteld zijn en geauthenticeerd worden om MITM-aanvallen (Man-In-The-Middle) te voorkomen.
1.4 Applicaties en API-integraties
OAuth2 en OpenID Connect
Analyse van applicatieconfiguraties: Applicaties die Azure AD gebruiken voor SSO of andere authenticatiediensten dienen correct geconfigureerd te zijn. Fouten in de instellingen kunnen leiden tot misbruik van tokens en ongeautoriseerde toegang.
Toegangstokens en refresh-tokens: We beoordelen in hoeverre de levensduur van tokens en scopes in overeenstemming zijn met het beveiligingsbeleid en hoe ongeautoriseerde toegang tot tokens wordt voorkomen.
Service Principals
Rechtenanalyse: Service Principals hebben vaak uitgebreide permissies. We inspecteren of deze toewijzingen nog nodig zijn en up-to-date zijn. Overbodige Service Principals of excessieve rechten vormen een risico als ze niet worden beheerd of herroepen.
Detecteren van niet-gebruikte of overgeautoriseerde Principals: Vaak blijven oude integraties (bijvoorbeeld met CI/CD-tools of third-party apps) bestaan, ook als deze niet meer nodig zijn. Dit kan leiden tot datalekken of ongeautoriseerde toegang.
1.5 Beveiligingsmechanismen
Monitoring en logging
Audit- en sign-in logs: We inspecteren of deze logs volledig en accuraat zijn, en hoe snel mogelijke incidenten worden opgemerkt. Incomplete of slecht geconfigureerde logging maakt forensisch onderzoek na een incident vrijwel onmogelijk.
Detectie van verdachte activiteiten: Pogingen tot MFA-bypass, ongebruikelijke inloglocaties of brute-force aanvallen moeten snel worden gedetecteerd.
Incidentrespons
Opsporing, escalatie en herstel: Zonder duidelijke procedures kan het tijdig indammen van een beveiligingsincident lastig zijn. We onderzoeken de interne processen en responstijden.
Azure Sentinel-configuratie: We controleren of Sentinel correct is gekoppeld aan de juiste bronnen (bijv. sign-in logs, audit logs) en of de playbooks en alerts up-to-date zijn.
Beveiligingstools
Azure Defender for Identity en Identity Protection: Deze tools kunnen riskante aanmeldingen, gelekte referenties en andere potentieel gevaarlijke situaties vroegtijdig signaleren. We controleren de configuratie en effectiviteit van deze oplossingen.
2. Rules of Engagement
Om een veilige en gecontroleerde penetratietest uit te voeren, is een duidelijk kader van afspraken en beperkingen noodzakelijk. Dit waarborgt dat kritieke bedrijfsprocessen niet onnodig worden verstoord en dat de test binnen wettelijke en ethische grenzen blijft.
2.1 Beperkingen en Toestemming
Beperkingen
Niet-productieomgevingen of testaccounts: In principe worden tests uitgevoerd in afgeschermde omgevingen, tenzij anders is overeengekomen. Dit minimaliseert risico’s op productieverstoringen.
Kritische accounts: Accounts met hoge privileges, zoals Global Administrators, worden alleen getest met expliciete toestemming.
Schriftelijke goedkeuring
Stakeholderoverleg: De relevante afdelingen, waaronder juridisch en security, moeten vooraf schriftelijk akkoord gaan met de testopzet.
Duidelijke scope-afbakening: Het is essentieel dat beide partijen exact weten welke componenten wel en niet binnen de test vallen.
Reikwijdte
Afgesproken componenten: Alleen de vooraf overeengekomen gebruikersgroepen, rollen en applicaties worden in de pentest betrokken.
Revisie bij nieuwe inzichten: Mochten tijdens de test kritieke zwaktes in aangrenzende systemen aan het licht komen, dan wordt de scope in overleg eventueel bijgesteld.
2.2 Escalatieprotocollen
Incidentmelding
Kritieke kwetsbaarheden: Zodra een ernstig lek wordt ontdekt, wordt dit direct gemeld aan de aangewezen contactpersonen. Zo kunnen (nood)maatregelen direct worden genomen.
Communicatiekanalen
Gestroomlijnd escalatieproces: Er moet een helder proces zijn voor updates, vragen en rapportages. De frequentie van rapporteren en de inhoud ervan wordt vooraf vastgesteld.
3. Voorbereiding en Tools
Om grondige en betrouwbare testresultaten te verkrijgen, wordt gebruikgemaakt van gespecialiseerde tooling en methodologieën die zich hebben bewezen in de praktijk.
3.1 Specifieke Tools voor Azure AD
AADInternals
Diepgaande analyse: AADInternals is in staat om configuraties tot in detail te scannen en kan bepaalde ‘verborgen’ instellingen of afwijkingen in Azure AD naar voren brengen.
BloodHound (Azure-modus)
Detecteren van privilege-escalatiepaden: BloodHound kan visueel in kaart brengen hoe privileges zich binnen een hybride omgeving verhouden en waar mogelijke zwakke plekken zitten.
Azure AD Audit en Sign-in Logs
Realtime en historische analyse: Deze logs bieden direct inzicht in authenticatiepogingen, wijzigingen aan policies en verdachte activiteiten.
3.2 Beveiligingstools
Microsoft Graph API Explorer
Configuratie- en gebruikersgegevens: Hiermee kan onder andere worden nagegaan of er in de Azure AD-configuratie objecten zijn die niet kloppen, of onbedoeld publiek toegankelijk zijn.
Nmap en Nessus
Netwerkgerelateerde scans: Hoewel Azure AD grotendeels cloudgebaseerd is, kan in hybride scenario’s alsnog sprake zijn van netwerkopeningen of poortmisconfiguraties.
4. Testmethodologie
4.1 Gebruikersbeheer en Authenticatie
Password Spray-aanvallen
Simuleren van brute-force: Hiermee wordt getest of veelvoorkomende wachtwoorden (bijvoorbeeld ‘Welkom123’) nog steeds werken op een subset van accounts, zonder deze te vergrendelen. Een correcte vergrendelings- en rapportagemechanisme is hier van belang.
MFA-controle
Risicogebaseerde policies: We analyseren of MFA verplicht is voor alle kritieke accounts en of er risicosignalen (bijvoorbeeld inloggen vanuit ongebruikelijke landen) bestaan die MFA automatisch activeren.
Slapende accounts
Identificeren en analyseren: Een grote hoeveelheid inactieve accounts kan een goudmijn zijn voor aanvallers. We controleren of slapende accounts nog rechten hebben die niet direct worden ingetrokken.
4.2 Legacy Authenticatie
Identificeren van verouderde protocollen
IMAP, POP3 en SMTP: We controleren of deze protocollen nog ergens actief zijn voor authenticatie en of deze gebruikt kunnen worden om MFA te omzeilen.
4.3 Toegangsbeheer
Validatie van Conditional Access Policies
Testscenario’s: We voeren tests uit met verschillende gebruikers, vanuit verschillende locaties en apparaten om te verifiëren of de ingestelde policies correct worden afgedwongen.
Rollen en rechten
Analyse van afwijkende toewijzingen: Door gebruik te maken van tooling zoals BloodHound, brengen we in kaart of bepaalde gebruikersgroepen onnodige of extreme privileges hebben.
4.4 Hybride Omgevingen
Azure AD Connect
Encryptie en authenticatie: We controleren de gebruikte protocollen (bijv. TLS) tijdens de synchronisatie. Ook wordt gekeken of er zwakke configuraties zijn in de synchronisatie-accounts of serviceaccounts.
4.5 Applicaties en API’s
OAuth2-configuratie
Levensduur tokens: We voeren controles uit op refresh-tokens, want te lange levensduur kan leiden tot ongeautoriseerde toegang als tokens worden buitgemaakt.
API-beveiliging
Endpoint-evaluatie: We kijken of er ongeautoriseerde endpoints bestaan, hoe deze worden beschermd en of scope-toewijzingen correct zijn.
Slotopmerking Het is van belang om continue monitoring, logging en incidentresponsmechanismen op de juiste wijze in te richten. Zo ben je in staat om proactief op te treden en kun je de beveiliging van je organisatie op een blijvend hoog niveau houden.
Last updated