Verstecktes Passwort-Hacking mit Smbexec

Verstecktes Passwort-Hacking mit Smbexec

Wir schreiben regelmäßig darüber, dass Hacker oft auf Exploits setzen Hacking-Methoden ohne Schadcodeum einer Entdeckung zu entgehen. Sie im wahrsten Sinne des Wortes „Überleben auf der Weide“, unter Verwendung von Standard-Windows-Tools, wodurch Antivirenprogramme und andere Dienstprogramme zur Erkennung bösartiger Aktivitäten umgangen werden. Wir als Verteidiger sind nun gezwungen, uns mit den unglücklichen Folgen solch cleverer Hacking-Techniken auseinanderzusetzen: Ein gut platzierter Mitarbeiter kann die gleiche Vorgehensweise nutzen, um heimlich Daten (geistiges Eigentum des Unternehmens, Kreditkartennummern) zu stehlen. Und wenn er nicht hetzt, sondern langsam und leise arbeitet, wird es extrem schwierig – aber immer noch möglich, wenn er die richtige Herangehensweise und das Passende anwendet Werkzeuge, – um solche Aktivitäten zu identifizieren.

Andererseits möchte ich Mitarbeiter nicht verteufeln, denn niemand möchte in einem Geschäftsumfeld direkt aus Orwells 1984 arbeiten. Glücklicherweise gibt es eine Reihe praktischer Schritte und Life-Hacks, die Insidern das Leben erheblich erschweren können. Wir werden darüber nachdenken verdeckte Angriffsmethoden, wird von Hackern von Mitarbeitern mit technischem Hintergrund verwendet. Und etwas weiter unten werden wir Möglichkeiten zur Reduzierung solcher Risiken diskutieren – wir werden sowohl technische als auch organisatorische Möglichkeiten prüfen.

Was ist los mit PsExec?

Edward Snowden ist zu Recht oder Unrecht zum Synonym für Insider-Datendiebstahl geworden. Vergessen Sie übrigens nicht, einen Blick darauf zu werfen dieser Hinweis über andere Insider, die ebenfalls einen gewissen Ruhmesstatus verdienen. Ein wichtiger Punkt, der bei den von Snowden verwendeten Methoden hervorzuheben ist, ist, dass er unseres Wissens nach nicht installiert keine externe Schadsoftware!

Stattdessen nutzte Snowden ein wenig Social Engineering und nutzte seine Position als Systemadministrator, um Passwörter zu sammeln und Anmeldeinformationen zu erstellen. Nichts Kompliziertes – keines Mimikatz, Anschläge der Mann in der Mitte oder Metasploit.

Organisationsmitarbeiter befinden sich nicht immer in der einzigartigen Situation von Snowden, aber es gibt eine Reihe von Lehren, die man aus dem Konzept des „Überlebens durch Beweidung“ ziehen kann – sich nicht an böswilligen Aktivitäten zu beteiligen, die entdeckt werden können, und besonders zu sein Gehen Sie vorsichtig mit der Verwendung von Anmeldeinformationen um. Merken Sie sich diesen Gedanken.

Psexec und sein Cousin crackmapexec haben unzählige Pentester, Hacker und Cybersicherheits-Blogger beeindruckt. Und in Kombination mit mimikatz ermöglicht psexec Angreifern, sich innerhalb eines Netzwerks zu bewegen, ohne das Klartext-Passwort kennen zu müssen.

Mimikatz fängt den NTLM-Hash vom LSASS-Prozess ab und übergibt dann das Token bzw. die Anmeldeinformationen – die sogenannten. „Pass the Hash“-Angriff – in psexec, das es einem Angreifer ermöglicht, sich bei einem anderen Server anzumelden als ein anderer Benutzer. Und bei jedem weiteren Umzug auf einen neuen Server sammelt der Angreifer zusätzliche Anmeldeinformationen und erweitert so den Umfang seiner Möglichkeiten bei der Suche nach verfügbaren Inhalten.

Als ich anfing, mit psexec zu arbeiten, kam es mir magisch vor – vielen Dank Mark Russinowitsch, der brillante Entwickler von psexec – aber ich kenne auch seinen laut Komponenten. Er ist niemals geheimnisvoll!

Die erste interessante Tatsache über psexec ist, dass es äußerst komplex ist SMB-Netzwerkdateiprotokoll von Microsoft. Bei Verwendung von SMB überträgt psexec kleine Datenmengen binären Dateien auf das Zielsystem und legen Sie sie im Ordner C:Windows ab.

Als nächstes erstellt psexec einen Windows-Dienst mit der kopierten Binärdatei und führt ihn unter dem äußerst „unerwarteten“ Namen PSEXECSVC aus. Gleichzeitig können Sie das alles tatsächlich sehen, wie ich es getan habe, indem Sie eine entfernte Maschine beobachten (siehe unten).

Verstecktes Passwort-Hacking mit Smbexec

Die Visitenkarte von Psexec: „PSEXECSVC“-Dienst. Es führt eine Binärdatei aus, die über SMB im Ordner C:Windows abgelegt wurde.

Als letzter Schritt öffnet sich die kopierte Binärdatei RPC-Verbindung an den Zielserver und akzeptiert dann Steuerbefehle (standardmäßig über die Windows-Cmd-Shell), startet sie und leitet Eingaben und Ausgaben an den Heimcomputer des Angreifers um. In diesem Fall sieht der Angreifer die grundlegende Befehlszeile – genauso, als ob er direkt verbunden wäre.

Viele Komponenten und ein sehr lauter Prozess!

Die komplexen Interna von psexec erklären die Meldung, die mich bei meinen ersten Tests vor einigen Jahren verwirrte: „Starting PSEXECSVC...“, gefolgt von einer Pause, bevor die Eingabeaufforderung erscheint.

Verstecktes Passwort-Hacking mit Smbexec

Psexec von Impacket zeigt tatsächlich, was unter der Haube vor sich geht.

Kein Wunder: psexec hat unter der Haube eine Menge Arbeit geleistet. Wenn Sie an einer ausführlicheren Erklärung interessiert sind, schauen Sie hier vorbei damit wunderbare Beschreibung.

Offensichtlich, wenn es als Systemverwaltungstool verwendet wird ursprünglicher Zweck psexec, am „Brummen“ all dieser Windows-Mechanismen ist nichts auszusetzen. Für einen Angreifer würde psexec jedoch zu Komplikationen führen, und für einen vorsichtigen und gerissenen Insider wie Snowden wäre psexec oder ein ähnliches Dienstprogramm ein zu großes Risiko.

Und dann kommt Smbexec

SMB ist eine clevere und geheime Möglichkeit, Dateien zwischen Servern zu übertragen, und Hacker infiltrieren SMB seit Jahrhunderten direkt. Ich denke, jeder weiß bereits, dass es sich nicht lohnt öffne dich SMB-Ports 445 und 139 zum Internet, oder?

Auf der Defcon 2013 war Eric Millman (brav0hax) vorgeführt smexec, damit Pentester heimliches SMB-Hacking ausprobieren können. Ich kenne nicht die ganze Geschichte, aber dann hat Impacket smbexec weiter verfeinert. Tatsächlich habe ich für meine Tests die Skripte von Impacket in Python heruntergeladen Github.

Im Gegensatz zu psexec, smbexec vermeidet передачи потенциально детектируемого бинарного файла на целевую машину. Вместо этого утилита полностью живёт с «подножного корма» через запуск lokal Windows-Befehlszeile.

Dies geschieht folgendermaßen: Es leitet einen Befehl vom angreifenden Computer über SMB an eine spezielle Eingabedatei weiter und erstellt dann eine komplexe Befehlszeile (wie einen Windows-Dienst) und führt sie aus, die Linux-Benutzern bekannt vorkommt. Kurz gesagt: Es startet eine native Windows-Cmd-Shell, leitet die Ausgabe in eine andere Datei um und sendet sie dann über SMB zurück an den Rechner des Angreifers.

Der beste Weg, dies zu verstehen, ist ein Blick auf die Befehlszeile, die ich dem Ereignisprotokoll entnehmen konnte (siehe unten).

Verstecktes Passwort-Hacking mit Smbexec

Ist dies nicht die beste Möglichkeit, E/A umzuleiten? Die Diensterstellung hat übrigens die Ereignis-ID 7045.

Wie psexec erstellt es auch einen Dienst, der die ganze Arbeit erledigt, aber den Dienst danach gelöscht – Es wird nur einmal zum Ausführen des Befehls verwendet und verschwindet dann! Ein Informationssicherheitsbeauftragter, der den Computer eines Opfers überwacht, kann dies nicht erkennen offensichtlich Angriffsindikatoren: Es wird keine schädliche Datei gestartet, es wird kein dauerhafter Dienst installiert und es gibt keine Hinweise auf die Verwendung von RPC, da SMB das einzige Mittel zur Datenübertragung ist. Brillant!

Auf der Seite des Angreifers steht eine „Pseudo-Shell“ mit Verzögerungen zwischen dem Senden des Befehls und dem Empfang der Antwort zur Verfügung. Dies reicht jedoch völlig aus, damit ein Angreifer – sei es ein Insider oder ein externer Hacker, der bereits Fuß gefasst hat – sich auf die Suche nach interessanten Inhalten macht.

Verstecktes Passwort-Hacking mit Smbexec

Um Daten vom Zielcomputer an den Computer des Angreifers zurückzugeben, wird es verwendet smbclient. Ja, es ist derselbe Samba Dienstprogramm, aber nur von Impacket in ein Python-Skript konvertiert. Tatsächlich ermöglicht Ihnen smbclient das verdeckte Hosten von FTP-Übertragungen über SMB.

Lassen Sie uns einen Schritt zurücktreten und darüber nachdenken, was dies für den Mitarbeiter bedeuten kann. Nehmen wir in meinem fiktiven Szenario an, dass ein Blogger, Finanzanalyst oder hochbezahlter Sicherheitsberater einen privaten Laptop für die Arbeit nutzen darf. Infolge eines magischen Prozesses ärgert sie sich über das Unternehmen und „geht völlig schief“. Je nach Laptop-Betriebssystem wird entweder die Python-Version von Impact oder die Windows-Version von smbexec oder smbclient als .exe-Datei verwendet.

Wie Snowden erfährt sie das Passwort eines anderen Benutzers entweder durch einen Blick über die Schulter oder sie hat Glück und stößt auf eine Textdatei mit dem Passwort. Und mit Hilfe dieser Anmeldeinformationen beginnt sie, sich auf einer neuen Ebene der Privilegien im System zurechtzufinden.

Hacking DCC: Wir brauchen keinen „dummen“ Mimikatz

In meinen vorherigen Beiträgen zum Thema Pentesting habe ich mimikatz sehr oft verwendet. Dies ist ein großartiges Tool zum Abfangen von Anmeldeinformationen – NTLM-Hashes und sogar Klartext-Passwörter, die in Laptops versteckt sind und nur darauf warten, verwendet zu werden.
Die Zeiten haben sich geändert. Überwachungstools können Mimikatz besser erkennen und blockieren. Informationssicherheitsadministratoren haben jetzt auch mehr Möglichkeiten, die mit Pass-the-Hash-Angriffen (PtH) verbundenen Risiken zu reduzieren.
Was sollte ein kluger Mitarbeiter also tun, um zusätzliche Anmeldeinformationen zu sammeln, ohne mimikatz zu verwenden?

Das Kit von Impacket enthält ein Dienstprogramm namens Secretsdump, das Anmeldeinformationen aus dem Domain Credential Cache, kurz DCC, abruft. Meines Wissens nach ermöglicht DCC dem Server, den Benutzer zu authentifizieren, wenn sich ein Domänenbenutzer beim Server anmeldet, der Domänencontroller jedoch nicht verfügbar ist. Wie auch immer, Secretsdump ermöglicht es Ihnen, alle diese Hashes zu sichern, sofern sie verfügbar sind.

DCC-Hashes sind keine NTML-Hashes und deren Kann nicht für PtH-Angriffe verwendet werden.

Nun, Sie können versuchen, sie zu hacken, um an das ursprüngliche Passwort zu gelangen. Allerdings ist Microsoft mit DCC schlauer geworden und DCC-Hashes sind extrem schwer zu knacken. Ja, gibt es hashcat, „der schnellste Passwort-Ratgeber der Welt“, erfordert aber eine GPU, um effektiv zu laufen.

Versuchen wir stattdessen, wie Snowden zu denken. Ein Mitarbeiter kann persönliches Social Engineering durchführen und möglicherweise Informationen über die Person herausfinden, deren Passwort er knacken möchte. Finden Sie beispielsweise heraus, ob das Online-Konto der Person jemals gehackt wurde, und untersuchen Sie ihr Klartext-Passwort auf Hinweise.

Und für dieses Szenario habe ich mich entschieden. Nehmen wir an, ein Insider hätte erfahren, dass sein Chef Cruella mehrfach auf verschiedenen Webressourcen gehackt wurde. Nachdem er mehrere dieser Passwörter analysiert hat, stellt er fest, dass Cruella lieber das Format des Baseball-Teamnamens „Yankees“ gefolgt von der aktuellen Jahreszahl „Yankees2015“ verwendet.

Wenn Sie nun versuchen, dies zu Hause zu reproduzieren, können Sie ein kleines „C“ herunterladen. Code, der den DCC-Hashing-Algorithmus implementiert, und kompilieren Sie ihn. John the Ripper, übrigens Unterstützung für DCC hinzugefügt, sodass es auch verwendet werden kann. Nehmen wir an, dass ein Insider sich nicht die Mühe machen möchte, John the Ripper zu lernen und „gcc“ gerne auf altem C-Code ausführt.

Ich täuschte die Rolle eines Insiders vor, probierte verschiedene Kombinationen aus und konnte schließlich herausfinden, dass Cruellas Passwort „Yankees2019“ lautete (siehe unten). Mission erfüllt!

Verstecktes Passwort-Hacking mit Smbexec

Ein wenig Social Engineering, eine Prise Wahrsagerei und eine Prise Maltego und schon sind Sie auf dem besten Weg, den DCC-Hash zu knacken.

Ich schlage vor, dass wir hier enden. Wir werden in anderen Beiträgen auf dieses Thema zurückkommen und uns noch langsamere und heimlichere Angriffsmethoden ansehen und dabei weiterhin auf den hervorragenden Dienstprogrammen von Impacket aufbauen.

Source: habr.com

Kommentar hinzufügen