Το Hashcat είναι ένα εργαλείο έκρηξης κωδικού πρόσβασης και ένα από τα βασικά εργαλεία για την ασφάλεια των πληροφοριών. Συγκεντρώνω αυτό το άρθρο για να το καταγράψω και να το συνοψίσω σε περίπτωση έκτακτης ανάγκης.
Το Hashcat είναι το ταχύτερο πρόγραμμα σπασίματος κωδικών πρόσβασης στον κόσμο. Είναι ένα κατανεμημένο εργαλείο ανοιχτού κώδικα που υποστηρίζει πολλαπλές πλατφόρμες και αλγόριθμους.
Επίσημο: https://hashcat.net/hashcat/
Github:https://github.com/hashcat/hashcat
https://github.com/hashcat/hashcat/releases 下载最新版压缩包,解压根据自己的平台运行 hashcat64.exe 或者 hashcat32.exe
Καθορίζει τον τύπο κατακερματισμού που πρόκειται να σπάσει, ακολουθούμενο από τον αριθμό που αντιστοιχεί στον τύπο κατακερματισμού
Καθορίζει τη λειτουργία ρωγμής που θα χρησιμοποιηθεί και η τιμή του αναφέρεται στις παραμέτρους που αντιμετωπίζουν:
- [ Attack Modes ] - # | Λειτουργία ===+====== 0 | Straight # απευθείας ρωγμή λεξικού 1 | συνδυασμός # συνδυασμός ρωγμή 3 | Brute-force # μάσκα βίαιη ρωγμή 6 | υβριδικό λίστα λέξεων + μάσκα # λεξικό + μάσκα ρωγμή 7 | Hybrid Mask + Wordlist # Mask+dictionary crack
Ενεργοποιήστε τη λειτουργία αυξητικής διάσπασης και αφήστε το hashcat να εκτελέσει το crack
το ελάχιστο μήκος του κωδικού πρόσβασης εντός του καθορισμένου εύρους μήκους κωδικού πρόσβασης, το οποίο ακολουθεί απευθείας ίσο με έναν ακέραιο Απλώς διαμορφώστε τη λειτουργία αύξησης για να χρησιμοποιήσετε το μέγιστο μήκος του κωδικού πρόσβασης
, το οποίο ακολουθεί απευθείας ίσο με έναν ακέραιο, διαμορφώστε τη λειτουργία αύξησης για να χρησιμοποιήσετε μαζί
Αγνοήστε το προειδοποιητικό μήνυμα κατά τη διαδικασία διάσπασης
Διαγράψτε τον κατακερματισμό που έχει σπάσει με επιτυχία{
}
--outfile Καθορίζει τον επιτυχημένο κατακερματισμό και την τοποθεσία αποθήκευσης του αντίστοιχου κωδικού πρόσβασης απλού κειμένου
--optimized-kernel-enable Ενεργοποιήστε τον βελτιστοποιημένο πυρήνα (περιορισμένο μήκος κωδικού πρόσβασης)
--opencl-devices Καθορίστε τις συσκευές opencl, εγώ Η λίστα των συσκευών που υποστηρίζω εδώ είναι η εξής:
Code
* Device #1: Intel(R) Core(TM) i7-9750H CPU @ 2,60GHz, παραλείφθηκε. * Συσκευή #2: Intel(R) UHD Γραφικά 630, 384/1536 MB Κατανομή, 24MCU * Συσκευή #3: AMD Radeon Pro 555X Compute Engine, 1024/4096 MB κατανεμημένο, 12MCU
--opencl-τύποι συσκευών Καθορίστε τον τύπο συσκευής του opencl, το Hashcat υποστηρίζει τους ακόλουθους τύπους συσκευών:
bash
1 | CPU2 | GPU3 | FPGA, DSP, Co-Processor
Γενικά χρησιμοποιούμενο -D 2 Καθορίστε τη ρωγμή GPU
bash
; | σύνολο χαρακτήρων===+==
l | abcdefghijklmnopqrstuvwxyz # Πεζά γράμματα a-z
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ # κεφαλαία γράμματα Α-Ζ
d | 0123456789 # αριθμός 0-9
h | 0123456789abcdef # αριθμός + abcdef
H | 0123456789ABCDEF # αριθμός + ABCDEF
s | ! "#$%&'()*+,-./:; <=>? @[\]^_`{|}~ # ειδικοί χαρακτήρες
α | ; Λ; Εσύ; Δ; s # Όλοι οι ορατοί χαρακτήρες στο πληκτρολόγιο
b | 0 - 0xff # μπορεί να είναι ένας προσαρμοσμένος κανόνας μάσκας bash
--custom-charset1 [chars] ισοδύναμο με -1 --custom-charset2 [chars] ισοδυναμεί με -2 --custom-charset3 [chars] ισοδυναμεί με -3 --custom-charset4 [chars] ισοδυναμεί με -4
χρησιμοποιώντας στη μάσκα; 1、? 2、? 3、? 4 για να αντιπροσωπεύσει
μερικές περιπτώσεις:
bash
--custom-charset1 abcd123456! @-+
Αυτή τη στιγμή; 1 σημαίνει abcd123456! @-+
bash
--custom-charset2 ; Λ; d
αυτή τη στιγμή; 2 σημαίνει ; Λ; d είναι ; h αριθμός + πεζά γράμματα:
bash
-3 abcdef -4 123456
Αυτή τη στιγμή ; 3? 3? 3? 3? 4? 4? 4? Το 4 εκφράζεται ότι τα τέσσερα πρώτα ψηφία μπορεί να είναι abcdef και τα τέσσερα τελευταία ψηφία μπορεί να είναι 123456
Code
1q2w3e4r` Η τιμή MD5 είναι `5416d7cd6ef195a0f7622a9c56b55e84
bash
hashcat -a 0 -m 0 '5416d7cd6ef195a0f7622a9c56b55e84' hashpass.txt -o success.txt
Μερικές φορές θα εμφανιστεί η ακόλουθη προτροπή όταν σπάσει:
κωδικός
Πληροφορίες: Όλοι οι κατακερματισμοί βρέθηκαν στο potfile! Use --show to display them.
Αυτό δείχνει ότι ο κωδικός πρόσβασης έχει σπάσει με επιτυχία στο παρελθόν, επομένως το hashcat δεν θα εμφανίζεται πλέον, μπορείτε να προσθέσετε την παράμετρο --show αργότερα για να εμφανίσετε τον κωδικό πρόσβασης:
bash
hashcat -a 0 -m 0 'cbc8f5435c87e13c5d14e6ce92358d68' hashpass.txt --show cbc8f5435c87e13c5d14e6ce92358d68:123456@abc
Το hashcat αποθηκεύει τα επιτυχώς σπασμένα αρχεία κωδικού πρόσβασης: ~/.hashcat/hashcat.potfile
Εάν θέλετε να εμφανίσετε απευθείας τον σπασμένο κωδικό πρόσβασης, μπορείτε να διαγράψετε απευθείας το αρχείο.
bash
# Διαγράψτε τις προηγούμενες επιτυχώς σπασμένες εγγραφές rm ~/.hashcat/hashcat.potfile# hash.txt είναι ο κωδικός πρόσβασης που πρόκειται να σπάσει hashpass.txt είναι το λεξικό Εξάγετε το σπασμένο αποτέλεσμα στο success.txt και διαγράψτε το επιτυχώς σπασμένο hashcat -a 0 -m 0 hash.txt hashpass.txt -o success.txt --αφαιρέστε
bash
hashcat -a 1 -m 0 '5416d7cd6ef195a0f7622a9c56b55e84' hashpass1.txt hashpass1.txt
bash
echo -n admin888 |openssl MD5 7fef6171469e80d32c0559f88b377245
Σπάστε την τιμή MD5 του admin888 :
bash
hashcat -a 6 -m 0 '7fef6171469e80d32c0559f88b377245' hashpass.txt -O
bash
hashcat -a 7 -m 0 '7fef6171469e80d32c0559f88b377245' 'admi? Λ; Δ; Δ; d' hashpass.txt -O
για την κρυπτογράφηση MD5 σε 23323323 :
bash
$ echo -n 23323323 |openssl MD5 5a745e31dbbd93f4c86d1ef82281688b
Χρησιμοποιήστε Hashcat για να σπάσετε:
bash
hashcat -a 3 -m 0 --force '5a745e31dbbd93f4c86d1ef82281688b' '; Δ; Δ; Δ; Δ; Δ; Δ; Δ; d' -O
bash
$ echo -n PassWord |openssl MD5 a9d402bfcde5792a8b531b3a82669585
Χρησιμοποιήστε το hashcat για να το σπάσετε:
bash
hashcat -a 3 -m 0 -1 '; Λ; u' --δύναμη 'a9d402bfcde5792a8b531b3a82669585' '; 1? 1? 1? 1? 1? 1? 1? 1' -O
Αυτό ορίζει έναν προσαρμοσμένο κανόνα -1 Αυτή τη στιγμή, ; 1 σημαίνει ; Λ; u, δηλαδή κεφαλαία και πεζά γράμματα.
Admin88 Η τιμή του MD5 είναι 2792e40d60bac94b4b163b93566e65a9
bash
hashcat -a 3 -m 0 -1 '; Λ; Εσύ; d' --force '2792e40d60bac94b4b163b93566e65a9' --increment --increment-min 5 --increment-max 7 '; 1? 1? 1? 1? 1? 1? 1' -O
Ένας προσαρμοσμένος κανόνας ορίζεται εδώ -1 Αυτή τη στιγμή, ; 1 σημαίνει ; Λ; Εσύ; Δ, δηλαδή κεφαλαία και πεζά γράμματα + αριθμοί.
admin23323 Η τιμή του MD5 είναι a9991129897a44e0d1c2855c3d7dccc4
bash
hashcat -a 3 -m 0 -1 '; Λ; Εσύ; d' --force 'a9991129897a44e0d1c2855c3d7dccc4' 'Διαχειριστής; 1? 1? 1? 1? 1' -O
Προβολή κωδικού πρόσβασης για MySQL:
MySQL
MySQL> select Password from mysql.user; +-------------------------------------------+ | Κωδικός πρόσβασης | +-------------------------------------------+ | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | +-------------------------------------------+ 4 rows in set (0.00 sec)
Στη συνέχεια ξεκινήστε να χρησιμοποιείτε το λεξικό Crack:
bash
hashcat -a 0 -m 300 --force '81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' hashpass.txt -O
Προβολή αρχείου κωδικού πρόσβασης /etc/shadow :
bash
root@kali-linux:~# cat /etc/shadowroot:$6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1:18201:0:999999:7::: δαιμον:*:18024:0:99999:7::: Κάδος:*:18024:0:99999:7::: σύς:*:18024:0:99999:7::: Συγχρονισμός:*:18024:0:99999:7::: Παιχνίδια:*:18024:0:99999:7::: Άντρα:*:18024:0:99999:7::: lp:*:18024:0:99999:7::: Ταχυδρομείο:*:18024:0:99999:7::: Νέα:*:18024:0:99999:7::: uucp:*:18024:0:99999:7::: πληρεξούσιο:*:18024:0:99999:7::: www-δεδομένα:*:18024:0:99999:7::: Αντίγραφο ασφαλείας:*:18024:0:99999:7::: Λίστα:*:18024:0:99999:7::: irc:*:18024:0:99999:7::: σκνίψα:*:18024:0:99999:7::: κανένα:*:18024:0:99999:7::: _apt:*:18024:0:99999:7::: systemd-timesync:*:18024:0:99999:7::: systemd-network:*:18024:0:99999:7::: systemd-resolve:*:18024:0:99999:7::: mysql:!: 18024:0:99999:7::: ΝΤΠ:*:18024:0:99999:7::: messagebus:*:18024:0:99999:7::: arpwatch:!: 18024:0:99999:7::: Debian-exim:!: 18024:0:99999:7::: uuidd:*:18024:0:99999:7::: κόκκινες κάλτσες:!: 18024:0:99999:7::: ΤΣΣ:*:18024:0:99999:7::: rwhod:*:18024:0:99999:7::: Ιωδίνο:*:18024:0:99999:7::: ΜΙΡΕΔΟ:*:18024:0:99999:7::: dnsmasq:*:18024:0:99999:7::: Ταχυδρομείο:*:18024:0:99999:7::: usbmux:*:18024:0:99999:7::: rtkit:*:18024:0:99999:7::: stunnel4:!: 18024:0:99999:7::: sshd:*:18024:0:99999:7::: Debian-snmp:!: 18024:0:99999:7::: ΣΣΛΧ:!: 18024:0:99999:7::: Παλμός:*:18024:0:99999:7::: Ομιλία-Αποστολέας:!: 18024:0:99999:7::: ΑΒΑΧΙ:*:18024:0:99999:7::: saned:*:18024:0:99999:7::: inetsim:*:18024:0:99999:7::: Χρώμα:*:18024:0:99999:7::: Γεωενδείξει:*:18024:0:99999:7::: Βασιλιάς-Φισερ:*:18024:0:99999:7::: Debian-gdm:*:18024:0:99999:7::: Δράδης:*:18024:0:99999:7::: βοδινό-xss:*:18024:0:99999:7::: systemd-coredump:!!: 18082:
Μπορείτε να δείτε ότι το root έχει κωδικό πρόσβασης Η μέθοδος κρυπτογράφησης του επιφανειακού κατακερματισμού $6 που χρησιμοποιήθηκε προηγουμένως είναι: sha512crypt $6 $, SHA512 (Unix).
bash
# Μάσκα σπάει τον κωδικό πρόσβασης ρίζας δεν καταγράφει τον επιτυχώς σπασμένο κατακερματισμό στο αρχείο potfile Καθορίστε τη συσκευή 2 (οθόνη πυρήνα) για να εκτελέσει τον κωδικό πρόσβασης και ενεργοποιήστε τη βελτιστοποίηση του hashcat -a 3 -m 1800 --force '$6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1' '; Λ; Λ; Λ; l' -O -d 2 --potfile-disable# Mask Crack root Password Αγνοήστε το όνομα χρήστη Μην καταγράψετε την επιτυχημένη ρωγμή στο potfile Καθορίστε τη συσκευή 2 (οθόνη πυρήνα) για να εκτελέσετε τον κωδικό πρόσβασης και ενεργοποιήστε τη βελτιστοποίηση του hashcat -A 3 -m 1800 --force 'root:$6$4ojiBMDPrehqrLkX$d2T7Cn8LKkLk4SDXgCh1IEqjhnsUekXaNUXSxiZIwUTndSqyd.9sEcu80sX9DuEHGmHOeoMev2O0ACYtjMett1' '; Λ; Λ; Λ; l' -O -d 2 --username --potfile-disable
Η CPU και τα ανεξάρτητα γραφικά που συνοδεύονται από το macOS δεν μπορούν να σπάσουν, εδώ ο ίδιος ο Guoguang άλλαξε χειροκίνητα μεταξύ -d 2 και χρησιμοποίησε την οθόνη πυρήνα για να εκτελέσει με επιτυχία:
bash
hashcat -a 0 -m 3000 --force '921988ba001dc8e14a3b108f3fa6cb6d' password.txt
hashcat -a 0 -m 1000 --force 'e19ccf75ee54e06b06a5907af13cef42' password.txt
| παράμετρος | τύπος | περιγραφή | κατανόηση του Guoguang | παράδειγμα |
|---|---|---|---|---|
| –brain-server | ενεργοποίηση του brain server | ενεργοποίηση του κύριου διακομιστή | ||
| -z, –brain-client | Enable brain client, activates -S | Enable distributed client | ||
| –brain-client-features | Num | Ορισμός χαρακτηριστικών πελάτη εγκεφάλου, δείτε παρακάτω | Ορίστε λειτουργίες πελάτη | –brain-client-features=3 |
| –brain-host | Str | Κεντρικός υπολογιστής διακομιστή εγκεφάλου (IP ή τομέας) | IP ή τομέας του κύριου διακομιστή | –brain-host=127.0.0.1 |
| –brain-port | port | θύρα διακομιστή εγκεφάλου | Θύρα κύριου διακομιστή | –brain-port=13743 |
| –brain-password | Str | Κωδικός πρόσβασης ελέγχου ταυτότητας διακομιστή εγκεφάλου | Κωδικός πρόσβασης ελέγχου ταυτότητας του κύριου διακομιστή | –brain-password=e8acfc7280c48009 |
| –brain-session | Hex | παρακάμπτει αυτόματα υπολογισμένη συνεδρία εγκεφάλου | Αυτόματη αντικατάσταση της υπολογισμένης κύριας περιόδου σύνδεσης | –brain-session=0x2ae611db |
| –brain-session-whitelist | Hex | Επιτρέψτε μόνο δεδομένες συνεδρίες, διαχωρισμένες με κόμματα | Επιτρέπεται μόνο η δεδομένη συνομιλία, διαχωρισμένη με κόμμα | –brain-session-whitelist=0x2ae611db |
bash
- [ brain Client Features ] - # | Features
===+========
1 | Αποστολή hashed Κωδικοί πρόσβασης #<29x2 9>Στείλτε σπασμένο κωδικό πρόσβασης
2 | Αποστολή Επίθεση Θέσεις # Αποστολή σπασμένης τοποθεσίας
3 | Send hashed passwords and attack positions # Send hashed passwords and