mirror of https://github.com/it-security-kassel-nordhessen/meetup.git

Matthias Altmann
02.24.2020 2473d76806b55cb9be2a2134489c6c72abf9021a
Merge pull request #22 from nikeee/master

Add notes of Hashcat Introduction
2 files added
75 ■■■■■ changed files
2020_09_16_53rd/Hashcat-Notes.md 75 ●●●●● patch | view | raw | blame | history
2020_09_16_53rd/hello-there.zip patch | view | raw | blame | history
2020_09_16_53rd/Hashcat-Notes.md
New file
@@ -0,0 +1,75 @@
# Kurzer Einblick in Hashcat
*Anmerkung:* Der Talk hatte keine Slides. In dieser Datei sind nur die Gedankenstützen.
Links:
- [Security-Meetup](https://www.meetup.com/de-DE/IT-Security-Kassel/events/272078845/)
- [offizielle Webseite](https://hashcat.net)
- [Hashcat auf GitHub](https://github.com/hashcat/hashcat)
- [Hashcat-Wiki](https://hashcat.net/wiki/)
- [Wortlisten](https://github.com/danielmiessler/SecLists)
## Was ist Hashcat?
- Hashcat ist ist ein Passwort-Cracker
    - Ähnlich zu [John The Ripper](https://www.openwall.com/john/)(JtR)
    - Ursprünglicher Autoren: "das Hashcat Team", u. A.:
        - Jens Steube (aka "atom")
        - Gabriele Gristina (aka "matrix")
- Fokus auf GPU-basiertes Cracking (im Vergleich zu JtR)
- Warum GPU?
    - GPU arbeitet "massivst parallel"
    - Das funktioniert aber nur gut, wenn man immer "das gleiche" machen muss
        - Jeder Thread macht die gleichen Operationen, nur auf anderen Daten. Alles im Gleichschritt.
        - Super für viele Hashing-Algorithmen (SHA, MD5, NTLM)
        - Es gibt Algorithmen, bei denen dieser Ansatz nicht so viel bringt
## Installation / Benutzung
- Runterladen auf GitHub oder der Seite [siehe Links oben]
- Ggf. notwenidige Treiber installieren (siehe Hinweise auf Webseite)
- Starten:
    - Windows und Linux sind im selben ZIP-Archiv, deshalb:
    - Linux: `./hashcat.bin --help`
    - Windows: `hashcat.exe --help`
- Wichtigste Swichtes:
    - Attack-Mode (`-a`)
        - `straigt`: Dictionary
        - `Brute Force` bzw. `Mask Attack`:
            - https://hashcat.net/wiki/doku.php?id=mask_attack
    - Hash-Type (`-m`)
    - Weiteres:
        - `-w`, `--workload-profile`
        - `-1`, `--custom-charset`
## Beispiel 0 - `example0.cmd`
- `example0.cmd` (.sh für Linux) zeigt ein Beispiel für MD5; `example0.hash` beinhaltet einen Haufen Hashes
- Hashcat speichert alle Hashes, die er jemals gebrochen hat, in einer "pot-File"
    - Wenn man einen Hash 2x sieht, wird er direkt daraus genommen
    - Standardmäßig ist es die `hashcat.potfile`
# Beispiel 1 - Zip-Datei
[Zip-Datei liegt im Repo des Security Meetups]
- Quelle für Wortliste: https://github.com/danielmiessler/SecLists
- `zip2john`, um einen Hash zu erstellen, den Hashcat lesen kann:
- Hashes-Übersichtsseite:
    - https://hashcat.net/wiki/doku.php?id=example_hashes
- rockyou alleine hat nicht geholfen
- Regeln!
    - Eine Regel macht aus einem einzigen Passwort ganz viele
    - So kann man Dictionary-Angriffe noch besser machen
    - Komplizierte Syntax, siehe https://hashcat.net/wiki/doku.php?id=rule_based_attack
    - Hashcat liefert selbst welche mit (`rules/best42.rule`)
# Beispiel 2 - Irgendein Hash
- Wenn man einen Hash vorliegen hat, den man nicht kennt: https://hashcat.net/wiki/doku.php?id=example_hashes
Challenge für die Zuhörer: `$P$BGWsS5zBvTiqc23tJh8eazu/yOcYXr.`
# Weiterführendes
- [OpenCL](https://de.wikipedia.org/wiki/OpenCL)
- [WPA2 mit Hashcat brechen](https://hashcat.net/wiki/doku.php?id=cracking_wpawpa2)
- [Benchmark auf 8 GTX 1080](https://gist.github.com/epixoip/a83d38f412b4737e99bbef804a270c40)
- [Hashtopolis](https://github.com/s3inlc/hashtopolis)
    - Hashcat-Wrapper für verteiltes Hashcat mit demselben Ziel
2020_09_16_53rd/hello-there.zip
Binary files differ