Privilege escalation

Übersicht

Diese Checkliste hilft dir, potenzielle Privilege Escalation Vektoren auf einem kompromittierten Windows-System zu identifizieren und auszunutzen. Basierend auf WinPEAS und manuellen Prüfungen deckt sie die häufigsten Schwachstellen und Exploit-Möglichkeiten ab. Mit den erwarteten Ausgaben kannst du direkt erkennen, wie ein System auf bestimmte Befehle reagieren sollte.


Checkliste: Local Windows Privilege Escalation

1. Systeminformationen

Systemdetails abrufen

systeminfo

Erwartete Ausgabe:

OS Name:                   Microsoft Windows 10 Pro
OS Version:                10.0.19042 N/A Build 19042
System Type:               x64-based PC
  • Bedeutung: Alte oder ungepatchte Betriebssystemversionen können anfällig für Kernel-Exploits sein.

Kernel-Exploits prüfen

Nutze Tools wie WinPEAS:

.\winPEASx64.exe

Erwartete Ergebnisse:

  • WinPEAS listet bekannte Kernel-Schwachstellen basierend auf OS-Version und Patch-Level.

Umgebungsvariablen prüfen

  • Bedeutung: Sensible Informationen wie API-Schlüssel oder Passwörter könnten in den Umgebungsvariablen gespeichert sein.

Interessante Registry-Einträge prüfen

  • AlwaysInstallElevated aktiv?

    Erwartete Ausgabe:

    Bedeutung: Wenn dieser Wert auf 1 steht, können .msi-Dateien mit System-Rechten ausgeführt werden:


2. Logging/AV Enumeration

Audit- und WEF-Einstellungen

  • Bedeutung: Schwache Logging-Einstellungen könnten deine Aktionen unerkannt lassen.

WDigest prüfen

Erwartete Ausgabe:

  • Bedeutung: Wenn aktiv, könnten Anmeldedaten im Klartext im Speicher gespeichert sein. Nutze Mimikatz:


3. Benutzer und Berechtigungen

Benutzerrechte und Gruppen

Erwartete Ausgabe:

  • Bedeutung: SeImpersonatePrivilege erlaubt Exploits wie JuicyPotato oder PrintSpoofer, um SYSTEM-Zugriff zu erhalten.


4. Dienste

Schwache Dienste identifizieren

Prüfe Dienste, deren Binärdateien oder Konfiguration modifiziert werden können:

Erwartete Ausgabe:

  • Bedeutung: Wenn BINARY_PATH_NAME modifizierbar ist, ersetze die Datei durch eine bösartige Payload.

Unquoted Service Paths

Prüfe ungesicherte Pfade:

Erwartete Ausgabe:

  • Angriff: Erstelle eine ausführbare Datei in einem Teil des Pfades, z. B. C:\Program.exe.


5. Prozesse

Interessante Prozesse identifizieren

Suche nach Prozessen, die mit privilegierten Rechten laufen:

  • Bedeutung: Zielprozesse könnten sensible Daten wie Passwörter enthalten. Verwende Tools wie ProcDump:

Passwörter im Speicher suchen

Nutze Mimikatz oder ähnliche Tools:


6. Netzwerk

Netzwerkverbindungen prüfen

  • Bedeutung: Prüfe auf Dienste, die nur lokal lauschen. Lokale Dienste wie RDP oder HTTP könnten über Tunnel genutzt werden.

Netzwerkfreigaben prüfen

  • Bedeutung: Finde sensible Dateien oder Ordner in Netzwerkfreigaben.


7. Dateien und Registry

SAM & SYSTEM-Backups

Prüfe, ob Backups der Registry existieren:

Angriff: Extrahiere Hashes mit Tools wie secretsdump:

Konfigurationsdateien durchsuchen

Prüfe auf Passwörter oder Schlüssel in Web- oder Applikationskonfigurationen:


8. DLL Hijacking

Schwache DLL-Pfade

Prüfe, ob ein Dienst DLLs aus unsicheren Pfaden lädt:

  • Angriff: Erstelle eine bösartige DLL und lege sie in den unsicheren Pfad.


9. Windows Credentials

Winlogon-Credentials prüfen

Erwartete Ausgabe:

RDP-Verbindungen

Prüfe gespeicherte RDP-Verbindungen:


Tools für Automatisierung

  • WinPEAS: Automatische Privilege Escalation Enumeration:

  • PowerUp: Prüfe spezifische Privilege Escalation-Szenarien:

Last updated