Πώς να σπάσετε κωδικούς πρόσβασης χρησιμοποιώντας το εργαλείο Hashcat;

Σε δοκιμές ηθικής εισβολής και διείσδυσης, η διάρρηξη κωδικού πρόσβασης είναι ζωτικής σημασίας για την απόκτηση πρόσβασης σε ένα σύστημα ή έναν διακομιστή.

Σε συστήματα και βάσεις δεδομένων, οι κωδικοί πρόσβασης σπάνια αποθηκεύονται σε μορφή απλού κειμένου.

Οι κωδικοί πρόσβασης κατακερματίζονται πάντα πριν αποθηκευτούν στη βάση δεδομένων και ο κατακερματισμός συγκρίνεται κατά τη διαδικασία επαλήθευσης.

Ανάλογα με την κρυπτογράφηση που χρησιμοποιείται, διαφορετικά συστήματα αποθηκεύουν κατακερματισμούς κωδικών πρόσβασης με διαφορετικούς τρόπους. Και αν έχετε hashes, μπορείτε εύκολα να σπάσετε οποιονδήποτε κωδικό πρόσβασης.

Και σε αυτό το άρθρο, θα εξερευνήσουμε πώς να σπάσουμε τα κατακερματισμένα κωδικούς πρόσβασης χρησιμοποιώντας ένα εύχρηστο και εξαιρετικό εργαλείο γραμμής εντολών Hashcat.

Ας ξεκινήσουμε λοιπόν.

Πριν από αυτό όμως…

Τι είναι η συνάρτηση Hash;

Κατακερματισμός είναι η διαδικασία μετατροπής ενός κανονικού κειμένου εισαγωγής σε μια συμβολοσειρά κειμένου σταθερού μεγέθους χρησιμοποιώντας κάποια μαθηματική συνάρτηση που είναι γνωστή ως συνάρτηση κατακερματισμού. Οποιοδήποτε κείμενο, ανεξαρτήτως μήκους, μπορεί να μετατραπεί σε έναν τυχαίο συνδυασμό ακεραίων και αλφαβήτων χρησιμοποιώντας έναν αλγόριθμο.

  • Η είσοδος αναφέρεται στο μήνυμα που θα κατακερματιστεί.
  • Η συνάρτηση κατακερματισμού είναι ο αλγόριθμος κρυπτογράφησης όπως ο MD5 και ο SHA-256 που μετατρέπει μια συμβολοσειρά σε τιμή κατακερματισμού.
  • Και τέλος, η τιμή κατακερματισμού είναι το αποτέλεσμα.

Τι είναι το Hashcat;

Hashcat είναι το πιο γρήγορο εργαλείο ανάκτησης κωδικού πρόσβασης. Σχεδιάστηκε για να σπάει τους πολύπλοκους κωδικούς πρόσβασης σε σύντομο χρονικό διάστημα. Και αυτό το εργαλείο είναι επίσης ικανό τόσο για επιθέσεις λίστας λέξεων όσο και για επιθέσεις ωμής βίας.

  Πώς να απενεργοποιήσετε την επικάλυψη Radeon

Το Hashcat έχει δύο παραλλαγές. Βασισμένο σε CPU και GPU (Graphical Processing Unit). Το εργαλείο που βασίζεται σε GPU μπορεί να σπάσει τους κατακερματισμούς σε λιγότερο χρόνο από την CPU. Μπορείτε να ελέγξετε τις απαιτήσεις του προγράμματος οδήγησης GPU στον επίσημο ιστότοπο τους.

Χαρακτηριστικά

  • Δωρεάν και ανοιχτού κώδικα
  • Μπορούν να εφαρμοστούν περισσότερες από 200 παραλλαγές τύπου κατακερματισμού.
  • Υποστηρίζει πολλαπλά λειτουργικά συστήματα όπως Linux, Windows και macOS.
  • Διατίθενται πολλές πλατφόρμες όπως η υποστήριξη CPU και GPU.
  • Πολλά hashes μπορούν να σπάσουν ταυτόχρονα.
  • Υποστηρίζονται αρχεία Hex-salt και hex-charset, μαζί με τον αυτόματο συντονισμό απόδοσης.
  • Διατίθεται ενσωματωμένο σύστημα συγκριτικής αξιολόγησης.
  • Τα κατανεμημένα δίκτυα πυρόλυσης μπορούν να υποστηριχθούν χρησιμοποιώντας επικαλύψεις.

Και μπορείτε να δείτε και άλλα χαρακτηριστικά από τον ιστότοπό τους.

Εγκατάσταση του Hashcat

Αρχικά, βεβαιωθείτε ότι το σύστημά σας Linux είναι ενημερωμένο με τα πιο πρόσφατα προγράμματα και εργαλεία.

Για αυτό, ανοίξτε ένα τερματικό και πληκτρολογήστε:

$ sudo apt update && sudo apt upgrade

Το Hashcat είναι συνήθως προεγκατεστημένο στο Kali Linux. Μπορείτε να βρείτε το εργαλείο στην ενότητα διάρρηξη κωδικού πρόσβασης. Αλλά εάν πρέπει να το εγκαταστήσετε χειροκίνητα σε οποιαδήποτε διανομή Linux, πληκτρολογήστε την ακόλουθη εντολή στο τερματικό.

$ sudo apt-get install hashcat

Χρήση εργαλείου

Για να ξεκινήσετε με το Hashcat, θα χρειαστούμε κάποιους κατακερματισμούς κωδικών πρόσβασης. Εάν δεν έχετε κατακερματισμό για σπάσιμο, θα δημιουργήσουμε πρώτα μερικούς κατακερματισμούς.

Για να δημιουργήσετε hashes χρησιμοποιώντας τη γραμμή εντολών, απλώς ακολουθήστε την παρακάτω μορφή.

echo -n "input" | algorithm | tr -d "-">>outputfiename

Για παράδειγμα, μπορείτε να δείτε ότι μετέτρεψα ορισμένες λέξεις σε hashes χρησιμοποιώντας τον παρακάτω αλγόριθμο md5.

┌──(root💀kali)-[/home/writer/Desktop]
└─# echo -n "grtechpc.org" | md5sum | tr -d "-">>crackhash.txt
echo -n "password123" | md5sum | tr -d "-">>crackhash.txt
echo -n "Webtechnology" | md5sum | tr -d "-">>crackhash.txt
echo -n "microsoftteams" | md5sum | tr -d "-">>crackhash.txt
echo -n "recyclebin" | md5sum | tr -d "-">>crackhash.txt

Και η έξοδος θα αποθηκευτεί στο αρχείο crackhash.txt.

  Πώς να απεγκαταστήσετε εύκολα προγράμματα στο Ubuntu με το qUninstaller

Τώρα θα ελέγξουμε τους κατακερματισμούς που αποθηκεύτηκαν στο συγκεκριμένο αρχείο.

┌──(root💀kali)-[/home/writer/Desktop]
└─# cat crackhash.txt

066d45208667198296e0688629e28b14
482c811da5d5b4bcd497ffeaa98491e3
72a2bc267579aae943326d17e14a8048
2192d208d304b75bcd00b29bc8de5024
caae8dd682acb088ed63e2d492fe1e13

Μπορείτε να δείτε, τώρα έχουμε μερικά hash για να σπάσουμε. Αυτή είναι η διαδικασία για να δημιουργήσετε έναν κατακερματισμό χρησιμοποιώντας τον αλγόριθμο της επιλογής σας.

Το επόμενο βήμα είναι να ξεκινήσετε ένα εργαλείο Hashcat στον υπολογιστή σας Linux. Απλώς χρησιμοποιήστε την ακόλουθη εντολή για να χρησιμοποιήσετε το Hashcat.

$ hashcat --help

Θα εμφανίσει όλες τις επιλογές που πρέπει να γνωρίζετε για να εκτελέσετε το εργαλείο. Στο τερματικό, μπορείτε να βρείτε όλες τις λειτουργίες επίθεσης και κατακερματισμού.

Η γενική μορφή της εντολής είναι

$ hashcat -a num -m num hashfile wordlistfile

Εδώ το ‘num’ αντιπροσωπεύει μια συγκεκριμένη επίθεση και λειτουργία κατακερματισμού προς χρήση. Εάν κάνετε κύλιση στο τερματικό, μπορείτε να βρείτε τους ακριβείς αριθμούς για κάθε επίθεση και λειτουργία κατακερματισμού, όπως για το md4 – ο αριθμός είναι 0 και για τον αλγόριθμο sha256 – ο αριθμός είναι 1740.

Η λίστα λέξεων που πρόκειται να χρησιμοποιήσω είναι η λίστα λέξεων rockyou. Μπορείτε εύκολα να βρείτε αυτήν τη λίστα λέξεων στη διαδρομή /usr/share/wordlists.

Μπορείτε ακόμη να χρησιμοποιήσετε την εντολή εντοπισμού για να βρείτε τη διαδρομή της λίστας λέξεων.

┌──(root💀kali)-[/home/writer]
└─# locate rockyou.txt

Και τέλος, για να σπάσετε τα hashes χρησιμοποιώντας το αρχείο wordlist, χρησιμοποιήστε την ακόλουθη εντολή.

$ hashcat -a 0 -m 0 ./crackhash.txt rockyou.txt

Μετά την εκτέλεση αυτής της εντολής, ενδέχεται να λάβετε ένα σφάλμα χρόνου εκτέλεσης (σφάλμα εξαίρεσης μήκους διακριτικού) το οποίο μπορεί να επιλυθεί εύκολα.

  Οι 6 καλύτερες εφαρμογές για την προστασία των προσωπικών σας δεδομένων στο τηλέφωνό σας

Για να επιλύσετε αυτό το πρόβλημα, αποθηκεύστε κάθε κατακερματισμό ξεχωριστά σε διαφορετικό αρχείο. Αυτό το σφάλμα παρουσιάζεται εάν έχετε χαμηλή ταχύτητα CPU ή GPU. Εάν ο υπολογιστής σας διαθέτει επεξεργαστή υψηλής ταχύτητας, μπορείτε εύκολα να σπάσετε όλα τα hash ταυτόχρονα με ένα μόνο αρχείο.

Αφού διορθώσετε λοιπόν το σφάλμα και τα πάντα, το αποτέλεσμα θα είναι αυτό.

┌──(root💀kali)-[/home/writer/Desktop]
└─# hashcat -a 0 -m 0 hashcrack.txt rockyou.txt
hashcat (v6.1.1) starting...

OpenCL API (OpenCL 1.2 pocl 1.6, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG) - Platform #1 [The pocl project]
=============================================================================================================================
* Device #1: pthread-Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz, 2403/2467 MB (1024 MB allocatable), 4MCU

Minimum password length supported by kernel: 0
Maximum password length supported by kernel: 256

Hashes: 1 digests; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1

Dictionary cache built:
* Filename..: rockyou.txt
* Passwords.: 14344405
* Bytes.....: 139921671
* Keyspace..: 14344398
* Runtime...: 1 sec

8276b0e763d7c9044d255e025fe0c212: [email protected]
                                                 
Session..........: hashcat
Status...........: Cracked
Hash.Name........: MD5
Hash.Target......: 8276b0e763d7c9044d255e025fe0c212
Time.Started.....: Sun Dec 12 08:06:15 2021 (0 secs)
Time.Estimated...: Sun Dec 12 08:06:15 2021 (0 secs)
Guess.Base.......: File (rockyou.txt)
Guess.Queue......: 1/1 (100.00%)
Speed.#1.........:  1059.6 kH/s (0.52ms) @ Accel:1024 Loops:1 Thr:1 Vec:8
Recovered........: 1/1 (100.00%) Digests
Progress.........: 4096/14344398 (0.03%)
Rejected.........: 0/4096 (0.00%)
Restore.Point....: 0/14344398 (0.00%)
Restore.Sub.#1...: Salt:0 Amplifier:0-1 Iteration:0-1
Candidates.#1....: 123456 -> pampam

Started: Sun Dec 12 08:06:13 2021
Stopped: Sun Dec 12 08:06:16 2021

Στο παραπάνω αποτέλεσμα, μετά τις λεπτομέρειες της προσωρινής μνήμης του λεξικού, μπορείτε να παρατηρήσετε ότι ο κατακερματισμός σπάστηκε και ο κωδικός πρόσβασης αποκαλύφθηκε.

συμπέρασμα

Ελπίζω να έχετε κατανοήσει καλύτερα τη χρήση του Hashcat για να σπάσετε κωδικούς πρόσβασης.

Μπορεί επίσης να σας ενδιαφέρει να μάθετε για τα διάφορα εργαλεία ωμής βίας για τη δοκιμή διείσδυσης και μερικά από τα καλύτερα εργαλεία διείσδυσης.