Password Cracker: Πώς να σπάσετε/μαντέψετε έναν κωδικό πρόσβασης
⚡ Έξυπνη Σύνοψη
Η παραβίαση κωδικών πρόσβασης είναι η πρακτική ανάκτησης διαπιστευτηρίων μέσω συστηματικής εικασίας, σύγκρισης ή υπολογισμού τους με αποθηκευμένα hashes. Αυτή η επισκόπηση εξηγεί πώς λειτουργούν οι εισβολείς, τα εργαλεία που χρησιμοποιούν, τους παράγοντες ισχύος που τους αντιστέκονται και τους ελέγχους που πρέπει να επιβάλλουν οι διαχειριστές.

Η διάρρηξη κωδικών πρόσβασης είναι ένας από τους παλαιότερους κλάδους στην επιθετική ασφάλεια, ωστόσο παραμένει εξίσου επίκαιρη όσο ποτέ, επειδή οι χρήστες συνεχίζουν να επιλέγουν προβλέψιμα μυστικά. Σε αυτό το σεμινάριο, θα παρουσιάσουμε τις συνήθεις τεχνικές που χρησιμοποιούν οι εισβολείς για την ανάκτηση κωδικών πρόσβασης, τα εργαλεία που αυτοματοποιούν την εργασία και τα αντίμετρα που μπορούν να εφαρμόσουν οι διαχειριστές για την προστασία των συστημάτων από αυτές τις επιθέσεις.
Τι είναι το Password Cracking;
Η διάρρηξη κωδικών πρόσβασης είναι η διαδικασία απόπειρας απόκτησης μη εξουσιοδοτημένης πρόσβασης σε ένα περιορισμένο σύστημα, ανακτώντας το μυστικό που προστατεύει έναν μηχανισμό ελέγχου ταυτότητας. Η διαδικασία διάρρηξης μπορεί να περιλαμβάνει τη σύγκριση αποθηκευμένων κατακερματισμών κωδικών πρόσβασης με μια προ-υπολογισμένη λίστα λέξεων ή την εκτέλεση αλγορίθμων που δημιουργούν υποψήφιους κωδικούς πρόσβασης μέχρι να βρεθεί μια αντιστοιχία. Μόλις ανακαλυφθεί μια αντιστοιχία, ο εισβολέας μπορεί να επαληθεύσει την ταυτότητά του ως νόμιμος χρήστης χωρίς ποτέ να μαντέψει στο διαδίκτυο.
Τι είναι το Password Strength;
Η ισχύς του κωδικού πρόσβασης είναι το μέτρο της αποτελεσματικότητας ενός κωδικού πρόσβασης στην αντίσταση σε επιθέσεις παραβίασης κωδικών πρόσβασης. Η ισχύς οποιουδήποτε κωδικού πρόσβασης καθορίζεται από τρεις ιδιότητες:
- Μήκος: ο συνολικός αριθμός χαρακτήρων που περιέχει ο κωδικός πρόσβασης.
- Περίπλοκο: εάν χρησιμοποιεί συνδυασμό κεφαλαίων γραμμάτων, πεζών γραμμάτων, αριθμών και συμβόλων.
- Απρόβλεψη: εάν ο κωδικός πρόσβασης μπορεί να μαντευτεί εύκολα από έναν εισβολέα που γνωρίζει τον χρήστη.
Ας συγκρίνουμε τρεις κωδικούς πρόσβασης: κωδικό πρόσβασης, κωδικό1και #password1$Για αυτό το παράδειγμα, θα χρησιμοποιήσουμε την ένδειξη ισχύος κωδικού πρόσβασης του cPanel. Οι παρακάτω εικόνες δείχνουν την ισχύ κάθε υποψηφίου.
Σημείωση: Ο κωδικός πρόσβασης που χρησιμοποιείται είναι κωδικό πρόσβασης; η ισχύς είναι 1, η οποία είναι πολύ ασθενής.
Σημείωση: Ο κωδικός πρόσβασης που χρησιμοποιείται είναι κωδικό1; η δύναμη είναι 28, η οποία είναι ακόμα αδύναμη.
Σημείωση: Ο κωδικός πρόσβασης που χρησιμοποιείται είναι #password1$; η ισχύς είναι 60, η οποία είναι ισχυρή. Όσο υψηλότερος είναι ο αριθμός ισχύος, τόσο καλύτερος είναι ο κωδικός πρόσβασης.
Ας υποθέσουμε τώρα ότι πρέπει να αποθηκεύσουμε τους ίδιους κωδικούς πρόσβασης χρησιμοποιώντας κατακερματισμό MD5. Θα χρησιμοποιήσουμε μια ηλεκτρονική γεννήτρια κατακερματισμού MD5 για να μετατρέψουμε κάθε κωδικό πρόσβασης στην τιμή κατακερματισμού του. Ο παρακάτω πίνακας δείχνει τους κατακερματισμούς που προκύπτουν.
| Κωδικός Πρόσβασης | MD5 Hash | Δείκτης Ισχύος cPanel |
|---|---|---|
| κωδικό πρόσβασης | 5f4dcc3b5aa765d61d8327deb882cf99 | 1 |
| κωδικό1 | 7c6a180b36896a0a8c02787eeafb0e4c | 28 |
| #password1$ | 29e08fb7103c327d68327f23d8d9256c | 60 |
Θα χρησιμοποιήσουμε τώρα έναν δημόσιο ιστότοπο αντίστροφης αναζήτησης MD5 για να σπάσουμε τα παραπάνω hashes. Οι παρακάτω εικόνες δείχνουν τα αποτελέσματα του σπάσιμου κωδικού πρόσβασης για κάθε τιμή.
Όπως μπορείτε να δείτε από τα παραπάνω αποτελέσματα, καταφέραμε να σπάσουμε τον πρώτο και τον δεύτερο κωδικό πρόσβασης, οι οποίοι είχαν χαμηλότερους αριθμούς ισχύος. Δεν καταφέραμε να σπάσουμε τον τρίτο κωδικό πρόσβασης, ο οποίος ήταν μεγαλύτερος, πιο περίπλοκος και απρόβλεπτος. Είχε επίσης υψηλότερο αριθμό ισχύος.
Τεχνικές διάρρηξης κωδικού πρόσβασης
Υπάρχουν αρκετές αποδεδειγμένες τεχνικές που χρησιμοποιούν οι εισβολείς για την ανάκτηση κωδικών πρόσβασης. Παρακάτω θα περιγράψουμε τις πιο συχνά χρησιμοποιούμενες κατηγορίες.
- Επίθεση λεξικού: Αυτή η μέθοδος χρησιμοποιεί μια λίστα λέξεων με πιθανούς υποψηφίους και συγκρίνει τον καθένα με τους καταγεγραμμένους κωδικούς πρόσβασης χρηστών ή τα hashes κωδικών πρόσβασης.
- Επίθεση ωμής βίας: Οι επιθέσεις brut force συνδυάζουν αλφαριθμητικούς χαρακτήρες και σύμβολα χρησιμοποιώντας αλγόριθμους για να δημιουργήσουν συστηματικά κάθε πιθανό κωδικό πρόσβασης μέχρι να βρεθεί μια αντιστοιχία. Για παράδειγμα, ένας κωδικός πρόσβασης όπως κωδικό πρόσβασης μπορεί επίσης να δοκιμαστεί ως λέξη p@$$ χρησιμοποιώντας έναν υβριδικό κανόνα ωμής βίας.
- Επίθεση στο τραπέζι του ουράνιου τόξου: Αυτή η μέθοδος βασίζεται σε προ-υπολογισμένα hashes. Ας υποθέσουμε ότι μια βάση δεδομένων αποθηκεύει κωδικούς πρόσβασης ως MD5 hashes. Ο εισβολέας δημιουργεί έναν άλλο πίνακα που αποθηκεύει MD5 hashes κοινών κωδικών πρόσβασης και συγκρίνει το καταγεγραμμένο hash με τον προ-υπολογισμένο πίνακα. Εάν βρεθεί κάποια αντιστοιχία, ο κωδικός πρόσβασης ανακτάται.
- Εικασία: Όπως υποδηλώνει το όνομα, αυτή η μέθοδος περιλαμβάνει εικασίες. Κωδικοί πρόσβασης όπως qwerty, κωδικό πρόσβασηςκαι διαχειριστής χρησιμοποιούνται συνήθως ή ορίζονται ως προεπιλογές. Εάν δεν έχουν αλλάξει, μπορούν να παραβιαστούν γρήγορα.
- Αράχνη: Οι περισσότεροι οργανισμοί χρησιμοποιούν κωδικούς πρόσβασης που περιέχουν πληροφορίες εταιρείας. Αυτές οι πληροφορίες μπορούν να συλλεχθούν από εταιρικούς ιστότοπους και μέσα κοινωνικής δικτύωσης όπως το Facebook και το Twitter. Το Spidering συλλέγει δεδομένα από αυτές τις πηγές για να δημιουργήσει στοχευμένες λίστες λέξεων, οι οποίες στη συνέχεια χρησιμοποιούνται σε επιθέσεις λεξικών και βίαιης βίας.
- Πλήρωση διαπιστευτηρίων: Οι εισβολείς αναπαράγουν ζεύγη ονόματος χρήστη και κωδικού πρόσβασης που διέρρευσαν από μία παραβίαση εναντίον μη σχετικών υπηρεσιών, εκμεταλλευόμενοι χρήστες που επαναχρησιμοποιούν τα διαπιστευτήρια.
Μια λίστα λέξεων-κλειδιών που αλλάζει συνεχώς για μια φανταστική εταιρεία θα μπορούσε να συνδυάζει: 1976 (έτος γέννησης του ιδρυτή), smith, jones (επώνυμα), acme (όνομα εταιρείας), built, to, last (λέξεις-κλειδιά οράματος), golf, chess, soccer (χόμπι).
Ο παρακάτω πίνακας συγκρίνει τις τεχνικές με βάση την ταχύτητα, τις προϋποθέσεις και την ανιχνευσιμότητα.
| Τεχνική | Ταχύτητα | Απαιτείται Hash; | Ανιχνεύσιμο στο διαδίκτυο; |
|---|---|---|---|
| Λεξικό | Γρήγορα | Προαιρετικός | Ναι |
| Ωμής βίας | Αργά | Προαιρετικός | Ναι |
| Τραπέζι ουράνιου τόξου | Πολύ γρήγορα | Ναι | Όχι (εκτός σύνδεσης) |
| Μαντέψτε | Μεταβλητός | Οχι | Ναι |
| Spidering | Αργά | Οχι | Ναι |
| Γέμισμα διαπιστευτηρίων | Γρήγορα | Οχι | Ναι |
Password Cracker Εργαλεία
Τα εργαλεία cracker κωδικών πρόσβασης είναι προγράμματα λογισμικού που αυτοματοποιούν τις τεχνικές που περιγράφονται παραπάνω. Έχουμε ήδη αναφερθεί σε ένα τέτοιο βοηθητικό πρόγραμμα στο παράδειγμα ισχύος νωρίτερα, όπου μια δημόσια αναζήτηση MD5 χρησιμοποιεί έναν πίνακα ουράνιου τόξου για την αντιστροφή κοινών κατακερματισμών. Θα εξετάσουμε τώρα πρόσθετα εργαλεία στα οποία βασίζονται οι επαγγελματίες κατά τη διάρκεια εξουσιοδοτημένων αξιολογήσεων.
1) John the Ripper
John the Ripper χρησιμοποιεί τη γραμμή εντολών και δέχεται λίστες λέξεων με κανόνες για τη δημιουργία υποψήφιων λέξεων. Εντοπίζει αυτόματα πολλές κοινές μορφές κατακερματισμού. Το πρόγραμμα είναι δωρεάν, ενώ οι επιμελημένες εμπορικές λίστες λέξεων διατίθενται ξεχωριστά. Επισκεφθείτε το https://www.openwall.com/john/.
2) Cain & Abel
Cain & Abel τρέχει Windows και ανακτά τους κωδικούς πρόσβασης χρηστών, εκτελεί ανίχνευση δικτύου και πολλά άλλα. Η γραφική διεπαφή του το καθιστά δημοφιλές στους νεοεισερχόμενους. Το εργαλείο δεν έχει συντηρηθεί ενεργά από το 2014, επομένως χρησιμοποιήστε το μόνο σε παλαιότερα συστήματα εργαστηρίου. Δείτε https://sectools.org/tool/cain/.
3) Ophcrack
Ophcrack είναι μια πλατφόρμα Windows πρόγραμμα cracker κωδικών πρόσβασης που χρησιμοποιεί πίνακες ουράνιου τόξου. Εκτελείται σε Windows, Linux και macOSκαι περιλαμβάνει μια ενότητα ωμής βίας. Επισκεφθείτε το https://ophcrack.sourceforge.io/.
4) Hashcat
Hashcat είναι το σύγχρονο πρότυπο για την ανάκτηση κωδικών πρόσβασης εκτός σύνδεσης. Υποστηρίζει πάνω από 300 αλγόριθμους κατακερματισμού, αξιοποιεί την επιτάχυνση της GPU και προσφέρει επιθέσεις βασισμένες σε κανόνες. Η τεκμηρίωση βρίσκεται στο https://hashcat.net/hashcat/.
5) Ύδρα
Το Hydra (THC-Hydra) στοχεύει σε ηλεκτρονικές υπηρεσίες όπως φόρμες σύνδεσης SSH, FTP, RDP και HTTP. Διατίθεται με Kali Linux και χρησιμοποιείται ευρέως σε εξουσιοδοτημένες επιχειρήσεις της κόκκινης ομάδας.
Πώς να προστατευτείτε από επιθέσεις διάρρηξης κωδικού πρόσβασης;
Ένας οργανισμός μπορεί να χρησιμοποιήσει τα ακόλουθα μέτρα για να μειώσει τις πιθανότητες παραβίασης κωδικών πρόσβασης:
- Απαιτείται ελάχιστος αριθμός 12 χαρακτήρων και αποφεύγονται προβλέψιμα μοτίβα όπως 11552266 ή qwerty1234.
- Αποθηκεύστε τους κωδικούς πρόσβασης με μια αργή μονόδρομη συνάρτηση κατακερματισμού, όπως bcrypt, scrypt ή Argon2, αντί για γρήγορους κατακερματισμούς, όπως MD5 ή SHA-1.
- Αλατίστε κάθε κωδικό πρόσβασης πριν από τον κατακερματισμό. Τα αλάτια ακυρώνουν τις αναζητήσεις στον πίνακα ουράνιου τόξου ακόμα και όταν ο ίδιος ο κατακερματισμός είναι γρήγορος.
- Υιοθετήστε πολιτικές κωδικών πρόσβασης που ευνοούν τις βαθμολογίες υψηλής ισχύος και προωθούν τις φράσεις πρόσβασης, όπως συνιστάται από το NIST SP 800-63B.
- Ενεργοποιήστε τον έλεγχο ταυτότητας πολλαπλών παραγόντων (MFA), ώστε ένας κλεμμένος κωδικός πρόσβασης από μόνος του να μην παρέχει πρόσβαση.
- Χρησιμοποιήστε έναν διαχειριστή κωδικών πρόσβασης για να δημιουργήσετε μοναδικά διαπιστευτήρια για κάθε υπηρεσία, εξουδετερώνοντας τις επιθέσεις παραβίασης διαπιστευτηρίων.
- Ρυθμίστε τις παραμέτρους κλειδώματος λογαριασμού, περιορισμού και συνεχούς παρακολούθησης για να εντοπίσετε έγκαιρα την online δραστηριότητα ωμής βίας.
Hacking Activity: Hack Now!
Σε αυτό το πρακτικό σενάριο, θα σπάσουμε ένα Windows λογαριασμό που χρησιμοποιεί έναν απλό κωδικό πρόσβασης. Windows αποθηκεύει τα τοπικά διαπιστευτήρια ως hashes NTLM (ένα σχήμα βασισμένο σε MD4) και θα χρησιμοποιήσουμε τη μονάδα cracker NTLM στο Cain και Abel για να ανακτήσουμε την τιμή.
Ο Κάιν και ο Άβελ μπορούν να σπάσουν κωδικούς πρόσβασης χρησιμοποιώντας επίθεση λεξικού, ωμή βία ή κρυπτανάλυση (προ-υπολογισμένους πίνακες). Θα χρησιμοποιήσουμε την επίθεση λεξικού εδώ. Κατεβάστε τη λίστα λέξεων 10k-Most-Common.zip από έναν αξιόπιστο καθρέφτη. Για αυτήν την επίδειξη, δημιουργήσαμε έναν λογαριασμό που ονομάζεται Λογαριασμοί με τον κωδικό πρόσβασης qwerty για μια Windows 7 εργαστηριακό μηχάνημα.
Πώς να σπάσετε έναν κωδικό πρόσβασης
Η παρακάτω αναλυτική παρουσίαση αντιστοιχίζει κάθε οθόνη Κάιν και Άβελ με την ενέργεια που πρέπει να κάνετε. Ακολουθήστε τα βήματα με τη σειρά στον δικό σας λογαριασμό εργαστηρίου, ποτέ σε ένα σύστημα που δεν σας ανήκει.
Βήμα 1) Ανοίξτε τον Κάιν και τον Άβελ.
Εκκινήστε την εφαρμογή. Θα δείτε την ακόλουθη κύρια οθόνη.
Βήμα 2) Βρείτε το κουμπί Προσθήκη.
Βεβαιωθείτε ότι η καρτέλα Cracker είναι επιλεγμένη όπως φαίνεται παραπάνω και κάντε κλικ στο κουμπί Προσθήκη στη γραμμή εργαλείων.
Βήμα 3) Επιλέξτε την πηγή εισαγωγής.
Εμφανίζεται το ακόλουθο παράθυρο διαλόγου. Επιλέξτε Εισαγωγή κατακερματισμών από το τοπικό σύστημα και κάντε κλικ στο κουμπί Επόμενο.
Βήμα 4) Revδείτε τους εισαγόμενους λογαριασμούς.
Οι τοπικοί λογαριασμοί χρηστών παρατίθενται ως εξής. Τα ακριβή αποτελέσματα θα αντικατοπτρίζουν τους λογαριασμούς χρηστών στο μηχάνημα του εργαστηρίου σας.
Βήμα 5) Κάντε δεξί κλικ στον λογαριασμό-στόχο.
Κάντε δεξί κλικ στον λογαριασμό που θέλετε να "σπάσετε". Για αυτό το σεμινάριο, θα χρησιμοποιήσουμε το Λογαριασμοί χρήστη.
Βήμα 6) Ανοίξτε τον πίνακα επίθεσης λεξικού.
Στο παράθυρο επίθεσης λεξικού, κάντε δεξί κλικ στην ενότητα λεξικού και επιλέξτε Πρόσθεσε στη λίστα όπως φαίνεται παρακάτω.
Βήμα 7) Περιηγηθείτε στο αρχείο της λίστας λέξεων.
Περιηγηθείτε στο 10k-most-common.txt το αρχείο που μόλις κατεβάσατε και επιλέξτε το.
Βήμα 8) Revδείτε τον ανακτημένο κωδικό πρόσβασης.
Αν ο χρήστης επιλέξει έναν απλό κωδικό πρόσβασης, όπως π.χ. qwerty, θα δείτε αποτελέσματα παρόμοια με την παρακάτω οθόνη, με την τιμή απλού κειμένου δίπλα στον λογαριασμό χρήστη.
Σημείωση: Ο χρόνος που απαιτείται για την αποκρυπτογράφηση ενός κωδικού πρόσβασης εξαρτάται από την ισχύ του κωδικού πρόσβασης, την πολυπλοκότητα της λίστας υποψήφιων κωδικών πρόσβασης και την επεξεργαστική ισχύ του υπολογιστή σας. Εάν η επίθεση με λεξικό δεν ανακτήσει τον κωδικό πρόσβασης, δοκιμάστε στη συνέχεια μια επίθεση ωμής βίας ή κρυπτανάλυσης.
Πώς είναι η Τεχνητή Νοημοσύνη η Ρέσα;ping Σπάσιμο κωδικού πρόσβασης και προστασία
Η τεχνητή νοημοσύνη έχει γίνει μια σοβαρή δύναμη και στις δύο πλευρές του σπάσιμο κωδικών πρόσβασης. Οι εισβολείς εκπαιδεύουν μοντέλα γλώσσας σε διαρροές δεδομένων διαπιστευτηρίων για να προβλέπουν ρεαλιστικές φράσεις πρόσβασης, ενώ οι υπερασπιστές συνδυάζουν τα ίδια μοντέλα με αγωγούς τηλεμετρίας για να ανιχνεύουν ταχύτερα τυχόν παραβιάσεις.
Δείτε πώς η Τεχνητή Νοημοσύνη αλλάζει τον τομέα σήμερα:
- Πιο έξυπνη δημιουργία λιστών λέξεων: Τα γενετικά μοντέλα όπως το PassGAN μαθαίνουν μοτίβα ανθρώπινων κωδικών πρόσβασης και παράγουν λίστες υποψήφιων κωδικών πρόσβασης που σπάνε περισσότερα hashes από τα στατικά λεξικά.
- Βαθμολογία Κινδύνου Συμπεριφοράς: Η αμυντική τεχνητή νοημοσύνη επιθεωρεί τη γεωγραφία σύνδεσης, το δακτυλικό αποτύπωμα της συσκευής και την...ping ρυθμό, στέλνοντας ασυνήθιστα συμφραζόμενα για την ενίσχυση της αυθεντικοποίησης.
- Ανίχνευση ανωμαλιών σε πραγματικό χρόνο: Οι ταξινομητές μηχανικής μάθησης παρακολουθούν τα αρχεία καταγραφής ελέγχου ταυτότητας και επισημαίνουν την παραμόρφωση με διαπιστευτήρια ή τις αργές καμπάνιες ωμής βίας που δεν εντοπίζουν τους κανόνες υπογραφής.
- Αυτοματοποιημένη καθοδήγηση πολιτικής: Οι πλατφόρμες ταυτότητας βαθμολογούν τις νέες φράσεις πρόσβασης σε σχέση με τα σώματα κειμένων που αφορούν συγκεκριμένα οργανισμούς και προτείνουν ισχυρότερες αντικαταστάσεις πριν οι χρήστες τις οριστικοποιήσουν.
- Προστασία από ηλεκτρονικό ψάρεμα (phishing): Η Τεχνητή Νοημοσύνη επιταχύνει την ανάπτυξη του FIDO2 και των ροών κλειδιού πρόσβασης αναλύοντας τα σήματα κινδύνου και μειώνοντας την τριβή των χρηστών.
Συνδυάστε την παρακολούθηση τεχνητής νοημοσύνης με έλεγχο ταυτότητας πολλαπλών παραγόντων, σύγχρονο κατακερματισμό όπως το Argon2 και γρήγορες ροές ειδοποιήσεων παραβίασης για να διατηρείτε την αυτοματοποιημένη άμυνα μπροστά από την αυτοματοποιημένη επίθεση.















