Penetrationstests verstehen
07/07/2023DDoS-Angriffe: Cyberattacken auf Netzwerke und Server
16/11/2023Wortlisten beim Pentest
Wortlisten beim Pentest
Wortlisten beim Pentest sind essentiell für erfolgreiche Brute-Force Angriffe. Bei der Entwicklung von Brute-Force-Angriffen auf Passwörter und Benutzernamen erweist sich die Verwendung einer individuell generierten Wortliste oft als weitaus effizienter als der Einsatz standardisierter Wort Dateien wie beispielsweise der bekannten „rockyou.txt“. Im Folgenden soll eine Methode vorgestellt werden, welche zeigt wie man eine selbst angefertigte, maßgeschneiderte Wortliste erstellen schnell und einfach erstellen kann.
Während eines penetration tests hat man als pentester meist wenig Zeit. Es empfiehlt es sich zu Beginn umfassende Informationen über das Ziel zu sammeln und eine Analyse durchzuführen. Hierbei gilt es, nach häufig verwendeten Begriffen, Hobbys oder anderen potenziell in einem Passwort genutzten Elementen zu suchen. Dadurch erspart man sich viele unnötige Versuche.
Diese Wörter werden anschließend in einer Datei notiert, wobei jedes Wort durch eine neue Zeile getrennt wird.
Ein Beispiel:
- John
- Smith
- Dezember
- Sunny
- Motorrad
- Coke
- BMW
Oftmals erfordern Passwortrichtlinien Zahlen und Sonderzeichen im Passwort. Entsprechend bietet es sich an auch Zahlen und Sonderzeichen in der Wörterliste aufzunehmen. Um dieses Beispiel einfach zu halten, werden wir nur Jahreszahlen hinzufügen und bedienen uns an der Shell:
for i in $(cat wordlist.txt); do echo $i; echo $(i)2023; done > wordlist.txt
Im nächsten Schritt nutzen wir hashcat, um basierend auf einer konfigurierten Regel weitere Optionen zu generieren. Wir verwenden hier die „best64.rule“, doch man kann auch gerne andere Regeln ausprobieren und experimentieren. Die Regel-Dateien befinden sich in der Regel im Verzeichnis /usr/share/hashcat/rules (auf Kali).
hashcat --force --stdout wordlist.txt -r /usr/share/hashcat/rules/best64.rule
Diese Anweisung bewirkt eine Veränderung aller Einträge. Dabei werden Zeichen umgedreht, Positionen verschoben, Groß- und Kleinschreibung variiert sowie Zahlen angehängt, und vieles mehr. Hinweis: Man kann auch mehrere Regeln kombinieren, indem man den hashcat Befehl um -r/Pfad/zur/Regel ergänzt.
Natürlich ist es wenig sinnvoll, dasselbe Passwort mehrfach zu testen. Daher empfiehlt es sich, Duplikate zu entfernen:
cat wordlist | sort -u > wordlist.txt
Falls die Mindestlänge des Passworts bekannt ist (z.B. 6 Zeichen), können Passwörter, die kürzer sind, ebenfalls ausgesondert werden:
cat wordlist | awk 'length($0) > 6' > wordlist.txt
Mit diesen Schritten wurde erfolgreich die erste individuelle Wortliste erstellt, die hoffentlich kürzer ist als die Berüchtigte rockyou.txt :).
Viel Spaß mit den neuen Wortlisten beim Pentest!