Netz-Weise Logo

Weisheiten - der Netz-Weise Blog

Hier finden Sie Tipps und Tricks für vor, während und nach der Schulung.
3 Minuten Lesezeit (623 Worte)

Ein niedrig priveligiertes Konto zum Entsperren von Domänenbenutzern anlegen und damit Benutzer-Sperren retten

Das Sperren von Benutzerkonten ist ein bewährtes Mittel, um Brute-Force-Attacken gegen Kennwörter im Unternehmen zu verhindern. Allerdings empfehlen sowohl Microsoft als auch das BSI inzwischen, Kontosperrungen nicht zu verwenden, da eine Malware oder ein Hacker durch das Sperren sämtlicher Benutzerkonten ein Netzwerk komplett lahm lagen kann - man spricht auch von einem denial of Service.

Die alternative Empfehlung lautet, lange Kennwörter in Form von Passphrases und am Besten Multifaktor-Authentifizierung einzusetzen. Grundsätzlich ist das ein vernünftiger Ansatz, aber leider scheitert er in vielen Netzwerken immer noch an der Praxis. Zum einen muß man den Benutzern erklären, dass Sie jetzt lange komplexe Kennwort-Sätze verwenden sollen, zum Anderen muß man mit dieser Variante auch für eine ordentliche Anmeldungs-Überwachung sorgen, da ein großangelegter Angriff auf die Benutzerkennwörter sonst gar nicht auffällt. Mit aktivierter Kennwortsperrung merkt man normalerweise sehr schnell, dass etwas nicht stimmt.

Mein pragmatischer alternativer Ansatz, um die Kontosperrungen weiterhin nutzen zu können, arbeitet mit automatisierten Prozessen und Powershell. Denn mit Powershell ist es sehr schnell und einfach möglich, Benutzerkonten zu entsperren. Verwenden Sie dafür die Cmdlets Search-ADAccount und Unlock-ADAccount. Search-ADAccount kann mit dem Parameter -Lockedout alle gesperrten Benutzerkonten in einem Rutsch auflisten, Unlock-ADAccount kann sie  direkt entsperren. Mit Hilfe des Cmdlets Out-Gridview können Sie sich auch gleich noch eine grafische Benutzeroberfläche einrichten, um nur ausgewählte Benutzer zu entsperren.

Search-ADAccount -Lockedout | Out-Gridview -Passthru | Unlock-ADAccount

1   locked User

Damit wird das Entsperren nach einem Denial of Service zu einem Kinderspiel. Allerdings muß noch ein zweites Problem gelöst werden. Wenn Sie nämlich das Standard-Administratorkonto auf der Domäne deaktivieren, haben Sie eventuell gar keine Möglichkeit mehr, die Domäne zu entsperren, weil Ihr Administrator auch gesperrt ist. Deswegen legen Sie sich nun ein niedrig privilegiertes Konto an, dass neben dem Entsperren von Benutzern in der Domäne nichts kann, aber nicht gesperrt wird.

Im ersten Schritte benötigen Sie eine granulierte Kennwortrichtlinie und eine Gruppe, der Sie die Richtlinie zuordnen. Diese können Sie entweder mit dem Active Directory administrative Center anlegen, oder mit Powershell. Hier der Weg mit Powershell:

New-ADGroup -Name UnlockAccount -GroupCategory Security -GroupScope Global
New-ADFineGrainedPasswordPolicy -Name NeverLock -ComplexityEnabled $true -Precedence 1 -LockoutDuration -1 -PasswordHistoryCount 24 -MinPasswordAge 0:00:00:00 -MaxPasswordAge 365:00:00:00 -MinPasswordLength 20
Add-ADFineGrainedPasswordPolicySubject -Identity Neverlock -Subjects UnlockAccount

New-ADGroup legt eine neue Gruppe an, New-ADFineGrainedPasswordPolicy die Kennwortrichtlinie im AD im Container CN=Password Settings Container,CN=System,DC=Netz-weise,DC=de. Das Cmdlet Add-ADFineGrainedPasswordPolicySubject weist die Richlninie der neu erstellen Gruppe zu. Damit wird die Kennwortrichtlinie für alle Mitglieder der Gruppe aktiv. Alternativ können Sie auch einen einzelnen Benutzer anlegen und diesen direkt hinzufügen.

Mit Get-ADFineGrainedPasswordPolicy können Sie überprüfen, ob die Kennwortrichtlinie angelegt wurde.

PS > Get-ADFineGrainedPasswordPolicy -Identity Neverlock

AppliesTo                   : {CN=UnlockAccount,CN=Users,DC=netz-weise,DC=de}
ComplexityEnabled           : True
DistinguishedName           : CN=NeverLock,CN=Password Settings Container,CN=System,DC=netz-weise,DC=de
LockoutDuration             : 1.00:00:00
LockoutObservationWindow    : 00:30:00
LockoutThreshold            : 0
MaxPasswordAge              : 365.00:00:00
MinPasswordAge              : 00:00:00
MinPasswordLength           : 20
Name                        : NeverLock
ObjectClass                 : msDS-PasswordSettings
ObjectGUID                  : 15c25024-850e-4bd6-b674-4207684f9bbc
PasswordHistoryCount        : 24
Precedence                  : 1
ReversibleEncryptionEnabled : True

Im nächsten Schritt müssen Sie die Berechtigungen zum Entsperren von Benutzerkonten über die Benutzerattribute "Read Lockouttime" und "Write Lockouttime" delegieren. Dazu starten Sie Active Directory Benutzer und Computer und öffnen das Kontextmenü der Domäne. Wählen Sie Objektverwaltung zuweisen.

2   Objektverwaltung zuweisen

Klicken Sie im nächsten Fenster weiter und wählen Sie den Benutzer oder die Gruppe aus, die die Berechtigungen erhalten soll 

3   Gruppe waehlen

Sie müssen "Benutzerdefinierte Aufgaben zum Zuweisen erstellen" starten.

4   Benutzerdefinierte Aufgaben

Da Sie das Entsperren von Benutzerkonten zulassen wollen, wählen Sie unter "Active Directory Objekttyp" Benutzer.

5   Benutzer Objekte

Suchen Sie aus der Berechtigungsliste "Eigenschaftspezifisch" und dann die Berechtigungen "lockout Time lesen" und "lockout time schreiben" aus. Auf einem englischen System heißen die Eigenschaften ead lockoutTime and Write lockoutTime.

6   Lockout Properties

Bestägigen Sie nun die Berechtigungsdelegierung. Abschliessend können Sie der Gruppe UnlockAccount Benutzer hinzufügen, die zum Entsperren verwendet werden können. Wenn Sie es besonders sicher haben wollen, können Sie jetzt z.B. mit Authentifizierungssilos die Anmeldung der Entsperr-Benutzer noch auf einen spezifischen PC binden, so dass ein Hacker, der Kennwörter entsperren wollte, sich auch noch Zugriff auf diesen Rechner verschaffen müßte,

Eine Zahlenreihe in zwei alternierende (wechselnde...
Computerkennwörter, der Secure Channel und die Feh...

Ähnliche Beiträge

 

Kommentare

Derzeit gibt es keine Kommentare. Schreibe den ersten Kommentar!
Bereits registriert? Hier einloggen
Sonntag, 19. Mai 2024

Sicherheitscode (Captcha)