blackoper Δημοσ. 5 Δεκεμβρίου 2006 Δημοσ. 5 Δεκεμβρίου 2006 O έλεγχος πρόσβασης με κωδικό σε ένα πληροφοριακό σύστημα είναι μάλλον ο πιο κοινός τρόπος ταυτοποίησης ενός χρηστή. Ως μέθοδος εφαρμόστηκε από πολύ νωρίς σε περιβάλων τοπικών δυκτίων και, όπως όλα δείχνουν θα συνεχίσει να ερφαμόζεται. Για ένα επιτεθόμενο η γνώση του κωδικού του χρηστι root στο UNIX και του Administrator στα Windows είναι αρκετή για να απόκτηση τον πλήρη έλεγχο στο σύστημα. Ο μυστικός κωδικός πρόσβασης θα πρέπει να είναι γνωστός όχι μονό στο αντίστοιχο χρήστη αλλά και στο λειτουργικό σύστημα, έτσι ώστε να αποκτούν ανάλογα δικαιώματα διαφορά νομότυπα προγράμματα ή/και υπηρεσίες . Βέβαια, ο κωδικός δεν αποθηκεύετε σε μορφή απλού κειμένου στο σύστημα . Αντίθετα έχει τη μορφή μιας κατάλληλα κρυπτογραφημένης συμβολοσειράς .Αυτή έχει επικράτηση και ονομάζετε hash και, ανατρέχοντας σε διάφορα σε διάφορα λεξικά με κωδικούς , αναπαράγουν τα αντίστοιχα hash. Μέσα από μια διαδικασία απλής σύγκρισης είναι εύκολο να διαπιστωθεί αν βρέθηκε ο ζητούμενος κωδικός. Για να έχει νόημα αυτός ο τρόπος εύρεσης κωδικών , βέβαια, θα πρέπει να είναι γνωστή η μέθοδος κρυπτογράφησης που οδηγούσε στην παραγωγή των αρχείων hash. Πέρα από τα λεξικά πολλά προγράμματα <<σπασίματος>> δοκιμάζουν τυχαίους κωδικούς , οι οποίοι δημιουργούνται ακολουθώντας κάποια κριτήρια. Για παράδειγμα, αν ένας cracker ήθελε να δοκιμάσει όλα τα νούμερα κινητών τηλεφώνων θα έλεγε στο πρόγραμμα να δημιουργήσει ένα λεξικό με τα πιθανά δεκαψηφια νούμερα που ξεκινούν από <<6>>. Σε κάθε περίπτωση η διαδικασία αναζήτησης του κωδικού γίνεται σε πραγματικό άχρονο και ο υπολογιστής δοκιμάζει το ένα hash μετά το άλλο έως ότου βρεθεί κάποιο που να ταιριάζει με το αρχικό . Η παραπάνω διαδικασία είναι ιδιαίτερα χρονοβόρα . Για παράδειγμα για ένα κωδικό μήκους επτά χαρακτήρων , που περιλαμβάνει μόνο πεζά γράμματα της αγγλικής αλφαβήτου υπάρχουν 26² = 8.031.810.176 συνδυασμοί . Aυτό σημαίνει ότι ένα πρόγραμμα που μπορεί να υπολογιστή 100.000 hash το δευτερόλεπτο, θέλει περισσότερες από 22 ώρες για τη χειρότερη περίπτωση ο ζητούμενος κωδικός είναι ο τελευταίος που δοκιμάζει. Αν τώρα χρησιμοποιούμε περισσότερους από επτά χαρακτήρες για τον κωδικό μας κάνουμε συνδυασμούς κεφαλαίων και πεζών, και επιπρόσθετα βάζουμε κάποιον αριθμώ ή/και ειδικό σύμβολο , καταλαβαίνεται ότι πρακτικά ένας αλγόριθμος brute force είναι εξαιρετικά δύσκολο να σπάσει τον κωδικό μας . Catch the Rainbow. Αντί για τυφλή παραγωγή όλων ανεξαιρέτως των στοιχείων ενός δείγματος χώρου , ένας έξυπνος αλγόριθμος σπασίματος κωδικών θα ακολουθούσε άλλη στρατηγική. Θα μπορούσε για παράδειγμα να αναζητεί κωδικούς μέσα από ένα υποσύνολο ήδη γνωστών κωδικών χρησιμοποιώντας μάλιστα μια γρήγορη μέθοδος αναζήτησης . Η τακτική αυτή αν και είναι γνωστή σε αρκετό κόσμο έχει ήδη υλοποιηθεί . Ένας τυπικός κωδικός 14 χαρακτήρων στα Windows , που αποτελεί από από μικρούς και μεγάλους χαρακτήρες με αριθμούς και ειδικά σύμβολα αν και πρακτικά απαραβίαστος με τη χρήση του προγράμματος RainbowCrack( http://www.antsight.com/zsl/rainbowcrack διατίθεται για Linux και Windows ) πέρνα στην ιστορία σε λιγότερο από 5 λεπτά. Το RainbowCrack σχεδιάστηκε από τον Κινέζο κτρυπταναλυτή Zhu Shuangle, βασίζετε σε στη θεωρία κρυπτανάλυσης του Philippe Oechslin βλ ( http://lasecwww.epfl.ch/pub/lasec/doc/Oech03.pdf) . To πρόγραμμα RainbowCrack μπορεί να σπάσει κωδικούς που βασίζονται στους αλγόριθμους κρυπτανάλυσης LM,MD5 και SHA1. Αν θέλετε να του μάθετε περισσότερους αλγοριθμους στο Linux αποσυμπιέστε το αρχείο http://www.antsight.com/zsl/rainbowcrack/rainbowcrack-1.2-src-algorithmpatch.zip στο καταλαγο του προγραμματος και μεταγλωττιστε ξανα . Θα μπορείτε έτσι να αναζητήσετε κωδικούς τα hash τον οποίων έχουν παραχθεί από τούς αλγόριθμους κρυπτογράφησης NTLM, MD2, MD4, και RIPED160. Η ιδέα πίσω από το πρόγραμμα RainbowCrack δεν είναι ιδιαίτερα πρωτότυπη . Υπάρχουν π.χ αρκετά προγράμματα που αναζητούν ξεχασμένους κωδικούς , ωστόσο χάρη στο χρόνο που χρειάζεται το RainbowCrack για να φέρει εις πέρας τη διαδικασία αναζήτησης ξεχώρισε από τα αντίστοιχα προγράμματα . Ο χρόνος ολοκλήρωσης μιας αναζήτησης του RainbowCrack εξαρτάται κύριος από το μέγεθος τη μνήμης RAM και την ταχύτητα του σκληρού δίσκου, και όχι τόσο από την ταχύτητα του κεντρικού επεξεργαστή. Είναι προφανές λοιπόν ότι ο βασικότερος περιορισμό του RainboeCrack είναι ο διαθέσιμος αποθηκευτικός χώρος . Για παράδειγμα, για ένα επταψήφιο κωδικό χρειάζονται έως και 133GB χώρου στο δίσκο. Για αντιμετωπιστεί αυτό το πρόβλημα ,το πρόγραμμα δημιουργεί τα λεγόμενα Rainbow Tables, μέσα στα οποία αποθηκεύονται τα Chain των αλγορίθμων . Πως παίρνετε τα LM Hash από τα Windows: Υπάρχουν αρκετοί τρόποι για να πετύχετε , καλύτερα να περιοριστείτε όμως στον εύκολο τρόπο . Μια πρακτική εφαρμογή αυτού είναι να ελέγχετε της ασφάλεια των κωδικών που έχουν επιλέξει οι χρηστές του τοπικού δικτύου, στο οποίο υποτίθεται πως είστε διαχειριστής . Κατεβάστε από το http://www.footus.net/fizzgig/pwdumo εργαλείο pwdump6 και αποσυμπιέστε το σε φάκελο. Βγείτε σε Command Prompt και δώσε pwdump-o fileout TARGET_IP, έτσι ώστε το πρόγραμμα να συνδεθεί με τον υπολογιστή με διεύθυνση TARGET_IP , να πάρει τα LM Hash και να τα αποθήκευση στο αρχείο με όνομα fileout. H διαδικασία δεν θα πάρει πάνω από μερικά λεπτά . Μετά το πέρας της εργασίας , ανοίξτε το αρχείο fileout με ένα txt editor και αντιγράψτε το LM Hash του χρήστη που σας ενδιαφέρει. Rainbow Tables . Για να λειτουργήσετε το RainbowCrack θα πρέπει να κατεβάσετε από το internet ή να δημιουργήσετε στο υπολογιστή σας τα αντίστοιχα Rainbow Tables . Πριν προχωρήσετε προτείνετε να επιλέξετε τα LM Hash που σας ενδιαφέρουν http://lasecwww.epfl.ch/~oechslin/projects/ophcrack/index.php'>http://lasecwww.epfl.ch/~oechslin/projects/ophcrack/index.php Εκεί μπορείτε να δώσετε το LM Hash που εξάγει με το pwdump6, ώστε να ελεγχθεί με βάση των Tables SSTIC04-2.7K (μεγέθους 1,1 GB) και έτσι να διαπιστώσετε αν είναι δυνατόν να ανακτηθεί ο κωδικό σας . Σε περίπτωση που αυτό είναι εφικτό, πιθανόν αποτελείται από χαρακτήρες που δεν ανήκουν στο σύνολο το οποίο καλύπτει το εν λόγω Table ή είναι μεγαλύτερος από το προβλεπόμενο μέγεθος . Και στις δυο περιπτώσεις θα πρέπει να πάρετε την κατάσταση στα χέρια σας , γνωρίζοντας βέβαια ότι ξεκινάτε από το μηδέν. Για να δημιουργήσετε τα Rainbow Tables είναι απαραίτητο να δίαθεται περισσότερο από ένα υπολογιστές αν και αυτό δεν είναι υποχρεωτικό ετσι ώστε να μειώσετε το χρόνο παραγωγής τους . Το πρόγραμμα που παράγει τα Rainbow Tables λέγεται rget και υπάρχει μέσα στο συμπιεσμένο αρχείο που που κατεβάσατε πριν . Η διαδικασία παραγωγής των Rainbow Tables είναι αρκετά δύσκολη και απαιτεί να γνωρίζεται βασικές γνώσεις κρυπτανάλυσης .Πριν προχορίσετε στη διαδικασία δημιουργίας τους διαβάστε τες στο http://www.antsight.com/zsl/rainbowcrack/rcracktutorial.htm μετά το τέλος της διαδικασίας εκτελέστε το πρόγραμμα rtsort, υποδεικνύοντας τον κατάλογο στον οποίο περιέχονται τα Rainbow Tables, έτσι ώστε το πρόγραμμα να κάνει γρηγορότερη τη διαδικασία αναζήτησης . Αν δεν θέλετε να μπειτε στην πολύπλοκη διαδικασία παράγωγης των Rainbow Tables , εναλλακτικά μπορείτε να τα κατεβάσετε ή να τα παραγγείλετε από τα έξεις site http:/rainbowtables.shmoo.com http://www.objectif-securite.ch/ophcrack htt://lasecwww.epfl.ch/~oechslin/projects/ophcrack\ http://passwordsecuritycenter.com/index.php? Πριν δοκιμάσετε να σπάσετε κάποιους κωδικούς καλό είναι να αποστείλετε το αντίστοιχο LM Hash στον τόπο http://lasecwww.epfl.ch/~oechslin/projects/ophcrack/index.php ώστε να δείτε πόσο εύκολο είναι να τους ανακτήσετε. Ηρθε λοιπόν ή ώρα να σπάσετε τον κωδικό σας. Δώστε από το Command Shell την εντολή *.rt-h TARGET_HASH και περιμένετε για το αποτέλεσμα. Τα Rainbow Tables που αποκτήσατε μπορείτε να τα χρησιμοποιήσετε και με άλλο πρόγραμμα που τα υποστηρίζουν , όπως το ophhcrack, το οποίο έχετε τη δυνατότητα να το κατεβάσετε από το http://ophcrack.sourceforge.net Δύστυχος δεν υπάρχει μια μοναδική αντιμετώπιση για το όλο ζήτημα. Το πληροφοριακά συστήματα είναι τρωτά σε πάρα πολλές μορφές επιθέσεων. Είναι απαραίτητο να ενεργοποιήσετε κάποιο προτόκολο επικοινωνίας που εμπλέκει ισχυρούς αλγόριθμους κρυπτογράφησης, όπως είναι NTLMv2 και KERBEROS , αντί για το απλό LM Hash. Aκομα χρειάζεται να ενεργοποιήσετε ισχυρά προτοκολα επικοινωνίας όπως είναι τα PAP,CHAP,MS-CHAP,MS-CHAPv 2KAI EAP. Σ ε περίπτωση που υπάρχει ανάγκη επικοινωνίας μεταξύ υπολογιστών χρησιμοποιήστε VPN,SSL,IPSc ,SMD.
arcofdescent Δημοσ. 24 Ιουλίου 2007 Δημοσ. 24 Ιουλίου 2007 Κατεβάζω τα rainbow tables απο το http:/rainbowtables.shmoo.com και δεν μου τα ανοιγει με το 7-zip τι να κανω?
michael92 Δημοσ. 24 Ιουλίου 2007 Δημοσ. 24 Ιουλίου 2007 Εγώ πιστεύω ότι αποτελεσματική μέθοδος είναι το Brute force.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.