
SMBeagle - Dateifreigabe-Auditierungstool.
____ __ _____ _ __
/ __ \__ ______ / /__/ ___/___ _______ _______(_) /___ __
/ /_/ / / / / __ \/ //_/\__ \/ _ \/ ___/ / / / ___/ / __/ / / /
/ ____/ /_/ / / / / ,< ___/ / __/ /__/ /_/ / / / / /_/ /_/ /
/_/ \__,_/_/ /_/_/|_|/____/\___/\___/\__,_/_/ /_/\__/\__, /
PRESENTS /____/
SMBeagle ist ein plattformübergreifendes (SMB) Dateifreigabe-Audit-Tool, das alle Dateien aufspürt, die es im Netzwerk sehen kann, und meldet, ob die Datei gelesen und/oder geschrieben werden kann. Alle diese Ergebnisse werden entweder an eine CSV-Datei oder einen Elasticsearch-Host gestreamt, oder beides! 🚀
Unter Windows, wenn keine Anmeldeinformationen angegeben werden, verwendet SMBeagle die Win32-APIs für maximale Geschwindigkeit und integrierte Authentifizierung.
Unter Linux oder wenn Anmeldeinformationen angegeben werden, verwenden wir die plattformübergreifende Dateiscanning über SMBLibrary
SMBeagle bis v3 war digital signiert, aber v4 fügt weitere offensive Funktionen hinzu. Insbesondere sucht es nun nach interessant aussehenden Dateien und ruft sie ab. Großartig für Pentests, aber nicht etwas, das wir digital signieren möchten!
Wenn Sie die Originalversion ohne Dateiabruffunktionen möchten, verwenden Sie v3, die digital signiert ist.
Es hat zwei großartige Anwendungsfälle:
Unternehmen jeder Größe haben oft Dateifreigaben mit schlechten Dateiberechtigungen.
Große Unternehmen haben riesige Freigaben auf Dateiservern, und es ist nicht ungewöhnlich, sensible Daten mit falsch konfigurierten Berechtigungen zu finden.
Kleine Unternehmen haben oft ein kleines NAS in der Ecke des Büros ohne jegliche Einschränkungen!
SMBeagle durchsucht diese Freigaben und listet alle Dateien auf, die es lesen und schreiben kann. Wenn es sie lesen kann, kann das auch Ransomware.
SMBeagle kann Pentestern die weniger offensichtlichen Wege zur Erhöhung von Privilegien und zur lateralen Bewegung aufzeigen.
Durch die direkte Ausgabe in Elasticsearch können Tester schnell lesbare Skripte und beschreibbare ausführbare Dateien finden.
Wasserloch-Angriffe und ungeschützte Passwörter zu finden, war noch nie so einfach! 🐱👤
Um es noch einfacher zu machen, haben wir das Flag -g hinzugefügt, das jetzt Dateien abruft, wenn sie interessant aussehen!
Was sieht interessant aus? Standardmäßig suchen wir nach Skripten und Dateinamen mit Wörtern wie „password“.
... Sie können Ihre eigenen regulären Ausdrücke mit dem Flag --file-pattern bereitstellen.
Bitte lesen Sie das Kibana-Readme für detaillierte Anweisungen zur Installation und Verwendung der Kibana-Dashboards, die Management-Visualisierungen bereitstellen und das Datenpivotieren erleichtern.
docker pull punksecurity/smbeagleDer einzige zwingend erforderliche Parameter ist die Angabe einer Ausgabe, entweder die IP-Adresse eines Elasticsearch-Hosts oder eine CSV-Datei.
Ein guter Ausgangspunkt ist, den schnellen Modus zu aktivieren und in eine CSV-Datei auszugeben. Diese CSV könnte jedoch je nach Anzahl der gefundenen Dateien sehr groß werden.
./SMBeagle.exe -c out.csv -f
Das Scannen von entdeckten öffentlichen Hosts und Netzwerken ist standardmäßig deaktiviert, da SMBeagle Netzwerke über netstat erkennt, das alle aktuellen Verbindungen wie Webbrowser-Sitzungen usw. umfasst.
Um ein öffentliches Netzwerk zu scannen, geben Sie es manuell an, z. B. mit -n 1.0.0.1/32 oder -n 1.0.0.0/24
Punk Security bietet ein Linux-Docker-Image von SMBeagle.
Um Ergebnisse zu erhalten, müssen Sie einen Ordner in den Container einbinden und SMBeagle anweisen, seine Ausgabe in dieses Mount zu speichern (oder Elasticsearch verwenden).
Ein gutes Starterbeispiel ist:
docker run -v "$(pwd)/output:/tmp/output" punksecurity/smbeagle -c /tmp/output/results.csv -n 10.10.10.0/24
Beachten Sie, dass die Netzwerkerkennung in Docker deaktiviert ist. Stellen Sie daher sicher, dass Sie die zu scannenden Bereiche mit dem Schalter -n oder Hosts mit dem Schalter -h übergeben.
USAGE:
Output to a CSV file:
SMBeagle -c out.csv
Output to elasticsearch (Preferred):
SMBeagle -e 127.0.0.1
Output to elasticsearch and CSV:
SMBeagle -c out.csv -e 127.0.0.1
Disable network discovery and provide manual networks:
SMBeagle -D -e 127.0.0.1 -n 192.168.12.0./23 192.168.15.0/24
Do not enumerate ACLs (FASTER):
SMBeagle -A -e 127.0.0.1
-c, --csv-file (Group: output) Output results to a CSV
file by providing filepath
-e, --elasticsearch-host (Group: output) Output results to
elasticsearch by providing elasticsearch
hostname (default port is 9200 , but can be
overridden)
-a, --aggression (Default: 6) Vary scanning speed in a range
between 1 and 10. 10 being fastest [No
decimals]
--elasticsearch-port (Default: 9200) Define the elasticsearch
custom port if required
-f, --fast Enumerate only one files permissions per
directory
-l, --scan-local-shares Scan the local shares on this machine
-D, --disable-network-discovery Disable network discovery
-n, --network Manually add network to scan (multiple
accepted)
-N, --exclude-network Exclude a network from scanning (multiple
accepted)
-h, --host Manually add host to scan
-H, --exclude-host Exclude a host from scanning
-q, --quiet Disable unneccessary output
-S, --exclude-share Do not scan shares with this name (multiple
accepted)
-s, --share Only scan shares with this name (multiple
accepted)
--file-pattern Only fetch files matching these regexes
patterns
-g, --grab-files Grab files and store them locally
--loot (Default: loot) Path to store grabbed files
-E, --exclude-hidden-shares Exclude shares ending in $
-v, --verbose Give more output
-m, --max-network-cidr-size (Default: 20) Maximum network size to scan
for SMB Hosts
-A, --dont-enumerate-acls (Default: false) Skip enumeration of file
ACLs
-d, --domain (Default: ) Domain for connecting to SMB
-u, --username Username for connecting to SMB - mandatory
on linux
-p, --password Password for connecting to SMB - mandatory
on linux
--help Display this help screen.
--version Display version information.
SMBeagle leistet eine Menge Arbeit, die in lose gekoppelte Module unterteilt ist, die sich gegenseitig übergeben. Dies hält das Design einfach und ermöglicht es uns, jedes Modul leicht zu erweitern.
Zusammenfassend:
