Privilegien-Eskalation: Windows-Admin dank Linux
In diesem Tutorial zeige ich euch, wie man sich Administrator-Rechte an Windows PCs mittels Live-Boot CD sichern kann. Wir werden zwei Szenarien simulieren:
- aktivieren eines Admin Accounts
- hochstufen eines einfachen Benutzers in die Administratoren Gruppe
Das Ganze bewerkstelligen wir, indem wir den SAM Security_Accounts_Manager mittels eines Live-Linux Systems manipulieren.
Ausgangssituation
Auf einem Windows System sind die Benutzer User
und sysadmin
angelegt. User
besitzt keine Administratoren-Rechte, ist mit einem Passwort geschützt und aktiviert. sysadmin
hingegen ist Mitglied der lokalen Administratoren, ebenfalls mit einem Passwort geschützt aber deaktiviert.
Vorbereitung
Achtung!
Die Techniken und Methoden in diesem Artikel sind ausschließlich für Lernzwecke. Ein Missbrauch ist strafbar!1)Ubuntu herunterladen
Prinzipiell kann man jede Live-Distribution nutzen. Ich habe mich für Lubuntu entschieden:
Nach dem Download müsst Ihr die Image-Datei auf einen bootbaren USB Stick oder eine DVD portiertieren. Damit der Startvorgang fehlerfrei läuft solltet ihr im Bios folgende Einstellungen anpassen:
- SafeBoot deaktivieren
- Boot Reihenfolge auf das entsprechende Medium ändern
Nun startet ihr Lubuntu und konfiguriert noch folgendes:
- Keyboard Layout auf Deutsch umstellen
- Terminal öffnen
- Paketquellen aktualisieren
chntpw installieren
Jetzt können wir chntpw
installieren, mittels:
sudo apt install chntpw
Windows Partition finden
Wir suchen die Windows Partition.
sudo sfdisk -l
In unserem Beispiel finden wir sie auf /dev/sda3
. Diese binden wir im nächsten Schritt ein.
Windows Partition einbinden
Wir brauchen einen Mountpoint für die Partition und erstellen diesen in unserem $HOME-Verzeichnis.
mkdir ~/win
Anschließend mounten wir die Partition.
sudo mount /dev/sda3 ~/win
Nun navigieren wir in das Verzeichnis, des SAM.
cd ~/win/Windows/System32/config
Manipulation des SAM
chntpw starten
Jetzt wird es Zeit unser eben installiertes Tool zu starten.
sudo chntpw -i SAM
SAM editieren
chntpw
präsentiert sich, wie oben zu sehen ist. Wir wählen den Punkt 1 aus und sehen eine Übersicht der Benutzer.
Wir wollen nun den Benutzer sysadmin
aktivieren und das Passwort zurücksetzen.
- sysadmin Benutzer auswählen (03ea)
Im nächsten Dialog sehen wir eine Übersicht des Benutzers und können diesen nun bearbeiten.
- Option 1 - Clear (blank) user password
- Option 2 - Unlock and enable user account
Den ersten Benutzer haben wir geschafft. Wir quittieren mit q
und wählen den nächsten Benutzer User
aus.
- User Benutzer auswählen (03eb)
Und nun setzen wir folgende Optionen:
- Option 1 - Clear (blank) user password
- Option 3 - Promote User
Wir kehren zurück in den Hauptdialog und beenden das Programm mit q
. Die anschließende Abfrage, ob in den SAM geschrieben werden soll, bestätigen wir.
Lubuntu kann nun beendet und der Rechner heruntergefahren werden.
Rechner Neustarten
Um den Rechner nun zu starten, müssen folgende Dinge im BIOS gesetzt werden:
- Boot Reihenfolge zurücksetzen
- SafeBoot aktivieren
Ergebnis
Nach einem Neustart ist das Anmelden ohne Passwort für die Benutzer User
und sysadmin
möglich. Beide Konten sind Mitglieder von Administratoren
und besitzen somit volle Berechtigungen.
Ein Blick in die PowerShell zeigt uns, dass unsere Änderungen erfolgreich waren.
Wie schütze ich mich?
Um diese Art der Manipulation zu verhindern, kann man folgende Maßnahmen ergreifen:
- Erschweren des physischen Zugangs zur Maschine
- UEFI Passwort
- Laufwerksverschlüsselung z.B. BitLocker
- Aufklärung und Gefahrenbewusstsein schaffen
Diskussion