Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

Das Erhöhen von Rechten ist die Nutzung der aktuellen Kontorechte durch einen Angreifer, um zusĂ€tzlichen, in der Regel höheren Zugriff auf das System zu erlangen. Obwohl das Erhöhen von Rechten das Ergebnis der Ausnutzung von Zero-Day-Schwachstellen oder der Arbeit erstklassiger Hacker sein kann, die gezielte Angriffe durchfĂŒhren, geschieht es in den meisten FĂ€llen aufgrund von Fehlkonfigurationen des Computers oder des Kontos. Wenn die Attacke weitergefĂŒhrt wird, nutzen die Angreifer eine Reihe separater Schwachstellen aus, was zusammen zu einer katastrophalen Datenleckage fĂŒhren kann.

Warum sollten Benutzer keine lokalen Administratorrechte haben?

Wenn Sie ein Sicherheitsspezialist sind, mag es offensichtlich erscheinen, dass Benutzer keine lokalen Administratorrechte haben sollten, da dies:

  • Ihre Konten anfĂ€lliger fĂŒr verschiedene Angriffe macht
  • Diese Angriffe erheblich schwerwiegender macht

Leider ist dies fĂŒr viele Organisationen nach wie vor ein sehr umstrittenes Thema und ist hĂ€ufig mit lebhaften Diskussionen verbunden (siehe beispielsweise mein Vorgesetzter sagt, dass alle Benutzer lokale Administratoren sein sollten). Ohne auf die Einzelheiten dieser Diskussion einzugehen, halten wir es fĂŒr gegeben, dass ein Angreifer Administratorrechte auf dem untersuchten System erlangt hat: entweder durch einen Exploit oder weil die Maschinen nicht ausreichend geschĂŒtzt wurden.

Schritt 1. RĂŒckwĂ€rtsauflösung von DNS-Namen ĂŒber PowerShell

StandardmĂ€ĂŸig ist PowerShell auf vielen lokalen Arbeitsstationen und den meisten Windows-Servern installiert. Und obwohl es nicht ohne Übertreibung als Ă€ußerst nĂŒtzliches Automatisierungs- und Verwaltungstool angesehen wird, kann es ebenso gut zu einer fast unsichtbaren fileless-Malware (ein Programm zum Hacken, das keine Spuren des Angriffs hinterlĂ€sst).

In unserem Fall beginnt der Angreifer, eine Netzwerk-Reconnaissance mit einem PowerShell-Skript durchzufĂŒhren, indem er schrittweise den IP-Adressraum des Netzwerks durchlĂ€uft und versucht festzustellen, ob diese IP einem Knoten zugeordnet ist und falls ja, wie der Netzwerkname dieses Knotens lautet.
Es gibt viele Möglichkeiten, diese Aufgabe durchzufĂŒhren, aber die Verwendung des Cmdlets Get-ADComputer ist eine zuverlĂ€ssige Option, da es tatsĂ€chlich eine umfassende Menge an Daten zu jedem Knoten zurĂŒckgibt:

 import-module activedirectory Get-ADComputer -property * -filter { ipv4address -eq '10.10.10.10'}

Falls die Geschwindigkeit in großen Netzwerken Probleme verursacht, kann ein umgekehrter DNS-Systemaufruf verwendet werden:

[System.Net.Dns]::GetHostEntry('10.10.10.10').HostName

Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

Diese Methode zur Auflistung von Knoten im Netzwerk ist sehr beliebt, da die meisten Netzwerke kein Zero-Trust-Sicherheitsmodell verwenden und interne DNS-Anfragen auf verdĂ€chtige AktivitĂ€tsanstiege nicht ĂŒberwachen.

Schritt 2: Zielauswahl

Das Endergebnis dieses Schrittes ist die Erfassung einer Liste von Hostnamen von Servern und Arbeitsstationen, die zur Fortsetzung des Angriffs verwendet werden kann.

Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

Anhand des Namens scheint der Server 'HUB-FILER' ein lohnendes Ziel zu sein, da Datei-Server im Laufe der Zeit in der Regel eine große Anzahl von Netzwerkmappen und ĂŒbermĂ€ĂŸigen Zugriff fĂŒr zu viele Personen anhĂ€ufen.

Die Ansicht ĂŒber den Windows Explorer ermöglicht es uns, das Vorhandensein eines offenen gemeinsamen Ordners festzustellen, aber unser aktuelles Konto hat möglicherweise keinen Zugriff darauf (wahrscheinlich haben wir nur Berechtigungen zur Auflistung).

Schritt 3: ÜberprĂŒfung der ACLs

Jetzt können wir auf unserem Host HUB-FILER und im Zielordner share ein PowerShell-Skript ausfĂŒhren, um die Liste der ACLs zu erhalten. Wir können dies von der lokalen Maschine aus tun, da wir bereits ĂŒber lokale Administratorrechte verfĂŒgen:

(get-acl hub-filershare).access | ft IdentityReference,FileSystemRights,AccessControlType,IsInherited,InheritanceFlags –auto

Ergebnis:

Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

Daraus sehen wir, dass die Gruppe DomĂ€nenbenutzer nur auf die Auflistung zugreifen kann, wĂ€hrend die Gruppe Helpdesk auch Änderungsrechte hat.

Schritt 4: Identifizierung der Konten

Nachdem wir Get-ADGroupMember, werden wir alle Mitglieder dieser Gruppe erhalten können:

Get-ADGroupMember -identity Helpdesk

Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

In dieser Liste sehen wir das Computer-Konto, das wir bereits identifiziert haben und zu dem wir bereits Zugang erhalten haben:

Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

Schritt 5: Verwendung von PSExec fĂŒr die AusfĂŒhrung unter dem Computer-Konto

PsExec von Microsoft Sysinternals ermöglicht es, Befehle im Kontext des Systemkontos SYSTEM@HUB-SHAREPOINT auszufĂŒhren, das, wie wir wissen, Mitglied der Zielgruppe Helpdesk ist. Das heißt, wir mĂŒssen nur folgendes ausfĂŒhren:

PsExec.exe -s -i cmd.exe

Nun haben Sie vollen Zugriff auf den Zielordner HUB-FILERshareHR, da Sie im Kontext des Computer-Kontos HUB-SHAREPOINT arbeiten. Mit diesem Zugriff können Daten auf ein tragbares Speichermedium kopiert oder auf andere Weise extrahiert und ĂŒber das Netzwerk ĂŒbertragen werden.

Schritt 6: Erkennung dieses Angriffs

Diese spezifische Schwachstelle in der Berechtigungseinstellung von Konten (Computer-Konten, die auf gemeinsame Netzwerkordner zugreifen, anstatt Benutzerkonten oder Dienstkonten zu verwenden) kann erkannt werden. Ohne die richtigen Werkzeuge ist dies jedoch sehr schwierig.

Um diese Art von Angriffen zu erkennen und zu verhindern, können wir DatAdvantage verwenden, um Gruppen mit Computer-Konten zu identifizieren und dann den Zugriff auf diese zu sperren. DatAlert geht weiter und ermöglicht es, eine Benachrichtigung speziell fĂŒr ein solches Szenario zu erstellen.

Im Screenshot unten ist die Benutzerbenachrichtigung zu sehen, die jedes Mal ausgelöst wird, wenn ein Computer-Konto auf Daten auf dem ĂŒberwachten Server zugreift.

Verwendung von PowerShell zur Erhöhung der Berechtigungen lokaler Konten

Die nÀchsten Schritte mit PowerShell

Möchten Sie mehr erfahren? Verwenden Sie den Entsperrcode „blog“ fĂŒr kostenlosen Zugang zum vollstĂ€ndigen PowerShell-Videokurs und Grundlagen von Active Directory.

Quelle: habr.com

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster