Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
icebreaker — Erhält Klartext-Anmeldeinformationen von Active Directory, wenn Sie sich im internen Netzwerk befinden, aber außerhalb der AD-Umgebung | Kitploit
Tools/GitHubGitHub/danmcinerney/icebreaker
Passwort-CrackingAufklärungSchwachstellenanalysePost-ExploitationPenetrationstestsRed Teaming
GitHubdanmcinerney/icebreaker

icebreaker

Erhält Klartext-Anmeldeinformationen von Active Directory, wenn Sie sich im internen Netzwerk befinden, aber außerhalb der AD-Umgebung

Repository anzeigen
1.2k159vor 7 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

icebreaker

Das Eis brechen mit dieser niedlichen Active Directory-Umgebung da drüben. Wenn du kalt und einsam vor einer Active Directory-Party stehst, aber nicht einmal eine einzige AD-Anmeldeinformation hast, um mitzumachen, ist dieses Tool für dich gemacht.

Es automatisiert nacheinander fünf interne Netzwerkangriffe gegen Active Directory, um dir Klartext-Anmeldeinformationen zu liefern. Verwende die Option --auto, um nach dem Erlangen eines ersten Zugangs automatisch Domänenadministratorrechte zu erlangen.

Zusammenfassung der Details

Die folgenden Angriffe werden nacheinander durchgeführt, bis der vierte und fünfte Angriff parallel und unbegrenzt läuft.

  • Reverse-Brute-Force
    • Ermittelt automatisch eine Liste von Benutzernamen und testet jeden mit zwei der häufigsten AD-Passwörter (mehr als zwei Versuche könnten Kontosperrrichtlinien auslösen)
  • Hochladen auf Netzwerkfreigaben
    • Ermittelt Passwörter von Benutzern durch bösartige Dateiuploads auf verfügbare Netzwerkfreigaben
  • Vergiften von Broadcast-Netzwerkprotokollen
    • Verwendet gängige Netzwerkprotokolle, um die Computer der Benutzer dazu zu bringen, dir Passwörter zu senden
  • Man-in-the-Middle SMB-Verbindungen
    • Führt Remote-Befehlsausführung auf AD-Computern durch, um Passwörter zu sammeln
  • IPv6-DNS-Vergiftung
    • Nutzt DNS aus, um AD-Computer dazu zu bringen, dir die Passwörter ihrer Benutzer zu senden

Technische Details

Alle NetNTLMv2-Hashes, die in den folgenden Techniken erfasst werden, werden mit JohnTheRipper und einer AD-spezifischen Passwortliste von 1 Million Einträgen automatisch geknackt.

  • Reverse-Brute-Force
    • Verwendet rpcclient, um Hosts zu finden, die Null-SMB-Sitzungen akzeptieren
    • Verwendet ridenum, um gültige Benutzernamen über RID-Cycling auf Null-SMB-Hosts zu finden
    • Kann theHarvester verwenden, um zusätzliche potenzielle Benutzernamen aus einer angegebenen Internetdomäne zu sammeln
    • Führt einen Reverse-Brute-Force mit 2 Passwörtern für gefundene Benutzernamen durch, oder du kannst eine Passwortliste angeben
    • Getestete Standardpasswörter: P@ssw0rd und <aktuelle_Saison><Jahr>, z.B. Frühling2018
  • SCF-Upload
    • Verwendet Nmap, um anonym beschreibbare Netzwerkfreigaben über das NSE-Skript smb-enum-shares zu finden
    • Schreibt eine SCF-Datei auf die Freigabe mit einem Dateisymbol-Pfad, der auf deine Maschine zeigt
    • Wenn ein AD-Benutzer die Freigabe im Datei-Explorer öffnet, wird sein NetNTLMv2-Hash an dich gesendet
  • LLMNR/NBTNS/mDNS-Vergiftung
    • Verwendet Responder.py, um die Layer-2-Broadcast/Multicast-Netzwerkprotokolle (LLMNR, NBT-NS, mDNS) zu vergiften und NetNTLMv2-Hashes zu erfassen
  • SMB-Relay
    • Verwendet ntlmrelayx.py und Responder.py, um SMB-Hashes weiterzuleiten
    • Verwendet Nmap, um angreifbare Relay-Ziele über das NSE-Skript smb-security-mode zu identifizieren
    • Angreifbare Ziele haben SMBv1 aktiviert und SMB-Signierung deaktiviert
    • Erfolgreiches Weiterleiten eines Hashs führt zur Erfassung des NetNTLMv2-Hashs eines Benutzers, der automatisch geknackt wird
    • Wenn ein Benutzer-Hash an eine Maschine weitergeleitet wird und dieser Benutzer ein lokaler Administrator ist, erfolgt eine Befehlsausführung und Folgendes wird remote durchgeführt:
      • Hinzufügen eines administrativen Benutzers - icebreaker:P@ssword123456
      • Ausführen einer obfuszierten und AMSI-umgehenden Version von Mimikatz
      • Mimikatz-Ausgabe wird nach NTLM-Hashes und Klartext-Passwörtern durchsucht
      • Ausführen einer obfuszierten und AMSI-umgehenden Version von Invoke-PowerDump für SAM-Hashes
      • Ausgabe wird nach NTLM-Hashes durchsucht
  • IPv6-DNS-Vergiftung
    • Verwendet mitm6 und ntlmrelayx.py, um IPv6-DNS zu vergiften, um NetNTLMv2-Benutzer-Hashes zu erfassen
    • Erstellt einen gefälschten WPAD-Server mit Authentifizierung
    • IPv6-DNS ist in Active Directory-Umgebungen standardmäßig aktiviert
    • Hinweis: Dies kann Netzwerkkonnektivitätsprobleme für Benutzer verursachen

Wie es funktioniert

Es führt die obigen 5 Netzwerkangriffe in der Reihenfolge aus. Reverse-Brute-Forcing und SCF-Datei-Uploads gehen normalerweise ziemlich schnell, dann verweilt es bei Angriff 3, Responder.py, für standardmäßig 10 Minuten. Nach Ablauf dieser Zeit oder der vom Benutzer festgelegten Zeit fährt es mit den letzten beiden Angriffen fort, die parallel und unbegrenzt laufen.

Wenn Hosts gefunden werden, die Null-SMB-Sitzungen zulassen, verwendet icebreaker ridenum, um RID-Cycling für gültige Benutzernamen durchzuführen. Wenn du die Option "-d <somedomain.com>" verwendest, sammelt theHarvester alle E-Mail-Adressen von der angegebenen Website. Alle AD-kompatiblen E-Mail-Benutzernamen werden zur Reverse-Brute-Force-Benutzernamensliste hinzugefügt. Icebreaker verwendet die asyncio-Bibliothek, um den Reverse-Brute-Force mit dem Linux-Tool rpcclient unter Verwendung von 10 asynchronen Arbeitern durchzuführen.

Der SCF-Upload-Angriff missbraucht Shell-Befehlsdateien gegen anonym beschreibbare Netzwerkfreigaben. SCFs sind Dateien, die grundlegende Aktionen wie das Anzeigen des Desktops oder das Öffnen eines Datei-Explorer-Fensters ausführen können. Sie haben die seltsame Eigenschaft, dass du ihr Dateisymbol auf einen Netzwerkpfad setzen kannst. Wenn du diesen Netzwerkpfad auf deine eigene Maschine setzt, senden Benutzer, die die Dateifreigabe im Datei-Explorer öffnen, automatisch ihren NetNTLMv2-Passwort-Hash an dich. Icebreaker verwendet das Nmap-Skript smb-enum-shares, um anonym beschreibbare Freigaben zu finden, und generiert und lädt dann automatisch die mit Nutzlast versehene SCF-Datei hoch.

Angriff 3 verwendet Responder.py, um LLMNR-, NBT-NS- und mDNS-Multicast/Broadcast-Protokolle zu vergiften. Wenn Benutzer zu einem nicht vorhandenen Netzwerkpfad navigieren, sagt Responder ihnen, dass deine Angreifermaschine der richtige Pfad ist. Der NetNTLMv2-Passwort-Hash des Benutzers gehört jetzt dir. Responder erfasst auch Hashes, die über den SCF-Angriff gesendet werden, aber der nächste Angriff ist im Allgemeinen nützlicher, um SCF-Hashes zu erfassen, da er das Potenzial hat, den Hash zur Befehlsausführung zu verwenden.

SMB-Relay ist ein alter Netzwerkangriff, bei dem sich Angreifer zwischen den SMB-Client und den SMB-Server platzieren. Dies ermöglicht es Angreifern, NetNTLMv2-Hashes zu erfassen und an Hosts weiterzuleiten, die SMBv1 aktiviert und SMB-Signierung deaktiviert haben. ntlmrelayx.py aus der Impacket-Bibliothek wird zum Weiterleiten verwendet, während Responder.py für Man-in-the-Middle-SMB-Verbindungen verwendet wird. Sollte der SMB-Client-Benutzer administrative Rechte auf einem Host im Netzwerk haben, der SMB-Signierung deaktiviert hat, führt ntlmrelayx.py eine Befehlsausführung auf diesem Host durch.

Sobald ntlmrelayx einen erfassten Hash weiterleitet, führt es einen base64-kodierten PowerShell-Befehl aus, der zuerst einen administrativen Benutzer hinzufügt (icebreaker:P@ssword123456), dann eine obfuszierte und AMSI-umgehende Version von Mimikatz ausführt, gefolgt von einer obfuszierten und AMSI-umgehenden Version von Invoke-PowerDump. Die Ausgabe von Invoke-Mimikatz und Invoke-PowerDump wird nach Klartext-Passwörtern oder NTLM-Hashes durchsucht und dem Benutzer sowohl in der Standardausgabe als auch in der Datei found-passwords.txt bereitgestellt. NTLM-Hashes können im Gegensatz zu NetNTLMv2-Hashes wie ein Klartext-Passwort zur Authentifizierung an anderen AD-Hosts verwendet werden. Eine Einschränkung ist, dass seit Microsofts Patch KB2871997 nur das eingebaute RID-500-lokale Administratorkonto für Pass-the-Hash-Angriffe verwendet werden kann.

Der letzte Angriff verwendet das Tool mitm6, um einen Man-in-the-Middle-IPv6-DNS-Angriff gegen das gesamte Netzwerk durchzuführen. Dies zwingt Hosts im Netzwerk, die Maschine des Angreifers als ihren DNS-Server zu verwenden. Sobald dies als ihr DNS-Server festgelegt ist, liefert der Angreifer bösartige WPAD-Proxy-Einstellungsdateien an die Opfer und sammelt deren NetNTLMv2-Hashes. Diese Hashes werden mit ntlmrelayx.py für weitere Möglichkeiten der Remote-Codeausführung weitergeleitet. Eine Sache, die zu beachten ist, ist, dass dieser Angriff dazu neigt, Probleme im Netzwerk zu verursachen. Er verursacht oft Zertifikatsfehler auf den Client-Maschinen im Browser. Er wird das Netzwerk wahrscheinlich auch verlangsamen. Die Schönheit dieses Angriffs liegt jedoch darin, dass Windows-AD-Umgebungen standardmäßig verwundbar sind.

Wenn icebreaker mit dem Flag --auto [tmux/xterm] ausgeführt wird, startet icebreaker beim Erreichen von Angriff 4 Empire und DeathStar entweder in einer tmux-Sitzung oder in xterm-Fenstern. Mit dieser Option wird anstatt der Ausführung von Mimikatz auf dem Remote-Host, an den wir den Hash weitergeleitet haben, icebreaker einen administrativen Benutzer hinzufügen und dann den PowerShell-Launcher-Code von Empire ausführen, um einen Agenten auf dem Remote-Rechner zu erhalten. DeathStar verwendet diesen Agenten, um den Prozess der Erlangung von Domänenadministratorrechten zu automatisieren. Empire und DeathStar werden nicht geschlossen, wenn du icebreaker beendest.

Das Knacken von Passwörtern erfolgt mit JohnTheRipper und einer benutzerdefinierten Wortliste. Der Ursprung dieser Liste ist die merged.txt, die alle Passwörter aus dem SecLists-GitHub-Konto kombiniert. Die Wortliste wurde bereinigt und enthält keine Passwörter mit: nur Kleinbuchstaben, nur Großbuchstaben, nur Symbole, weniger als 7 Zeichen, mehr als 32 Zeichen. Diese Regeln entsprechen den Standardanforderungen an Active Directory-Passwörter und haben die Liste von 20 Millionen auf etwas über 1 Million reduziert, was das Knacken von Passwörtern extrem schnell macht.

Installation

Als root:

root@kitploit:~
./setup.sh
pipenv install --three
pipenv shell

Du könntest nach dem Ausführen von pipenv install einen Fehler erhalten. Aktualisiere auf eine Version von pipenv höher als 11.9.0, falls das der Fall ist. Du kannst pipenv von GitHub klonen und einfach apt-get remove python-pipenv && python setup.py install aus dem Ordner ausführen.

Docker-Verwendung

Es gibt noch ein paar Fehler im Docker-Image zu beheben, daher wird dies wahrscheinlich bei dir einen Fehler verursachen, aber es ist fast fertig. Vom Git-Repo aus:

root@kitploit:~
docker build --rm -t danmcinerney/icebreaker .
docker run danmcinery/icebreaker

Oder hänge die Befehle an, die du normalerweise an icebreaker anhängen würdest (vergiss nicht, Volumes zu mappen):

root@kitploit:~
docker run -v $(pwd)/logs:/icebreaker/logs -v $(pwd)/hashes:/icebreaker/hashes -v $(pwd)/icebreaker-scan.xml:/icebreaker/icebreaker-scan.xml -v $(pwd)/submodules:/icebreaker/submodules -e PYTHONUNBUFFERED=0 danmcinerney/icebreaker -x icebreaker-scan.xml

**Hinweis: Du wirst Ports für Listener mit dem -p <host>:<container> Flag von Docker mappen wollen.

Verwendung

Als root ausführen. Lese aus einer durch Zeilenumbrüche getrennten Liste von IP-Adressen (einzelne IPs oder CIDR-Bereiche) und anstatt dass ntlmrelayx einen Benutzer hinzufügt und Mimikatz auf dem Opfer ausführt, nachdem der Hash weitergeleitet wurde, führe einen benutzerdefinierten Befehl auf dem Opfer aus. In diesem Beispiel geben wir einen Befehl ähnlich dem, den Empire für einen PowerShell-Launcher-One-Liner geben könnte.

./icebreaker -l targets.txt -c "powershell -nop -w hidden -exec bypass -enc WwFk..."

Lese aus einer Hostliste, sage Responder, dass es das eth0-Interface anstelle des Standard-Gateway-Interfaces verwenden soll, lasse Responder 30m anstatt der üblichen 10m laufen und führe die Standard-Ntlmrelayx-Post-Relay-Befehle aus, um die SAM vom Opfer-Server zu extrahieren.

./icebreaker -l targets.txt -i eth0 -t 30 -c default

Verwende eine Nmap-XML-Ausgabedatei, überspringe alle fünf Angriffe und knacke keine Hashes automatisch, und verwende eine benutzerdefinierte Passwortliste für den Reverse-Brute-Force-Angriff (beachte, dass da dieses Beispiel Angriff 1 über '-s rid' überspringt, wird die angegebene Passwortliste nicht einmal verwendet; dies dient nur als Beispiel).

./icebreaker.py -x nmapscan.xml -s rid,scf,llmnr,relay,dns,crack -p /home/user/password-list.txt

Feuer-und-vergiss-Verwendung: Zieledatei eingeben, companydomain.com nach E-Mail-Benutzernamen durchsuchen, die dem Reverse-Brute-Force-Angriff hinzugefügt werden sollen, IPv6-DNS-Vergiftung von mitm6 überspringen und Empire und DeathStar entweder in tmux- oder xterm-Fenstern ausführen, sobald Angriff 4 beginnt, um automatisierte Domänenadministratorrechte zu erlangen. Das Ziel dieser Verwendung ist es, den Befehl am Montag um 9 Uhr zu starten und dann eine kurze, ununterbrochene Pause bis Freitag um 16:30 Uhr zu machen, zu welchem Zeitpunkt wir zu einer Domänenadministrator-Shell zurückkehren, die auf uns wartet. Wir überspringen Angriff 5 (mitm6), weil er manchmal Netzwerkprobleme verursachen kann und wir keine verärgerten Kunden wollen, die unsere hart verdiente Pause unterbrechen.

./icebreaker.py -l targets.txt -d companydomain.com -s dns --auto [tmux/xterm]

Tool herunterladen