Beveilig Windows-beheerderswachtwoorden met Microsoft LAPS

Hoe ga je momenteel om met lokale Windows beheerderswachtwoorden? Elk Windows-systeem heeft er een en ze hebben de sleutels tot het koninkrijk van elke pc. Omdat lokale beheerderswachtwoorden geen onderdeel zijn van Active Directory (AD), moet je elk account op elke computer apart beheren. Het is een gedoe.

Veel organisaties denken er niet al te veel over na en stellen gewoon een standaardbeheerderswachtwoord in op elke Windows-machine. Deze praktijk, hoewel handig, opent organisaties voor een veel groter probleem wanneer dat ene, masterwachtwoord in verkeerde handen valt. Het hebben van een apart lokaal beheerderswachtwoord op elke computer voorkomt niet per se dat een kwaadwillende individu toegang krijgt tot één pc, maar het voorkomt aanzienlijk laterale exploitatie van andere pc’s.

Microsoft Local Administrator Password Solution (LAPS) kan helpen.

In dit artikel leer je hoe je je op AD aangesloten computers kunt beveiligen door LAPS in te stellen.

Wat is Microsoft LAPS?

LAPS is een essentieel onderdeel van het beveiligen van een Windows-omgeving. LAPS is een tool die op een slimme manier werkt; het randomiseert automatisch het lokale beheerderswachtwoord op alle domeincomputers met LAPS geactiveerd en wijzigt elk wachtwoord regelmatig.

LAPS zorgt ervoor dat u willekeurige wachtwoorden hebt voor lokale beheerders over uw domein en voorkomt laterale bewegingen van hackers en malware. Nu zou u kunnen denken dat een lang wachtwoord voor de lokale beheerder op de client u hiertegen beschermt, maar dat is niet waar.

Hackers kunnen een Pass-The-Hash-methode gebruiken om snel door uw domein te verspreiden en kunnen zelfs een domeinbeheerdersreferentie tegenkomen door dezelfde methode te gebruiken. LAPS voorkomt deze activiteit door kwaadwillende personen te dwingen een wachtwoord te ontdekken voor elk afzonderlijk apparaat.

LAPS in de Praktijk

LAPS heeft drie hoofdonderdelen:

Vergrendelde AD-attributen

LAPS slaat elk lokaal beheerderswachtwoord voor elk gecontroleerd computer op in AD, genaamd ms-Mcs-AdmPwd. LAPS moet ook weten wanneer de wachtwoorden verlopen om deze te wijzigen, dus slaat het ook een ander AD-attribuut op genaamd ms-Mcs-AdmPwdExpirationTime. Deze AD-attributen zijn alleen lees/schrijfbaar door gespecificeerde AD-principals zoals een groep of een gebruiker en ook beschrijfbaar door het computeraccount dat het wachtwoord gebruikt.

GPO-instellingen

Om LAPS op een computer te implementeren en het wachtwoord te wijzigen, heeft LAPS ook een reeks GPO-instellingen. Wanneer de GPO is gekoppeld aan een reeks computers, worden de LAPS-instellingen naar elke computer gedistribueerd. Wanneer de computer de GPO-instellingen toepast, gebruikt LAPS een speciaal DLL-bestand om ze te interpreteren.

Wanneer LAPS ziet dat de huidige datum voorbij de vervaldatum van het wachtwoord is, zal het het volgende doen:

  • Willekeurig een nieuw wachtwoord genereren en het instellen als het lokale beheerderswachtwoord.
  • Het nieuwe lokale beheerderswachtwoord schrijven naar het attribuut Ms-Mcs-AdmPwd in AD.
  • Een nieuwe vervaldatum schrijven naar ms-Mcs-AdmPwdExpirationTime.

Door deze slimme maar eenvoudige methode blijven de domeincomputers nog veiliger.

LAPS instellen

Genoeg informatie, laten we echt kijken wat LAPS kan doen! Het instellen van LAPS is niet ingewikkeld, maar vereist wel een paar stappen die je leert in deze tutorial. Ze zijn:

  1. De LAPS-beheertools installeren op je beheerdersmachine.
  2. Het AD-schema uitbreiden om de twee aangepaste AD-attributen toe te voegen die LAPS gebruikt.
  3. Geschikte privileges instellen voor verschillende componenten in AD.
  4. De LAPS GPO opbouwen die zal worden toegepast op Windows-computers.
  5. De LAPS GPO-extensie implementeren op toepasselijke Windows-computers.

Zodra je de bovenstaande stappen hebt doorlopen, heb je een volledig functionele LAPS-omgeving klaar voor gebruik!

Vereisten

In dit artikel ga je LAPS daadwerkelijk instellen. Zorg ervoor dat je aan een paar vereisten voldoet als je wilt meedoen.

  • Een AD-domein (vanaf 2003)
  • A computer running Windows (10 or Server 2012+ is recommended) has RSAT for Active Directory installed.
  • Toegang hebben tot een account dat lid is van zowel de AD Domain Admins- als Schema Admins-groepen.

Alle voorbeelden in dit artikel zullen gebruik maken van een AD-domein genaamd contoso.com.

De beste praktijk voor de schema-beheergroep is om er alleen lid van te zijn wanneer je de machtigingen nodig hebt.

Installatie van Microsoft LAPS Management Tools

Om te beginnen, moet je eerst de LAPS Management Tools op je admin computer installeren. Deze management tools zullen zowel de LAPS GPO-extensie (indien geselecteerd) als de management tools om LAPS te configureren installeren.

  1. Begin met het downloaden van het LAPS.x64.msi bestand en start het als een admin en klik op Volgende.
Installing Microsoft LAPS

2.  Druk op Volgende tot je bij de aangepaste setup komt, klik dan op Management Tools en Volledige functie zal worden geïnstalleerd op de lokale harde schijf om beide componenten te installeren. Als je niet wilt dat de huidige machine door LAPS wordt beheerd, selecteer dan AdmPwd GPO Extension.

Click Management Tools

3.  Klik op Volgende tot de installatie voltooid is en sluit de installer.

Je hebt nu de LAPS GPO-extensies (indien geselecteerd) en de management tools geïnstalleerd en we kunnen nu beginnen met het uitbreiden van het AD-schema en het toevoegen van onze GPO’s.

Het AD-schema uitbreiden

Zoals eerder vermeld, gebruikt LAPS twee AD-attributen genaamd ms-Mcs-AdmPwd en ms-Mcs-AdmPwdExpirationTime. Deze twee attributen zijn niet standaard en moeten worden toegevoegd aan het AD-schema.

  1. Start met het toevoegen van een lid van de Domain Admins-groep aan de Schema Admins-groep als het account nog geen lid is. We noemen dit uw “beheerdersaccount”.
  2. Start PowerShell als uw beheerdersaccount en importeer de AdmPwd PowerShell-module door Import-module AdmPwd.PS uit te voeren.
  3. Zodra de module is geïmporteerd, voer het commando Update-AdmPwdADSchema uit om het AD-schema bij te werken met de twee AD-attributen. U kunt de uitvoer zien in de volgende schermafbeelding.
Powershell Admin Account

U heeft nu ons AD-schema uitgebreid om LAPS te ondersteunen en bent klaar om machtigingen in Active Directory in te stellen.

Configuratie van Active Directory-machtigingen

Elke computer moet de mogelijkheid hebben om hun lokale beheerderswachtwoord en vervaltijd AD-attribuut bij te werken. Om dit te doen, moet elke computer zelfschrijfmachtiging hebben voor de ms-Mcs-AdmPwd– en ms-Mcs-AdmPwdExpirationTime-AD-attributen. Gelukkig kan het grootste deel van dit werk eenvoudig worden gedaan met de AdmPwd PowerShell-module.

Toestaan dat machines hun wachtwoord opslaan

Zorg er eerst voor dat elke computer hun wachtwoord kan opslaan in het ms-Mcs-AdmPwd-AD-attribuut en bijwerken wanneer dat wachtwoord verloopt in het ms-Mcs-AdmPwdExpirationTime-AD-attribuut. De AdPwd PowerShell-module heeft een opdracht waarmee u deze machtigingen kunt instellen, genaamd Set-AdmPwdComputerSelfPermission, per organisatie-eenheid (OU), wat van toepassing is op alle onderliggende OUs.

In PowerShell, voer Set-AdmPwdComputerSelfPermission -OrgUnit 'OU=Werkstations,DC=contoso,DC=com' uit en vergeet niet om je specifieke OU- en domeinnaam bij te werken.

Update OU and Domain Name

Als je wilt dat LAPS meer OUs controleert, herhaal dan bovenstaand commando voor elke OU in AD.

AD-attributen vergrendelen door uitgebreide rechten te vinden

Om ervoor te zorgen dat alleen de gebruikers en groepen die je toestemming wilt geven om het lokale beheerderswachtwoord van elke computer te lezen en opnieuw in te stellen, moet je controleren wie toegang heeft. Specifiek moet je weten dat alleen de accounts die “Uitgebreide rechten” moeten hebben, deze hebben.

Om accounts met uitgebreide rechten te vinden, voer Find-AdmPwdExtendedRights -OrgUnit 'OU=Werkstations,DC=contoso,DC=com' | Select -ExpandProperty ExtendedRightHolders uit en zorg ervoor dat je je OU- en domeinnaam vervangt.

Je kunt nu zien in de volgende schermafbeelding dat CONTOSO\joe-the-admin en CONTOSO\MDT-service uitgebreide rechten hebben voor de Werkstations OU.

Workstations OU

De toestemming van MDT-service heeft inderdaad de uitgebreide rechten nodig, maar joe-the-admin niet. Je moet nu de toestemming voor joe-the-admin verwijderen.

Je moet dit proces herhalen voor alle OUs waarop je in een eerdere stap de self-write-toestemming hebt ingesteld.

Uitgebreide rechten verwijderen

Zodra je elk account hebt geïdentificeerd waarvan je de uitgebreide rechten wilt verwijderen, is het nu tijd om het daadwerkelijk te doen.

  1. Open Active Directory Gebruikers En Computers en klik op Weergave in het bovenste menu en zorg ervoor dat Geavanceerde Functies is ingeschakeld. Wanneer je geavanceerde functies inschakelt, zie je alle normaal verborgen OUs zoals weergegeven in de volgende schermafbeelding.
Hidden OUs

2. Klik met de rechtermuisknop op de OU waarvan je de uitgebreide rechten wilt verwijderen en klik op Eigenschappen

Right Click OU to Remove

3. Klik op het Beveiliging tabblad en klik vervolgens op de Geavanceerd knop.
4. Zoek het account of de groep waarvan je de uitgebreide rechten wilt verwijderen en verwijder het door het te selecteren en te klikken op Verwijderen.

Security Tab for Account Removal

5. Herhaal deze stappen indien nodig voor alle principes met uitgebreide rechten.

Toestemming geven om het wachtwoord van de lokale beheerder te lezen en opnieuw in te stellen

Nu je ervoor hebt gezorgd dat alleen geschikte accounts uitgebreide rechten hebben, moet je nu twee AD-groepen maken voor het lezen en opnieuw instellen van het lokale beheerderswachtwoord genaamd LAPS Werkstations Wachtwoord Lezen en LAPS Werkstations Wachtwoord Opnieuw Instellen.

Merk op dat de hier gespecificeerde groepsnamen niet verplicht zijn. Je bent vrij om elke groepsnaam te gebruiken die je wilt.

Met een PowerShell-console nog steeds geopend met je beheerdersaccount, voer de volgende commando’s in om beide AD-groepen toestemming te geven om het lokale beheerderswachtwoord voor computers in de Werkstations OU te lezen.

PS> Set-AdmPwdReadPasswordPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' -AllowedPrincipals "LAPS Workstations Password Read"

PS> Set-AdmPwdResetPasswordPermission -OrgUnit 'OU=Workstations,DC=contoso,DC=com' -AllowedPrincipals "LAPS Workstations Password Reset" 

Je hebt nu de AD-groepen hierboven ingeschakeld om lokale beheerderswachtwoorden voor computers in de OU Workstations te lezen en opnieuw in te stellen. Nu moet je de beheerders of groepen toevoegen die nodig zijn om de wachtwoorden te lezen of opnieuw in te stellen.

Het maken van een centrale opslag voor sjablonen van het groepsbeleid

Om LAPS zichzelf te laten inschakelen nadat het is geïnstalleerd op de computers, maak eerst een groepsbeleid door de groepsbeleidsjablonen te importeren naar de map PolicyDefinition. De map PolicyDefinition bevindt zich op alle domeincontrollers.

Activeer nooit een LAPS GPO die gericht is op de domeincontrollers. Dit wordt niet ondersteund en kan onverwachte problemen veroorzaken.

  1. Kies een domeincontroller in AD; elke domeincontroller zal werken.
  2. Zorg ervoor dat een \\contoso.com\SYSVOL\Policies\PolicyDefinitions bestaat. Zo niet, maak het nu aan.
  3. Kopieer de inhoud van C:\Windows\PolicyDefinitions op je beheercomputer (waarop je LAPS hebt geïnstalleerd) naar de map \\contoso.com\SYSVOL\Policies\PolicyDefinitions op de domeincontroller.

Het maken van de GPO

Laten we nu de sjablonen van de LAPS GPO kopiëren naar de Centrale Opslag (PolicyDefinitions map).

  1. Open Groepsbeleid Beheer onder uw beheerdersaccount, klik met de rechtermuisknop op de OU waarin u LAPS wilt inschakelen en klik op Koppel een bestaand GPO…
Group Policy Management

2. Navigeer naar Computerconfiguratie —> Administratieve Sjablonen —> LAPS en stel Lokaal beheer van het wachtwoord van de beheerder inschakelen in op Ingeschakeld. Als u verschillende eisen heeft voor Wachtwoordcomplexiteit, bewerk dan de Wachtwoordinstellingen dienovereenkomstig.

Linking GPO to all OUs

U bent bijna klaar! Koppel dit GPO nu aan alle OUs waarin u LAPS wilt gebruiken.

Het implementeren van LAPS GPO-extensie

Zodra het GPO is toegepast op alle toepasselijke OUs met computers erin, moet u nu de LAPS GPO-extensie implementeren. U heeft een paar verschillende manieren om deze extensie te installeren, ofwel door de MSI te installeren (zoals eerder getoond) of door het DLL-bestand van LAPS te registreren.

Als u ervoor kiest om de MSI te installeren, voer dan op elke computer binnen een door LAPS beheerde OU de volgende opdracht uit om LAPS in te schakelen.

> msiexec /q /i \\server\share\LAPS.x64.msi

Als u ervoor kiest om LAPS in te schakelen door de DLL te registreren, kunt u dit doen met de volgende opdracht.

> regsvr32.dll \\server\share\AdmPwd.dll

U kunt elk externe uitvoeringshulpmiddel dat u heeft gebruiken om deze opdrachten op de computers uit te voeren.

Het implementeren van de LAPS MSI met een GPO

Het gebruik van een GPO is de eenvoudigste methode om ervoor te zorgen dat de LAPS GPO-extensie is geïnstalleerd op alle computers.

  1. Kopieer LAPS.x64.msi naar een netwerkshare die toegankelijk is voor alle domeincomputers.
  2. Open Group Policy Management op uw beheercomputer en maak een GPO genaamd Installeer LAPS of iets vergelijkbaars.
Creating GPO called Install LAPS

3. Klik met de rechtermuisknop op de GPO Installeer LAPS, klik op Bewerken en ga naar Computerconfiguratie —> Beleidsinstellingen —> Software-instellingen —> Software-installatie.

LAPS GPO Software Installation

4. Klik met de rechtermuisknop op Software-installatie en ga naar Nieuw—> Pakket…

GPO New Package

5. Ga naar de share waar je LAPS.x64.msi hebt gekopieerd, selecteer het, klik op OK en kies Toegewezen.

Assigning LAPS.x64.msi

6. Koppel nu de GPO aan dezelfde OU’s als waar je LAPS voor hebt geconfigureerd. Je bent nu klaar om LAPS te testen!

Testen van LAPS

Om ervoor te zorgen dat LAPS zoals ontworpen werkt op de gecontroleerde computers, laten we nu een van de computers dwingen om de eerder genoemde GPO toe te passen en kijken wat er gebeurt.

  1. Herstart een computer die zich onder een van de geconfigureerde OU’s bevindt. Zodra deze weer is opgestart, zou de computer moeten beginnen met het installeren van LAPS.
  2. Zodra LAPS is geïnstalleerd op de computer, herstart de machine dan nogmaals en open een PowerShell-console als beheerder op je beheercomputer, aangemeld met een account dat lid is van de LAPS Werkstation Wachtwoord Lezen en LAPS Werkstation Wachtwoord Resetten AD-groepen.
  3. Voer het commando Get-AdmPwdPassword <computernaam> uit met de zojuist opnieuw opgestarte en geïnstalleerde LAPS-computernaam. Als alles goed is gegaan, zie je iets vergelijkbaars met de uitvoer zoals te zien is in de volgende schermafbeelding.
LAPS Installation Output

4. Probeer nu in te loggen op de LAPS-gecontroleerde computer met het daarboven weergegeven wachtwoord. Als het gelukt is, zou je ingelogd moeten zijn.
5. Probeer nu het wachtwoord opnieuw in te stellen door het commando Reset-AdmPwdPassword <computernaam> uit te voeren en de computer opnieuw op te starten. Zie hoe het wachtwoord is gewijzigd in de volgende schermafbeelding?

LAPS Password Reset

Je hebt nu LAPS werkend in je omgeving. En hoewel het beheer vrij eenvoudig is, zijn er een paar dingen die je moet weten…

Tips en trucs voor het gebruik van LAPS in de praktijk

Hoewel de bovenstaande installatie voldoende is voor de meeste kleinere omgevingen, kan het te onveilig zijn of niet het gewenste auditniveau bieden voor grotere organisaties. Hier zijn een paar tips om het in de praktijk te laten werken.

1. Schakel auditing in

Auditlogboeken bij het lezen of opnieuw instellen van een wachtwoord zijn belangrijk, vooral omdat je hiermee alarmen kunt instellen als iemand het wachtwoord van alle computers leest. Gelukkig biedt de AdmPwd-module ons een cmdlet om dit in te schakelen.

PS> Set-AdmPwdAuditing -AuditedPrincipals Everyone -OrgUnit "OU=Workstations,DC=contoso,DC=com"

2. Zorg ervoor dat geen enkele gebruiker rechtstreeks de ms-mcs-AdmPwd AD-attribuut kan lezen.

Een manier om ervoor te zorgen dat een gebruiker het AD-attribuut ms-mcs-AdmPwd niet kan lezen, is door een self-service methode te creëren om het lokale beheerderswachtwoord van een computer te verkrijgen. Hoewel dit buiten het bereik van dit artikel valt, kun je tools zoals JEA of WebJEA bekijken als je geen bestaand self-service portaal hebt dat hiervoor geschikt is.

3. Reset de Ms-Mcs-AdmPwdTime-attribuut tijdens het kopiëren van de schijf

Je moet onthouden om het Ms-Mcs-AdmPwdTime-attribuut te resetten wanneer je een LAPS-gecontroleerde computer opnieuw afbeeldt, anders zal het geen wachtwoordwijziging veroorzaken en het lokale beheerderswachtwoord behouden dat door het image is gegeven. Het zal echter wel worden geactiveerd nadat de Ms-Mcs-AdmPwdTime is verlopen.

Je kunt de volgende PowerShell-opdracht gebruiken om de Vervaltijd te resetten zonder de AdmPwd-module:

# Met RSAT 
Get-ADComputer Workstation1 | Set-ADObject -Replace @{"ms-mcs-AdmPwdExpirationTime"=(Get-Date)} 

# Zonder RSAT
$Computer = New-Object DirectoryServices.DirectoryEntry "LDAP://CN=Workstation1,OU=Workstations,DC=contoso,DC=com"
$Computer.'ms-Mcs-AdmPwdExpirationTime'.Clear()
$Computer.CommitChanges()

4. Onthoud dat het attribuut ms-Mcs-AdmPwd in de AD Recycle Bin blijft

Wanneer je een object verwijdert in AD en de AD Recycle Bin hebt ingeschakeld, verwijdert AD meestal belangrijke attributen; gelukkig is ms-Mcs-AdmPwd hiertegen beschermd!

5. LAPS is niet bedoeld voor tijdelijke toegang

Hoewel verleidelijk, is LAPS niet bedoeld om tijdelijke toegang te geven aan leveranciers, gebruikers en andere soorten accounts. In plaats van LAPS te gebruiken, maak een AD-groep die een lokale beheerder is van die specifieke computer en gebruik \texttt{TimeToLive} op groepslidmaatschappen.\texttt{

Conclusie

}Je hebt nu geleerd hoe je LAPS implementeert, de machtigingen instelt en enkele tips en trucs voor een veiliger gebruik. In een omgeving waar LAPS is geïmplementeerd, wijzigt het wachtwoord van de lokale beheerder regelmatig en automatisch. Dit vermindert aanzienlijk het risico dat een op het domein aangesloten computer wordt overgenomen door hackers of malware, en hopelijk bespaart het je veel hoofdpijn.\texttt{

}Als je vragen hebt, tweet me gerust op @AlexAsplund of laat een opmerking achter hieronder.

Source:
https://adamtheautomator.com/microsoft-laps/