Οι κωδικοί πρόσβασης χρησιμοποιούνται εδώ και χιλιάδες χρόνια σαν μέσο ταυτοποίησης με άλλους και τα τελευταία χρόνια χρησιμοποιούνται στους υπολογιστές. Είναι μια απλή ιδέα. Μια πληροφορία που διατηρείται μυστική μεταξύ ατόμων και χρησιμοποιείται για την “απόδειξη” ταυτότητας
Οι κωδικοί πρόσβασης στο περιβάλλον της πληροφορικής εμφανίστηκαν τη δεκαετία του 1960 σε υπολογιστές mainframe (μεγάλους κεντρικούς υπολογιστές με απομακρυσμένα “τερματικά” για την πρόσβαση του χρήστη). Σήμερα χρησιμοποιούνται οπουδήποτε, από το PIN που εισάγουμε στο ATM, μέχρι τη σύνδεση στους υπολογιστές μας και σε διάφορους ιστότοπους.
Μέχρι σχετικά πρόσφατα, ένας καλός κωδικός πρόσβασης θα μπορούσε να ήταν μια λέξη ή μια φράση που αποτελείται από έξι έως οκτώ χαρακτήρες. Σήμερα υπάρχουν οδηγίες ελάχιστου μήκους και αυτό οφείλεται στην “εντροπία”.
Όταν μιλάμε για κωδικούς πρόσβασης, η εντροπία είναι το μέτρο της προβλεψιμότητας. Τα μαθηματικά πίσω από αυτό δεν είναι περίπλοκα, αλλά ας το εξετάσουμε με ένα απλούστερο μέτρο: τον αριθμό των πιθανών κωδικών πρόσβασης.
Εάν ένας κωδικός πρόσβασης ενός χαρακτήρα περιέχει μόνο ένα πεζό γράμμα, υπάρχουν μόνο 26 πιθανοί κωδικοί πρόσβασης από το “a” μέχρι το “z”. Αν βάλουμε και τα κεφαλαία γράμματα, αυξάνουμε τον αριθμό των πιθανών κωδικών πρόσβασης στους 52 πιθανούς κωδικούς.
Ο αριθμός των πιθανών κωδικών πρόσβασης συνεχίζει να μεγαλώνει καθώς αυξάνεται το μήκος και προστίθενται κι άλλοι τύποι χαρακτήρων.
Το να κάνετε έναν κωδικό πρόσβασης μεγαλύτερο ή πιο περίπλοκο αυξάνει σημαντικά τον αριθμό των πιθανών κωδικών πρόσβασης κάτι που σημαίνει ασφαλέστεροι κωδικοί.
Κοιτάζοντας το παραπάνω σχήμα, είναι εύκολο να καταλάβουμε γιατί ενθαρρύνουμε τη χρήση μεγάλων κωδικών πρόσβασης με κεφαλαία και πεζά γράμματα, αριθμούς και σύμβολα. Όσο πιο περίπλοκος είναι ο κωδικός πρόσβασης, τόσο περισσότερες προσπάθειες χρειάζονται για να τον μαντέψει κάποιος.
Ωστόσο, το πρόβλημα με την πολυπλοκότητα των κωδικών πρόσβασης είναι ότι οι υπολογιστές είναι πολύ αποδοτικοί στην επανάληψη εργασιών συμπεριλαμβανομένου και στο να μαντεύουν τους κωδικους πρόσβασης.
Πέρυσι, είχαμε ένα ρεκόρ από έναν υπολογιστή. Πέτυχε ρυθμό γρηγορότερο από 100.000.000.000 εικασίες το δευτερόλεπτο.
Αξιοποιώντας αυτήν την υπολογιστική δύναμη, οι εγκληματίες μπορούν να εισβάλουν σε συστήματα βομβαρδίζοντας τα με όσο το δυνατόν περισσότερους συνδυασμούς κωδικών πρόσβασης, σε μια διαδικασία που ονομάζεται brute force.
Και με την τεχνολογία που βασίζεται σε σύννεφο, οι υποθέσεις κωδικών πρόσβασης οκτώ χαρακτήρων μπορεί να επιτευχθούν σε μόλις 12 λεπτά και κοστίζουν μόλις 25$.
Επίσης, επειδή οι κωδικοί πρόσβασης χρησιμοποιούνται σχεδόν πάντα για πρόσβαση σε ευαίσθητα δεδομένα ή σημαντικά συστήματα, αυτό παρακινεί τους εγκληματίες να τους αναζητήσουν ενεργά. Έτσι έχει δημιουργηθεί μια προσοδοφόρος αγορά κωδικών πρόσβασης μέσω του διαδικτύου, που διαθέτει από διευθύνσεις email, κωδικούς μέχρι και ονόματα χρηστών.
Πώς αποθηκεύονται οι κωδικοί πρόσβασης σε ιστότοπους;
Οι κωδικοί πρόσβασης ενός ιστότοπου συνήθως αποθηκεύονται με προστατευμένο τρόπο χρησιμοποιώντας έναν μαθηματικό αλγόριθμο που ονομάζεται hashing. Ένας hashed κωδικός πρόσβασης δεν είναι αναγνωρίσιμος και δεν μπορεί να μετατραπεί ξανά στον κωδικό πρόσβασης (μη αναστρέψιμη διαδικασία).
Όταν προσπαθείτε να συνδεθείτε, ο κωδικός πρόσβασης που εισάγετε κρυπτογραφείται και χρησιμοποιώντας την ίδια διαδικασία συγκρίνεται με την έκδοση που είναι αποθηκευμένη στον ιστότοπο. Αυτή η διαδικασία επαναλαμβάνεται κάθε φορά που συνδέεστε.
Για παράδειγμα, ο κωδικός πρόσβασης “iguru.gr” έχει την τιμή “5DA1B35167D7A6583AE228B2AF769AEC6D7B24D7” με τον αλγόριθμο κατακερματισμού SHA1. Δοκιμάστε το μόνοι σας.
Έτσι αν υπάρχει ένα αρχείο γεμάτο κατακερματισμένους κωδικούς πρόσβασης, μπορεί να χρησιμοποιηθεί μια επίθεση brute force, δοκιμάζοντας κάθε συνδυασμό χαρακτήρων. Αυτό έχει γίνει τόσο κοινή πρακτική που υπάρχουν ιστότοποι που παραθέτουν κοινούς κωδικούς πρόσβασης παράλληλα με την (υπολογισμένη) τιμή του κατακερματισμού. Μπορείτε απλά να αναζητήσετε την hashed τιμή για να αποκαλύψετε τον αντίστοιχο κωδικό πρόσβασης.
Είναι η πολυπλοκότητα η λύση;
Καθώς οι δυνατότητες των υπολογιστών αυξάνονται, η πολυπλοκότητα δεν φαίνεται να είναι πρόβλημα.
Τα καλά νέα είναι ότι υπάρχουν εργαλεία. Οι περισσότεροι υπολογιστές υποστηρίζουν πλέον την αποθήκευση κωδικών πρόσβασης είτε στο λειτουργικό σύστημα είτε στο πρόγραμμα περιήγησης.
Υπάρχουν πάρα πολλές εφαρμογές που προσθέτουν την δυνατότητα αποθήκευσης πολύ δύσκολων κωδικοών που δεν μπορούμε να θυμόμαστε. Μια από αυτές τις λύσεις είναι και ο password manager KeePass.
Οι διαχειριστές κωδικών πρόσβασης όπως ο KeePassXC μπορούν να βοηθήσουν τους χρήστες να δημιουργήσουν μεγάλους, πολύπλοκους κωδικούς πρόσβασης και να τους αποθηκεύσουν σε μια ασφαλή τοποθεσία.
Υπάρχουν φυσικά ευπάθειες σε όλα, αλλά αυτή είναι μια ιστορία για μια άλλη φορά.
Δημοσιεύτηκε στο The Conversation από τους Paul Haskell-Dowland, Associate Dean (Computing and Security), Edith Cowan University και Brianna O’Shea, Lecturer, Ethical Hacking and Defense, Edith Cowan University με άδεια Creative Commons. διαβάστε το αυθεντικό άρθρο.