
Eine nächste Generation von enum4linux (einem Windows/Samba-Erkundungstool) mit zusätzlichen Funktionen wie JSON/YAML-Export. Richtet sich an Sicherheitsexperten und CTF-Spieler.
Eine nächste Generation von enum4linux
enum4linux-ng.py ist eine Neuimplementierung von Mark Lowe's (ehemals Portcullis Labs, heute Cisco CX Security Labs) enum4linux.pl, einem Tool zur Informationssammlung von Windows- und Samba-Systemen, das für Sicherheitsexperten und CTF-Spieler gedacht ist. Das Tool ist hauptsächlich ein Wrapper um die Samba-Werkzeuge nmblookup, net, rpcclient und smbclient.
Ich habe es zu Lernzwecken für mich selbst erstellt und um Probleme mit enum4linux.pl zu beheben. Es bietet dieselbe Funktionalität wie das ursprüngliche Tool (allerdings erledigt es einige Dinge anders). Im Gegensatz zum Originaltool analysiert es die gesamte Ausgabe der Samba-Werkzeuge und erlaubt den Export aller Ergebnisse als YAML- oder JSON-Datei. Der Grundgedanke dahinter ist, anderen Tools den Import der Ergebnisse und deren Weiterverarbeitung zu ermöglichen. Es ist geplant, in Zukunft neue Funktionen hinzuzufügen.
Einige Dinge sind im Vergleich zum ursprünglichen enum4linux anders implementiert. Dies sind die wichtigen Unterschiede:
-Gm aktiviert werden-A), kann aber mit -R aktiviert werden-A anstelle von -a)Ich möchte den Leuten von den ehemaligen Portcullis Labs (heute Cisco CX Security Labs) danken und ihnen Anerkennung zollen, insbesondere:
Zusätzlich möchte ich danken und Anerkennung zollen:
Es hat großen Spaß gemacht, euren Code zu lesen! :)
Nicht zuletzt möchte ich den verschiedenen Leuten danken, die Code beigetragen, Probleme gemeldet und hilfreiche Vorschläge zur Verbesserung des Tools gemacht haben.
Wenn Sie das Tool verwenden: Verwenden Sie es nicht für illegale Zwecke.
Eine Beispielausführung könnte so aussehen:
enum4linux-ng.py -As <target> -oY out
Dies demonstriert eine Ausführung gegen eine Windows Server 2012 R2 Standardinstallation. Der folgende Befehl wird verwendet:
enum4linux-ng.py 192.168.125.131 -u Tester -p 'Start123!' -oY out
Ein Benutzer 'Tester' mit Passwort 'Start123!' wurde erstellt. Der Firewall-Zugriff wurde erlaubt. Sobald die Aufzählung abgeschlossen ist, scrolle ich nach oben, damit die Ergebnisse klarer werden. Da keine andere Aufzählungsoption angegeben ist, nimmt das Tool -A an, das sich ähnlich wie die Option -a von enum4linux verhält. Benutzer und Passwort werden übergeben. Die Option -oY exportiert alle aufgezählten Daten als YAML-Datei zur weiteren Verarbeitung in out.yaml. Das Tool erkennt automatisch zu Beginn, dass LDAP auf dem entfernten Host nicht läuft. Es überspringt daher alle weiteren LDAP-Prüfungen, die normalerweise Teil der Standardaufzählung wären.

Die zweite Demo zeigt eine Ausführung gegen Metasploitable 2. Der folgende Befehl wird verwendet:
enum4linux-ng.py 192.168.125.145 -A -C
Diesmal werden die Optionen -A und -C verwendet. Während sich die erste ähnlich wie die Option -a von enum4linux verhält, aktiviert die zweite die Aufzählung der Dienste. Diesmal wurden keine Anmeldeinformationen bereitgestellt. Das Tool erkennt automatisch, dass es SMBv1 verwenden muss. Es wird keine YAML- oder JSON-Datei geschrieben. Wieder scrolle ich nach oben, damit die Ergebnisse klarer werden.

usage: enum4linux-ng.py [-h] [-A] [-As] [-U] [-G] [-Gm] [-S] [-C] [-P] [-O] [-L] [-I] [-R [BULK_SIZE]] [-N] [-w DOMAIN] [-u USER]
[-p PW | -K TICKET_FILE | -H NTHASH] [--local-auth] [-d] [-k USERS] [-r RANGES] [-s SHARES_FILE] [-t TIMEOUT] [-v] [--keep]
[-oJ OUT_JSON_FILE | -oY OUT_YAML_FILE | -oA OUT_FILE]
host
Dieses Tool ist eine Neuimplementierung von Mark Lowe's enum4linux.pl, einem Tool zur Informationssammlung von Windows- und Samba-Systemen. Es ist hauptsächlich ein Wrapper um die Samba-Werkzeuge nmblookup, net, rpcclient und smbclient. Im Gegensatz zum Originaltool ermöglicht es den Export der Aufzählungsergebnisse als YAML- oder JSON-Datei, sodass sie mit anderen Tools weiterverarbeitet werden können. Das Tool versucht eine 'intelligente' Aufzählung durchzuführen. Es prüft zuerst, ob SMB oder LDAP auf dem Ziel erreichbar ist. Abhängig vom Ergebnis dieser Prüfung überspringt es dynamisch Prüfungen (z. B. LDAP-Prüfungen, wenn LDAP nicht läuft). Wenn SMB erreichbar ist, wird immer geprüft, ob eine Sitzung aufgebaut werden kann oder nicht. Wenn keine Sitzung aufgebaut werden kann, stoppt das Tool die Aufzählung. Der Aufzählungsprozess kann mit STRG+C unterbrochen werden. Wenn die Optionen -oJ oder -oY angegeben werden, schreibt das Tool den aktuellen Aufzählungszustand in die JSON- oder YAML-Datei, sobald es ein SIGINT durch STRG+C empfängt. Das Tool wurde für Sicherheitsexperten und CTF-Spieler entwickelt. Die illegale Nutzung ist untersagt.
positionale Argumente:
host