Password Cracking — ZIP & PDF#
Nur gegen eigene Dateien oder mit schriftlicher Erlaubnis verwenden. Knacken fremder Archive ist in DE nach §202c StGB strafbar.
Setup (BlackArch / Arch)#
sudo pacman -S zip john hashcat fcrackzip pdfcrack qpdf wordlistsWordlist-Standard: /usr/share/wordlists/seclists/Passwords/Leaked-Databases/rockyou.txt
Workflow#
[file.zip | file.pdf]
│
▼
zip2john / pdf2john → hash-Datei
│
▼
john (CPU) ─oder─ hashcat (GPU)
│
▼
Klartext-PasswortZIP cracken#
1. Hash extrahieren#
zip2john secret.zip > secret.hash2a. John (CPU)#
john --wordlist=/usr/share/wordlists/seclists/Passwords/Leaked-Databases/rockyou.txt secret.hash
john --show secret.hash2b. Hashcat (GPU)#
Hashcat will nur den Hash-Teil — Filename-Prefix mit cut entfernen:
cut -d: -f2- secret.hash > secret.hccap| Mode | Format |
|---|---|
17200 | PKZIP Deflated (komprimiert) |
17210 | PKZIP Stored (unkomprimiert) |
17220 | PKZIP (mehrere komprimierte Dateien) |
13600 | WinZip AES |
hashcat -m 17210 -a 0 secret.hccap /usr/share/wordlists/seclists/Passwords/Leaked-Databases/rockyou.txt
hashcat -m 17210 secret.hccap --show2c. fcrackzip#
fcrackzip -u -D -p ./rockyou.txt secret.zip # Dictionary
fcrackzip -u -c a -l 1-6 secret.zip # Brute-Force, 1–6 Zeichen lowercaseHinweis: Aktuelle fcrackzip-Version hat Buffer-Overflow bei langen Wordlist-Pfaden. Wordlist immer lokal kopieren.
PDF cracken#
1. Hash extrahieren#
pdf2john locked.pdf > locked.hash2a. John#
john --wordlist=/usr/share/wordlists/seclists/Passwords/Leaked-Databases/rockyou.txt locked.hash
john --show --format=PDF locked.hash2b. Hashcat#
| Mode | PDF-Version | Verschlüsselung |
|---|---|---|
10400 | PDF 1.1 – 1.3 | RC4 40 bit |
10500 | PDF 1.4 – 1.6 | RC4 128 bit |
10600 | PDF 1.7 Level 3 | AES 128 bit |
10700 | PDF 1.7 Level 8 | AES 256 bit |
cut -d: -f2- locked.hash > locked.hccap
hashcat -m 10700 -a 0 locked.hccap /usr/share/wordlists/seclists/Passwords/Leaked-Databases/rockyou.txt2c. pdfcrack#
pdfcrack -f locked.pdf -w wordlist.txt
pdfcrack -f locked.pdf -n 4 -m 8 -c abcdefghijklmnopqrstuvwxyzAttack Modes (Hashcat Cheatsheet)#
| Mode | Bedeutung | Beispiel |
|---|---|---|
-a 0 | Dictionary | hashcat -m 17210 -a 0 h rockyou.txt |
-a 1 | Combinator | hashcat -m 17210 -a 1 h dict1 dict2 |
-a 3 | Brute-Force / Mask | hashcat -m 17210 -a 3 h '?l?l?l?l?d?d' |
-a 6 | Hybrid Wordlist+Mask | hashcat -m 17210 -a 6 h dict.txt '?d?d' |
-a 9 | Association | für targeted Hints |
Mask-Charsets#
| Charset | Bedeutung |
|---|---|
?l | a-z |
?u | A-Z |
?d | 0-9 |
?s | Symbole |
?a | ?l?u?d?s (alles) |
?h | 0-9 a-f (hex lower) |
?H | 0-9 A-F (hex upper) |
Eigene Charsets#
hashcat -1 ?l?u?d -m 17210 -a 3 h '?1?1?1?1?1?1?1?1'Inkrementell (unbekannte Länge)#
hashcat -m 17210 -a 3 h '?a?a?a?a?a?a?a?a' --increment --increment-min=4 --increment-max=10GPU vs. CPU (gemessen auf RX 7900 XTX)#
| Hash-Typ | Speed | Brute-Force 8x lowercase (26⁸) |
|---|---|---|
| PKZIP (17210) | 33,8 GH/s | ~6 Sekunden |
| PDF AES-256 (10700) | 17 kH/s | ~388 Jahre |
PDFs mit AES-256 sind ~2 Millionen mal langsamer zu cracken als PKZIP — durch bewusstes Key-Stretching (SHA-256 + Iterationen) im PDF 1.7 Standard.
Best Practices (Pentest-Workflow)#
- Quick wins zuerst — Dictionary mit rockyou.txt, dann SecLists Top-Passwords.
- Rules anwenden —
john --rules=Jumbooderhashcat -r /usr/share/hashcat/rules/best64.rulemutiert PWs (Leetspeak, Suffixe, …). - Hybrid-Attacks —
wordlist + ?d?d?d?ddeckt typischepw + Jahr/PIN-Muster ab. - Mask Brute-Force — strukturiert nach Wahrscheinlichkeit (
?u?l?l?l?l?d?d?sist häufiger als?a?a?a?a?a?a?a?a). - Inkrementell — bei unbekannter Länge
--increment --increment-min=4 --increment-max=10. - Sessions speichern —
--session=run1+--restorefür lange Läufe. - Potfile checken — Hashcat speichert Hits in
~/.local/share/hashcat/hashcat.potfile→--show. - GPU-Backend prüfen —
hashcat -Ilistet erkannte Devices. Auf AMD:hashcat -d 1zwingt GPU-only. - Benchmark vor Brute-Force —
hashcat -b -m <mode>zeigt realistische Zeiten:Cracking-Time = Keyspace / Speed. - Optimized Kernel —
-Oaktiviert schnellere Kernel (PW-Länge ≤ 32).