
ADManager Plus Build < 7210 Schwachstelle durch Erhöhung von Berechtigungen
Die Rolle „Modify Computers“ ist eine vordefinierte Rolle in ADManager zur Verwaltung von Computern. Wenn ein Techniker-Benutzer über das Recht „Modify Computers“ für einen Computer verfügt, kann er die Attribute userAccountControl und msDS-AllowedToDelegateTo des Computerobjekts ändern. Auf diese Weise kann der Techniker-Benutzer eine eingeschränkte Kerberos-Delegierung für jeden Computer innerhalb der Organisationseinheit festlegen, für die der Benutzer delegiert wurde.
Entgegen der Behauptung von ADManager kann der Benutzer mit der Rolle „Modify Computers“ die Berechtigungen von Computerobjekten in Active Directory ändern. Die eingeschränkte Kerberos-Delegierung kann für jeden Dienst wie CIFS-, LDAP- oder HOST-Dienste festgelegt werden. Anschließend kann der Benutzer auf diese Dienste zugreifen, indem er die eingeschränkte Kerberos-Delegierung missbraucht. Darüber hinaus kann die uneingeschränkte Kerberos-Delegierung für Computerobjekte festgelegt werden, indem das Attribut userAccountControl geändert wird. Normalerweise können nur Benutzer mit dem Privileg SeEnableDelegationPrivilege eine eingeschränkte Kerberos-Delegierung festlegen. Nur Mitglieder der Gruppe BUILTIN\Administrators verfügen standardmäßig über dieses Privileg. Der für eine Organisationseinheit delegierte Benutzer kann keine eingeschränkte Kerberos-Delegierung festlegen, selbst wenn ein Benutzer das GenericAll-Recht über ein Computerkonto besitzt – der Delegierungsprozess in Active Directory gewährt dieses Privileg also nicht. Allerdings kann der Techniker-Benutzer das Recht SeEnableDelegationPrivilege über die Rolle „Modify Computers“ nutzen.
Autorisierungsproblem der ADMP-Web-App: Das Zuweisen der vordefinierten Rolle „Modify Computers“ delegiert den Techniker-Benutzer unerwarteterweise zum Ändern benutzerdefinierter Attribute von Computern. Auch wenn in der Benutzeroberfläche der Anschein erweckt wird, dass dieses Privileg nicht gewährt wird, wird die Eigenschaft „Zusätzliches benutzerdefiniertes Attribut“ zugewiesen, was zu einer Schwachstelle durch fehlerhafte Zugriffskontrolle führt.
Es gibt keine Einschränkung für das Bearbeiten der Attribute userAccountControl und msDS-AllowedToDelegateTo der Computerobjekte. Die ADMP-Anwendung führt Änderungen wie vorgesehen mit Domänenadministrator-Rechten aus. Wenn wir also einige Einschränkungen umgehen können (z. B. das Format des Attributwerts), werden unsere Anfragen mit Domänenadministrator-Rechten angewendet. Auf diese Weise können wir die Attribute userAccountControl und msDS-AllowedToDelegateTo bearbeiten.
Ein Techniker-Benutzer erweitert seine Privilegien von „Domänenbenutzer“ zu „Domänenadministrator“. Der Benutzer kann den Hash des krbtgt-Kontos mithilfe eines DCSync-Angriffs abrufen, nachdem er eine eingeschränkte Kerberos-Delegierung für den LDAP-Dienst des Domänencontrollers auf einem Computer konfiguriert hat. Ein weiteres Beispiel: Der Benutzer kann auf CLIENT1$ eine eingeschränkte Kerberos-Delegierung für den CIFS-Dienst des DC festlegen und anschließend auf den CIFS-Dienst zugreifen. Dadurch wird der Benutzer zur Verwaltung von CLIENT1$ delegiert, kann jedoch unerwarteterweise auf den CIFS-Dienst des Domänencontrollers zugreifen, indem er sich als ein Benutzer ausgibt.
Der Angreifer kann nach dem Hinzufügen der eingeschränkten Kerberos-Delegierung für den LDAP-Dienst einen DCSync-Angriff durchführen, sofern die folgenden Voraussetzungen erfüllt sind:
Szenario 1: Wenn der Angreifer über lokale Administratorrechte auf einem Computer verfügt und diesen Computer mit der Rolle „Modify Computers“ in ADManager Plus verwalten kann
Szenario 2: Wenn der Angreifer einen Computer zu Active Directory hinzufügt (MAQ, Delegierung) und diesen Computer mit der Rolle „Modify Computers“ verwalten kann
Szenario 3: Wenn der Angreifer den NT-Hash eines Computerkontos auslesen kann (Hash-Auslesen mit mimikatz, secretsdump usw.) und diesen Computer mit der Rolle „Modify Computers“ verwalten kann
Dieser Proof of Concept wurde mit ADManager Plus Build 7203 durchgeführt.
https://github.com/user-attachments/assets/496b3bfd-a95f-4d69-8ee5-53ae0592ebdb