SEKurity GmbH Logo
adPEAS

adPEAS v2 Episode 4: Security Checks - Alle Module im Überblick

Kompletter Überblick über die adPEAS v2 Security-Check-Module: Domain, Accounts, Delegation, Rights, Creds, ADCS, Computer, GPO und Application Checks für Active Directory.

Alexander Sturz

Gründer & Red Team Lead

8 Min. Lesezeit
Teilen:

Einleitung

Die Verbindung steht, die Authentifizierung ist durch - jetzt beginnt die eigentliche Arbeit. In den vorherigen Episoden ging es darum, wie adPEAS sich mit dem Active Directory verbindet und welche Authentifizierungsmethoden zur Verfügung stehen. Dieser Post dreht sich um das Herzstück: die Security Checks.

Wenn man ein Active Directory manuell analysiert, sitzt man schnell mehrere Stunden an LDAP-Filtern, ACL-Parsing und GPO-Analyse. adPEAS automatisiert das - aber nicht als Blackbox. Jeder Check hat einen klaren Zweck, und wer versteht was geprüft wird, kann die Ergebnisse besser einordnen und weiß, wo es sich lohnt tiefer zu graben.

adPEAS organisiert die Checks in zehn Module. Jedes Modul deckt einen bestimmten Angriffsvektor oder Konfigurationsbereich ab. Man kann alle Module auf einmal laufen lassen, oder gezielt einzelne auswählen - je nachdem was der Scope des Assessments hergibt.

Ein wichtiges Detail: adPEAS klassifiziert Ergebnisse nach Severity. Nicht jeder Fund ist gleich kritisch. Ein deaktiviertes LDAP Signing ist ein anderes Kaliber als ein Kerberoastable Service Account. Die Severity-Level (Finding, Hint, Note, Secure) helfen dabei, die Spreu vom Weizen zu trennen und sich auf die Dinge zu konzentrieren, die wichtiger sind.


Modul-Übersicht

adPEAS organisiert die Security-Checks in Module. Jedes Modul enthält mehrere Einzelchecks:

+-----------------------------------------------------------------------------+
|                          adPEAS CHECK MODULES                               |
+-------------+---------------------------------------------------------------+
| Domain      | Password Policy, Trusts, LDAP Configuration, SMB Signing      |
+-------------+---------------------------------------------------------------+
| Accounts    | Tier-0 Groups, Inactive Admins, Protected Users, SID History  |
+-------------+---------------------------------------------------------------+
| Delegation  | Unconstrained, Constrained, RBCD                              |
+-------------+---------------------------------------------------------------+
| Rights      | Dangerous ACLs/OUs, Password Reset, Add Computer, LAPS        |
+-------------+---------------------------------------------------------------+
| Creds       | Kerberoasting, AS-REP Roasting, Credential Exposure, LAPS     |
+-------------+---------------------------------------------------------------+
| Computer    | Outdated OS, LAPS Configuration, Infrastructure, Owners       |
+-------------+---------------------------------------------------------------+
| GPO         | GPO Permissions, Local Groups, Scheduled Tasks, Scripts       |
+-------------+---------------------------------------------------------------+
| ADCS        | Certificate Templates (ESC1-5, ESC8-9, ESC13, ESC15)          |
+-------------+---------------------------------------------------------------+
| Application | Exchange, SCCM, SCOM Infrastructure                           |
+-------------+---------------------------------------------------------------+
| Bloodhound  | Data Collection for BloodHound CE                             |
+-------------+---------------------------------------------------------------+

Module ausführen

# Alle Module
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth

# Einzelne Module
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Module Domain
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Module Domain,Accounts,ADCS

# OPSEC-Modus
Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -OPSEC

Domain Module

Das Domain-Modul ist der Startpunkt jeder Analyse. Bevor man sich in Accounts und ACLs vertieft, muss man wissen: Wie ist die Domain grundsätzlich konfiguriert? Schwache Passwort-Policies, fehlendes LDAP Signing oder deaktiviertes SID Filtering sind Findings, die den gesamten Scope eines Assessments beeinflussen.

CheckWas wird geprüft
Domain InformationDCs, FSMO-Rollen, Kerberos Policy
Password PolicyMin. Länge, Komplexität, Lockout, History
Domain TrustsTrust-Typen, SID Filtering
LDAP ConfigurationLDAP Signing, Channel Binding, Anonymous Access
SMB SigningSigning auf allen Systemen

Accounts Module

Privilegierte Accounts sind das primäre Ziel jedes Angreifers. Dieses Modul prüft nicht nur wer in den Tier-0-Gruppen sitzt, sondern auch ob diese Accounts richtig konfiguriert sind. Ein Domain Admin mit PasswordNeverExpires und ohne Protected Users Mitgliedschaft - das sind die Findings, die in jedem zweiten Assessment auftauchen.

CheckWas wird geprüft
Privileged GroupsMitglieder von Domain Admins, Enterprise Admins, etc.
Inactive AdminsLast Logon > 90 Tage
Protected UsersMitgliedschaft in Protected Users
Password Never ExpiresAdmin-Accounts mit PasswordNeverExpires
Reversible EncryptionAdmin-Accounts mit Reversible Encryption
Managed Service AccountsgMSA/sMSA Security
SID HistoryVersteckte Privilegien
Non-Default OwnersBesitzer von User-Objekten
Password Not RequiredPASSWD_NOTREQD Flag

Delegation Module

Kerberos Delegation ist eine der am häufigsten übersehenen Angriffsflächen im AD. Unconstrained Delegation auf einem Webserver? Dann ist ein kompromittierter Webserver gleichzeitig ein Ticket-Harvester für jeden Admin der sich verbindet.

CheckWas wird geprüft
UnconstrainedTrustedForDelegation Flag
ConstrainedmsDS-AllowedToDelegateTo
RBCDmsDS-AllowedToActOnBehalfOfOtherIdentity

Rights Module

ACLs sind das stille Risiko im Active Directory. Von aussen sieht alles sauber aus - aber unter der Haube hat vielleicht ein IT-Helpdesk GenericAll auf die Domain Admins Gruppe. Dieses Modul deckt genau solche versteckten Berechtigungsprobleme auf.

CheckWas wird geprüft
Dangerous ACLsGenericAll, WriteDACL, WriteOwner, DCSync
Dangerous OU PermissionsACLs auf OUs (GenericAll, WriteDACL, etc.)
Password Reset RightsForceChangePassword Extended Right
Add Computer RightsMachineAccountQuota, Create-Child Computer
LAPS PermissionsWer kann ms-Mcs-AdmPwd/msLAPS-Password lesen

Creds Module

Credentials im AD zu finden ist oft einfacher als man denkt. GPP-Passwörter in SYSVOL, Klartext-Passwörter in Description-Feldern, kerberoastable Service Accounts mit schwachen Passwörtern - dieses Modul sucht systematisch nach allem, was ein Angreifer für den initialen Zugang oder die Privilege Escalation nutzen könnte.

CheckWas wird geprüft
KerberoastingAccounts mit SPNs
AS-REP RoastingAccounts ohne Pre-Auth
Credential ExposureSYSVOL-Scripts, GPP cpassword, Cleartext
Unix PasswordsUnixUserPassword/UserPassword Attribute
LAPS Credential AccessLesbare ms-Mcs-AdmPwd / msLAPS-Password
Passwords in DescriptionDescription/Info Attribute Scan

ADCS Module

Seit der SpecterOps-Forschung zu “Certified Pre-Owned” (2021) sind ADCS-Schwachstellen einer der zuverlässigsten Wege zur Privilege Escalation. Ein falsch konfiguriertes Certificate Template kann den Unterschied zwischen “Domain User” und “Domain Admin” ausmachen - mit einem einzigen Zertifikatsantrag.

ESCProblemImpact
ESC1User kann SAN selbst angebenDomain Admin mit einem Zertifikat
ESC2Any Purpose EKUZertifikat für Client Auth nutzbar
ESC3Enrollment AgentZertifikat für andere anfordern
ESC4Template ACLTemplate zu ESC1 modifizieren
ESC5PKI Container ACLGesamte PKI-Infrastruktur manipulieren
ESC8HTTP Web EnrollmentNTLM Relay zu Cert Request (Detection only)
ESC9No Security Extension + Client AuthCertificate Mapping Bypass
ESC13Issuance Policy → AD GroupZertifikat erbt Gruppen-Mitgliedschaft
ESC15Schema v1 + Enrollee-supplied SubjectCVE-2024-49019

ESC5 Details: Prüft gefährliche Permissions (GenericAll, WriteDacl, WriteOwner) auf PKI Container-Objekten:

  • CN=Public Key Services (Root PKI Container)
  • CN=Certificate Templates (Template-Erstellung/Modifikation)
  • CN=Enrollment Services (Enrollment-Kontrolle)
  • CN=NTAuthCertificates (Trusted CAs für Kerberos)
  • CN=OID (Issuance Policies, ESC13-verwandt)

Wenn unprivilegierte User diese Rechte haben, können sie neue vulnerable Templates erstellen, bestehende Templates unsicher machen, sich selbst Enrollment Rights geben oder die NTAuth Store manipulieren.


Computer Module

Computer-Objekte verraten viel über den Zustand einer Umgebung. Veraltete Betriebssysteme, fehlende LAPS-Abdeckung, nicht-standardmäßige Owners auf Server-Objekten - alles Indikatoren für potenzielle Schwachstellen in der Infrastruktur.

CheckWas wird geprüft
Outdated OSWindows Version
LAPS ConfigurationLAPS Deployment und GPO-Konfiguration
Infrastructure ServersDCs, Exchange, SQL, SCCM
Non-Default OwnersBesitzer von Computer-Objekten

GPO Module

Group Policies sind ein zweischneidiges Schwert: Sie sind das Rückgrat der Sicherheitskonfiguration, aber auch ein Angriffsvektor. Wer eine GPO editieren kann die auf Domain Controller wirkt, hat effektiv Domain Admin Rechte - nur über einen Umweg.

CheckWas wird geprüft
GPO PermissionsWer kann GPOs bearbeiten, GPO-Links
Local Group MembershipRestricted Groups/Preferences
Scheduled TasksGPO-definierte Scheduled Tasks
Script PathsLogon/Logoff/Startup/Shutdown Scripts

Application Module

Enterprise-Applikationen wie Exchange, SCCM und SCOM sind häufig hochberechtigte Systeme mit direktem Pfad zu Domain Admin. Besonders SCCM wird oft übersehen - ein kompromittierter Management Point kann Software auf jedem Client im Scope ausführen.

CheckWas wird geprüft
ExchangeServer, Gruppen, Berechtigungen
SCCM/MECMSites, Management Points, Hierarchie, Clients, PXE/WDS, Service Accounts
SCOMManagement Server, RunAs Accounts

Einzelne Check-Funktionen

Nach Connect-adPEAS lassen sich Checks auch einzeln aufrufen:

# Session aufbauen
Connect-adPEAS -Domain "contoso.com" -UseWindowsAuth

# Einzelne Checks
Get-KerberoastableAccounts      # Kerberoastable Service Accounts
Get-ASREPRoastableAccounts      # AS-REP Roastable Accounts
Get-UnconstrainedDelegation     # Unconstrained Delegation
Get-ConstrainedDelegation       # Constrained Delegation
Get-DomainTrusts                # Domain Trusts
Get-PrivilegedGroupMembers      # Members of privileged groups
Get-DangerousACLs               # Dangerous ACLs on domain root
Get-ADCSVulnerabilities         # ADCS ESC vulnerabilities

# Session beenden
Disconnect-adPEAS

Findings verstehen

adPEAS verwendet farbcodierte Symbole in der Konsolenausgabe:

SymbolFarbeBedeutung
[!]RotFinding — Sicherheitsproblem
[+]GelbHint — Interessant, prüfenswert
[*]GrünNote — Information
[#]Rot auf GelbSecure — Gute Konfiguration

Quick Reference: Was prüfen?

Standard Scan:

Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth

Fokussiert:

Invoke-adPEAS -Domain "contoso.com" -UseWindowsAuth -Module ADCS,Domain,Creds

← Episode 3: Authentifizierung | Episode 5: Output & Reports — coming soon

Über den Autor

Alexander Sturz

Gründer & Red Team Lead

Active Directory Ninja und Experte für offensive Sicherheit mit Spezialisierung auf Kompromittierung von Unternehmensinfrastrukturen und Post-Exploitation-Techniken.

Verwandte Artikel