Erkennung delegierter Berechtigungen in Active Directory
Oct 27, 2016
Sicherheitsberechtigungen in Active Directory können ein heikles Thema sein. Nicht nur, dass Microsoft sie standardmäßig in Users and Computers vor Ihnen verbirgt, es gibt auch kein integriertes Tool, um einen Gesamtüberblick darüber zu erhalten, wie Berechtigungen auf AD angewendet wurden.
In this article, I’ll take you through the basics of delegating, removing permissions, using built–in tools to find permissions that have been delegated, and finally a custom PowerShell script that scans AD.
Warum delegieren?
Stellen Sie sich vor, Sie sind der Leiter eines großen Unternehmens mit mehreren Abteilungen: Finanzen, Personalwesen, Vertrieb, oberes Management. Wenn jeder Benutzer, der sein Passwort vergessen hat, den IT-Helpdesk anrufen müsste, wären Sie mit Anrufen überhäuft.
Stattdessen könnten Sie die Berechtigungen an den Leiter jeder Abteilung delegieren, damit er oder sie die Passwörter seines oder ihres eigenen Teams zurücksetzen kann.
Ein weiterer klassischer Anwendungsfall für Delegation ist die Möglichkeit für Mitarbeiter, E-Mails als einander zu senden – entweder über ein gemeinsames Postfach oder ein/e Assistent/in, der/die E-Mails im Namen seines/ihres Chefs versendet.
Jedem Domain-Admin-Rechte geben?
Vielleicht dachten Sie—okay, geben wir jedem Abteilungsleiter Domain Admin-Berechtigungen, dann können sie bei Bedarf die Passwörter zurücksetzen.
Obwohl das technisch gesehen richtig ist, könnten sie dann alles tun, was Sie tun können – einschließlich des Zugriffs auf Benutzerdaten. Data breach in der Entstehung!
Wie man Berechtigungen in AD delegiert
Der richtige Weg, dies zu erreichen, ist natürlich die Verwendung von Delegation. Dadurch können Sie individuell auswählen, welche Berechtigungen Sie vergeben möchten.
1. Öffnen Sie Active Directory Users and Computers und verbinden Sie sich mit Ihrer bevorzugten Testdomäne.
2. Klicken Sie mit der rechten Maustaste auf die Organisationseinheit der Abteilung, der Sie die Berechtigung zum Zurücksetzen von Passwörtern erteilen möchten.
3. Finden Sie die Option 'Delegate Control' (diese sollte die erste Option in der Liste sein). Klicken Sie darauf und drücken Sie Weiter.
4. Sie werden nun aufgefordert, Benutzer oder Gruppen auszuwählen, denen Sie die Kontrolle delegieren möchten – das sind die Personen, die eine Aufgabe ausführen können sollen.
Es wird DRINGEND empfohlen, für jede Gruppe von Berechtigungen, die Sie delegieren, eine Sicherheitsgruppe zu erstellen (z.B. eine für 'Vertrieb – Fähigkeit zum Zurücksetzen von Passwörtern', 'HR – Fähigkeit zum Zurücksetzen von Passwörtern'). Dies ermöglicht es Ihnen, in Zukunft sehr einfach Benutzer zu diesen Gruppen hinzuzufügen oder aus ihnen zu entfernen, anstatt direkt mit Berechtigungen zu hantieren.
5. Fahren Sie fort und fügen Sie eine Gruppe hinzu. (In der Abbildung unten habe ich unser Senior-Management-Team hinzugefügt.)
6. Klicken Sie auf Weiter und wählen Sie dann die Option 'Benutzerpasswörter zurücksetzen und Passwortänderung beim nächsten Anmelden erzwingen'.
7. Klicken Sie auf Weiter und dann auf Fertigstellen – und schon sind Sie fertig!
Entfernen von delegierten Berechtigungen in AD
Jetzt, da Sie den Assistenten abgeschlossen haben, fragen Sie sich vielleicht, wie Sie überprüfen können, ob Sie tatsächlich Berechtigungen delegiert haben und wie Sie diese wieder entfernen.
1. Von Users and Computers, drücken Sie das Ansicht-Menü und stellen Sie sicher, dass „Erweiterte Funktionen“ angekreuzt ist.
2. Wenn Sie dieses Kästchen ankreuzen, können Sie die Sicherheitsregisterkarte sehen, wenn Sie Eigenschaften bei Objekten in Active Directory auswählen.
Klicken Sie mit der rechten Maustaste auf dieselbe OU, für die Sie gerade Berechtigungen delegiert haben, und wählen Sie Eigenschaften, dann die Sicherheitsregisterkarte.
3. Wählen Sie 'Erweitert' und scrollen Sie dann hoch und runter, bis Sie die Gruppe finden, der Sie gerade die Berechtigungen erteilt haben. Sie sollten die Berechtigung 'Passwort zurücksetzen' unter 'Zugriff' aufgelistet sehen.
4. Wenn Sie diese Berechtigung entfernen möchten, könnten Sie sie auswählen und auf Entfernen drücken, aber lassen Sie sie vorerst bestehen und drücken Sie Abbrechen.
Wie Sie sehen können, ist es ziemlich schwierig, delegierte Berechtigungen zu finden – besonders wenn man bedenkt, dass man nicht nur an Organisationseinheiten delegieren kann, sondern auch an Sicherheitsgruppen und sogar direkt an Benutzerobjekte.
Vereinfachen Sie die Analyse von AD-Berechtigungen
Sehen Sie, wie Netwrix Access Analyzer Risiken in Ihrer Active Directory-Umgebung aufdecken kann
Berechtigungsjagd (Verwendung von DSACLS)
Also, ein Albtraumszenario für Sie zum Überlegen ist, dass jemand das Passwort des Chefs zurückgesetzt hat und Sie herausfinden müssen, wer die Berechtigung dazu hatte. (Wenn Sie Netwrix Auditor installiert hätten, könnten Sie dort nachsehen, aber wir gehen vorerst davon aus, dass Sie es nicht haben.)
1. In Users and Computers, navigieren Sie zum Benutzerobjekt, für das Sie die Berechtigungen überprüfen möchten.
2. Klicken Sie mit der rechten Maustaste und wählen Sie 'Eigenschaften', dann 'Attribut-Editor'
3. Scrollen Sie nach unten und doppelklicken Sie auf 'distinguishedName'. Kopieren Sie diesen String für später.
4. Öffnen Sie eine Eingabeaufforderung und geben Sie 'dsacls' ein, gefolgt von dem Einfügen des gerade kopierten Strings, eingeschlossen in Anführungszeichen:
5. Drücken Sie die Eingabetaste.
6. An diesem Punkt werden Sie wahrscheinlich feststellen, dass zu viele Berechtigungen auf dem Bildschirm angezeigt werden – Sie haben zwei Möglichkeiten:
a. Verwenden Sie |more, um am Ende des Befehls jeweils einen Bildschirm vollständig anzuzeigen.
b. Leiten Sie die Ausgabe in eine Textdatei um und lesen Sie diese stattdessen mit > filename.txt.
7. Ich habe mich für die 2te Option entschieden, die Datei im Notepad geöffnet und schließlich herausgefunden, dass die Gruppe des Senior Managements die Berechtigung hat, das Passwort des Chefs zurückzusetzen!
Berechtigungsjagd (mit PowerShell)
Jetzt, da Sie die Delegation entdeckt haben, fragen Sie sich vielleicht, ob es Delegationen gibt, von denen Sie nichts wissen – sei es von ehemaligen Mitarbeitern oder bösartigen Administratoren.
Ich habe ein kurzes PowerShell-Skript zusammengestellt, das jeden delegierbaren Objekttyp durchsucht und die zwei gängigen Berechtigungsdelegationen auflistet – Passwort zurücksetzen und 'Senden als' (aus Exchange).
Hier ist ein Beispiel für einen Durchlauf von einer Domain:
Um dieses Skript in Ihrer eigenen Domain zu verwenden:
1. Öffnen Sie Active Directory Users and Computers und navigieren Sie zu der Domäne (oder Organisationseinheit), die Sie untersuchen.
2. Klicken Sie es mit der rechten Maustaste an und wählen Sie Eigenschaften.
3. Im Tab 'Attribute Editor' suchen Sie nach der Eigenschaft 'distinguishedName'.
4. Wählen Sie es aus und klicken Sie auf Anzeigen, dann kopieren Sie den LDAP Path. Sie werden dies später benötigen.
5. Download a copy of the script from GitHub:
https://raw.githubusercontent.com/thephoton/activedirectory-delegation-searcher/master/search.ps1
6. Klicken Sie mit der rechten Maustaste und bearbeiten Sie das Skript mit PowerShell ISE.
7. Bearbeiten Sie Zeile 6 ($bSearch = …), und ersetzen Sie DOMAINCONTROLLER durch den Namen eines Ihrer Domain-DCs.
8. Bearbeiten Sie Zeile 6, indem Sie LDAP durch den in Schritt 4 kopierten Pfad ersetzen.
9. Speichern Sie das Skript und drücken Sie Ausführen.
10. Lassen Sie das Skript Ihre Active Directory durchsuchen; der Fortschritt wird in der Konsole gemeldet und nach Abschluss erhalten Sie ein Popup, das Details zu Objekten enthält, denen Berechtigungen delegiert wurden – das Ergebnis könnte überraschend sein!
Wenn Sie mehr Informationen darüber benötigen, wie man erkennt, wer Berechtigungen in Active Directory geändert hat, schauen Sie sich unseren how-to an. Es gibt auch ein free tool from Netwrix, das handlungsrelevante Einblicke darüber liefert, wer welche Berechtigungen in Active Directory und Dateifreigaben hat.
Windows PowerShell-Skripterstellung Tutorial für Anfänger
Erfahren Sie mehrTeilen auf
Erfahren Sie mehr
Über den Autor
Matt Hopton
Berater
ICT-Netzwerkmanager, IT-Berater und Unternehmer. Neben seiner Tätigkeit als Netzwerkmanager an der Sir Thomas Rich's School entwickelt Matt Websites für lokale Unternehmen, entwickelt Software und gibt Hardware-Empfehlungen.
Erfahren Sie mehr zu diesem Thema
Erstellen Sie AD-Benutzer in Massen und senden Sie deren Anmeldeinformationen per E-Mail mit PowerShell
Wie man Passwörter mit PowerShell erstellt, ändert und testet
So fügen Sie AD-Gruppen hinzu und entfernen Objekte in Gruppen mit PowerShell
Active Directory-Attribute: Letzte Anmeldung
Vertrauensstellungen in Active Directory