In Abfassungen über Hacker und ihre Methoden ist oft vom Problem mit lokalen Administratorkonten unter Windows die Rede. Vor Windows 7 wurde das Administratorkonto standardmäßig ohne Kennwort erstellt. Das war keine gute Sicherheitspraxis und Hacker nutzen das seither zu ihrem Vorteil.
Seit Windows 7 waren lokale Administratorkonten standardmäßig deaktiviert. Und Sie sollten sie in Ihrer Domäne deaktivieren, egal welches Windows-Betriebssystem Sie einsetzen! Aus verschiedenen Gründen, die zum Teil auf falschen Vorstellungen beruhen, verblieben die lokalen Administratorkonten jedoch auf vielen Installationen. Zu oft haben sie einfach zu erratende Kennwörter von der IT erhalten, manchmal sogar nahezu domänenweit dasselbe Kennwort.
Wenn Hacker erstmal einen Fuß ins System gesetzt haben, suchen sie anhand ihrer teuflischen Checkliste nach diesem privilegierten lokalen Administratorkonto. Sie werden dann im Verlauf ihres Beutezugs versuchen, diese Konten zu benutzen.
Kurzum: sie erraten das Kennwort des lokalen Administratorkontos, übernehmen die Hashes des Domain-Level-Benutzers mit mimikatz und bewegen sich dann frei im Netzwerk.
Oder sie müssen die Hashes von Domain-Level-Benutzern noch nicht einmal übernehmen. In vielen Umgebungen werden die Kennwörter lokaler Administratorkonten über dasselbe Muster festgelegt: sobald Sie eins erraten, sind Sie völlig im Bilde.
In der realen Welt müssen Sie sich möglicherweise mit IT-Mitarbeitern auseinandersetzen, die argumentieren, dass die Administratorkonten verfügbar sein müssen — weil unter Umständen Prozesse oder die Software darauf angewiesen sind.
Gibt es eine Möglichkeit, Administratorkonten zu bewahren, aber ihre Befugnisse einzuschränken?
Microsoft liefert ein paar Empfehlungen darüber, wie sie zu schützen sind. Im Wesentlichen konfigurieren Sie ein GPO (Group Policy Object), um den Netzwerkzugriff, Remote-Desktop und einige andere Dienste über die Vergabe von Benutzerrechten zu deaktivieren.
Um zu sehen, wie das funktionieren würde, habe ich auf meine berühmte Acme-Domäne zurückgegriffen, die ich in Amazon Web Services eingerichtet hatte.
Gehen wir davon aus, dass Kennwörter für Acmes lokale Administratorkonten auf einem Muster basieren — der Servername gefolgt von einer Zahlensequenz — als Gedächtnisstütze für die gebeutelten IT-Mitarbeiter.
In meinem vorgegebenen Szenario verwendete ich das Vanilla psexec-Hilfsprogramm — das übrigens beim kürzlichen NotPetya Ransomware-Ausbruch eine Rolle spielte — um mich auf dem Taco-Server frei zu bewegen. Ich habe mich in die Rolle eines Angreifers versetzt und das von mir erratene Administratorkennwort „Taco“ eingegeben: es hat erstaunlicherweise funktioniert.
Sie können sich die Ergebnisse meiner psexec-Aktivitäten nachfolgend ansehen, bevor ich das GPO „Netzwerkzugriff verweigern“ festgelegt habe.
Nachdem ich das GPO festgelegt hatte, monierte das psexec-Hilfsprogramm, dass mein Benutzername oder mein Kennwort ungültig ist — die Benutzerrechtevergabe hat hier gegriffen. Wenn Sie das zuhause versuchen, denken Sie daran, gpupdate /force
auf dem Domänen-Controller auszuführen, um die GPOs anzuweisen, alle Domänenmitglieder zu synchronisieren.
Das ist eine Notlösung, bei der Sie die lokalen Administratorkonten behalten können, aber Hacker daran hindern, diese Konten im Nu auszubeuten und sich frei im Netzwerk zu bewegen.
Besser und richtig ist, den lokalen Administrator zu deaktivieren und anschließend Domain-Level-Gruppen mit eingeschränkten Rechten unter der lokalen Administratorengruppe einzurichten. Wir werden das zu einem späteren Zeitpunkt erörtern.
Gehen wir aber jetzt davon aus, dass Sie unbedingt diese lokalen Administratorkonten behalten möchten. Sie stellen fest, dass die Kennwörter aus Bequemlichkeit angelegt wurden (und nicht zur Sicherheit), und jetzt möchten Sie die Kennwörter auf globaler Ebene verbessern.
Microsoft hat einmal sogenannte Group Policy Preferences (GPP) in Windows Server 2008 eingeführt, um GPP zu verbessern. Mit einer der neuen GPP-Funktionalitäten konnten Sie Benutzer- und Gruppeninformationen auf einer Domänenbasis aktualisieren. An einer Stelle konnten Sie Kennwörter ändern und anschließend die aktualisierten Kennwörter auf der Domäne verbreiten.
Allerdings fanden Hacker eine bedeutende Schwachstelle im Kennwortverteilungsprozess von GPP. Windows verschlüsselte zwar das Kennwort, allerdings veröffentlichten sie den Verschlüsselungscode in ihrer technischen Dokumentation!
Sie haben seitdem einen Patch dafür herausgebracht und in der AWS-Instanz, mit der ich zuletzt gearbeitet habe, war der Passworteintrag deaktiviert — im nachfolgenden Screenshot ist das Feld ausgegraut.
Im Anfangsstadium meines Experimentierens habe ich ein ungepatchtes AWS-Beispiel gestartet, bei dem ich das Kennwort eingeben konnte. Und tatsächlich konnte ich das AES-verschlüsselte Kennwort aus dem Ordner SYSVOL beziehen.
Und es gibt mit Sicherheit viele weitere Server in dieser Welt ohne den GPP-Patch. Genau genommen suchen Pen-Testing-Programme wie crackmapexec nach verschlüsselten Kennwörtern — siehe die Option -gpp-passwords
— im Ordner SYSVOL und entschlüsseln diese anschließend im Handumdrehen.
Zum Glück hat Microsoft zur Durchführung von Bulkupdates für Administratorkennwörter eine andere Möglichkeit herausgebracht und sich den pfiffigen Namen Local Administrator Password Solution, kurz LAPS, einfallen lassen. Sie können diese Lösung hier herunterladen. Ich werde das demnächst testen und werde Sie über die Ergebnisse informieren.
Eine bessere Möglichkeit für die Handhabung lokaler Administratorkonten ist das GPO Eingeschränkte Gruppen, das Sie unter Computerkonfiguration > Richtlinien > Windows-Einstellungen > Sicherheitseinstellungen
finden. Dieses GPO verwaltet die lokale Administratorengruppe, indem Sie dieser eine Domain-Level-Gruppe hinzufügen können und dann die Änderungen auf der gesamten Domäne verbreiten. Kurzum: Sie haben eine besondere Benutzergruppe, die zentral gesteuert wird und nur über die Berechtigungen verfügt, die Sie für die lokale Administration benötigen.
Für meine Acme-Domäne habe ich lokale Administratorberechtigungen für die Acme-IT-Gruppe (unten) bereitgestellt.
Es gibt weitere Feinheiten bei der Arbeit mit eingeschränkten Gruppen, die wir nächstes Mal besprechen. Außerdem werden wir Organisationseinheiten (Oes) aufgreifen, die uns die Möglichkeit bieten, die Domäne zu segmentieren und die Sicherheit unserer eingeschränkten Gruppen zu verbessern.