Έχω ξαναπατήσει σε αυτό το λάκκο. Έχω ξεχάσει πώς να ασκούμαι, αλλά εξακολουθώ να θυμάμαι αυτήν την αρχή. Εξηγήστε χονδρικά:
Το πακέτο εγκατάστασης του προγράμματος περιήγησης αποθηκεύει ορισμένα από τα πιστοποιητικά ρίζας (δημόσια κλειδιά) που εμπιστεύεται.
Για λόγους ασφαλείας, οι εκδότες πιστοποιητικών συνήθως αποθηκεύουν τα ιδιωτικά κλειδιά που αντιστοιχούν σε αυτά τα πιστοποιητικά ρίζας σε ένα απολύτως αποσυνδεδεμένο θησαυροφυλάκιο. Αυτά τα ιδιωτικά κλειδιά ρίζας χρησιμοποιούνται στο θησαυροφυλάκιο για την έκδοση ορισμένων "ενδιάμεσων" πιστοποιητικών και τα ιδιωτικά κλειδιά αυτών των ενδιάμεσων πιστοποιητικών έχουν την εξουσιοδότηση να εκδίδουν το πιστοποιητικό επόμενου επιπέδου. Αυτά τα ενδιάμεσα ιδιωτικά κλειδιά εγκαθίστανται σε διαδικτυακούς διακομιστές για να κερδίσουν χρήματα εκδίδοντας πιστοποιητικά ιστότοπου. Μόλις παραβιαστούν αυτοί οι διακομιστές, ο εκδότης μπορεί να εκδώσει μια εντολή ανάκλησης χρησιμοποιώντας το φυσικά απομονωμένο ιδιωτικό κλειδί πιστοποιητικού ρίζας στο θάλαμο για να εξαλείψει την αξιοπιστία αυτών των ενδιάμεσων πιστοποιητικών χωρίς να χρειάζεται να μην εμπιστεύεται εντελώς το πιστοποιητικό ρίζας του εκδότη. Υπογράψτε ένα νέο πιστοποιητικό ενδιάμεσης έκδοσης και θα είστε ένας καλός άνθρωπος που μπορεί να βγάλει χρήματα.
Εδώ έρχεται η ερώτηση.
Το πρόγραμμα περιήγησης αναγνωρίζει μόνο το πιστοποιητικό ρίζας. Για την πιστοποίηση του ενδιάμεσου πιστοποιητικού, εσείς (ο ιστότοπος) πρέπει να εκδώσετε το δικό σας πιστοποιητικό.
Ένας σωστά διαμορφωμένος ιστότοπος HTTPS θα πρέπει να περιλαμβάνει την πλήρη αλυσίδα πιστοποιητικών στο πιστοποιητικό. Για παράδειγμα, χρησιμοποιήστε την εντολή openssl s_client -connect www.wosign.com:443 για να δείτε τη διαμόρφωση του ιστότοπου του Wosign. Το υπόλοιπο περιεχόμενο μπορεί να αγνοηθεί, απλώς κοιτάξτε την παράγραφο Αλυσίδα πιστοποιητικών: --- Αλυσίδα πιστοποιητικών 0 s:/1.3.6.1.4.1.311.60.2.1.3=CN/1.3.6.1.4.1.311.60.2.1.2=Guangdong/1.3.6.1.4.1.311.60.2.1.1=Shenzhen/businessCategory=Ιδιωτικό Οργανισμός/σειριακόςΑριθμός=440301103308619/C=CN/ST=\xE5\xB9\xBF\xE4\xB8\x9C\xE7\x9C\x81/L=\xE6\xB7\xB1\xE5\x9C\xB3\xE5\xB8\x82/postalCode=518067/street=\xE6\xB7\xB1\ xE5\x9C\xB3\xE5\xB8\x82\xE5\x8D\x97\xE5\xB1\xB1\xE5\x8C\xBA\xE5\x8D\x97\xE6\xB5\xB7\xE5\xA4\xA7\xE9\x81\x931057\xE5\x8F\xB7\xE7\xA7\x91\xE6\x8A\x80\xE5\xA4\xA7\xE5\ x8E\xA6\xE4\xBA\x8C\xE6\x9C\x9FA\xE6\xA0\x8B502#/O=WoSign\xE6\xB2\x83\xE9\x80\x9A\xE7\x94\xB5\xE5\xAD\x90\xE8\xAE\xA4\xE8\xAF\x81\xE6\x9C\x8D\xE5\x8A\xA1\xE6\x9C\x89\ xE9\x99\x90\xE5\x85\xAC\xE5\x8F\xB8/CN=www.wosign.com i:/C=CN/O=WoSign CA Limited/CN=WoSign Class 4 EV Server CA 1 s:/C=CN/O=WoSign CA Limited/CN=WoSign Class 4 EV Server CA i:/C=CN/O=WoSign CA Limited/CN=Αρχή πιστοποίησης της WoSign 2 s:/C=CN/O=WoSign CA Limited/CN=Αρχή πιστοποίησης της WoSign i:/C=IL/O=StartCom Ltd./OU=Ασφαλής υπογραφή ψηφιακού πιστοποιητικού/CN=Αρχή πιστοποίησης StartCom ---
0, 1 και 2 είναι οι σειριακοί αριθμοί κάθε επιπέδου πιστοποιητικού στην αλυσίδα πιστοποιητικών. 0 είναι το πιστοποιητικό που χρησιμοποιείται από τον ιστότοπο που πρόκειται να επαληθευτεί. Το CN του θα πρέπει να αντιστοιχεί στο όνομα τομέα του ιστότοπου. Μετά από κάθε σειριακό αριθμό, η γραμμή που ξεκινά με s αναφέρεται στο πιστοποιητικό και η γραμμή που ξεκινά με i αναφέρεται στο ποιος εξέδωσε το πιστοποιητικό.
Μπορεί να φανεί ότι το CN του 0 περιέχει ένα ύποπτο κινεζικό όνομα τομέα και ένα αγγλικό www.wosign.com τομέα. Εκδίδεται από την WoSign CA Limited/CN=WoSign Class 4 EV Server CA.
Ένα πιστοποιητικό 1 είναι ο εκδότης του 0. 1 εκδίδεται από άλλο πιστοποιητικό, την Αρχή Πιστοποίησης της WoSign. Ας δούμε το επόμενο επίπεδο, 2. Λέει ότι η Αρχή Πιστοποίησης του WoSign εκδίδεται από την StartCom (χαχα, αποδεικνύεται ότι είναι υπεργολάβος!). )
Αφού λοιπόν το κοιτάξει σε τέτοιο επίπεδο, το πρόγραμμα περιήγησης λέει, ω, ξέρω τον εκδότη του 2, και αναφέρεται στο πακέτο εγκατάστασης, StartCom. Σωστή υπογραφή και επικύρωση, γι' αυτό εμπιστευτείτε το 2. Τότε θα πρέπει επίσης να εμπιστευτείτε το 1 που εκδίδεται από το 2 και το 0 που εκδίδεται από το 1. Έτσι, αυτός ο ιστότοπος μπορεί να είναι αξιόπιστος.
--
Ωστόσο, εάν ο ιστότοπος έχει ρυθμιστεί ώστε να περιέχει μόνο τον εαυτό του στο αρχείο CRT και όχι μια αλυσίδα πιστοποιητικών που είναι αρκετά πλήρης ώστε να επαληθεύεται από τα ενσωματωμένα δεδομένα του προγράμματος περιήγησης, ενδέχεται να απορριφθεί από το πρόγραμμα περιήγησης. Όπως αυτό που openssl s_client -connect touko.moe:443 --- Αλυσίδα πιστοποιητικών 0 s:/CN=touko.moe i:/C=CN/O=WoSign CA Limited/CN=WoSign CA Δωρεάν πιστοποιητικό SSL G2 --- Υπάρχει μόνο 0 σε μία ομάδα. Περιγραφή Το touko.moe στη σειρά s εκδίδεται από το WoSign CA Free SSL Certificate G2 στη γραμμή i. Έχει φύγει.
Αυτό είναι το πιο εκπληκτικό πράγμα σχετικά με αυτήν την παγίδα: δεν είναι πάντα αλήθεια εάν το πρόγραμμα περιήγησης αποτυγχάνει να επαληθεύσει σε αυτό το σημείο. Υπάρχουν 2 περιπτώσεις: Α. Δεν το έχω δει ποτέ αυτό από τότε που εγκαταστάθηκε το πρόγραμμα περιήγησης. Τότε η επικύρωση αποτυγχάνει. Β. Εάν το πρόγραμμα περιήγησης έχει δει και επαληθεύσει το i στο παρελθόν, τότε η επαλήθευση θα είναι επιτυχής.
Συνήθως ο διαχειριστής θα μεταβεί στον ιστότοπο https του εκδότη του πιστοποιητικού για να αγοράσει το πιστοποιητικό και το πρόγραμμα περιήγησης θα το επαληθεύσει και, στη συνέχεια, θα αποθηκεύσει προσωρινά όλα τα ενδιάμεσα πιστοποιητικά που επαληθεύτηκαν με επιτυχία, εξοικονομώντας χρόνο στο μέλλον. Όταν ο διαχειριστής (κατά λάθος) διαμόρφωσε τον ιστότοπό του και πήγε να περιηγηθεί στη δοκιμή, δεν θα αντιμετώπιζε κανένα απολύτως πρόβλημα. Επειδή το πρόγραμμα περιήγησής του αναγνωρίζει ήδη αυτό το ενδιάμεσο πιστοποιητικό.
Ωστόσο, πολλοί χρήστες ενδέχεται να μην έχουν επισκεφτεί άλλους σωστά διαμορφωμένους ιστότοπους που εκδίδονται από αυτό το ενδιάμεσο πιστοποιητικό. Επομένως, η επικύρωση αποτυγχάνει επειδή δεν μπορεί να βρει έναν αξιόπιστο εκδότη.
Είναι συγκρίσιμο με τον έλεγχο εκπομπών καυσαερίων των πετρελαιοκίνητων οχημάτων Volkswagen. Όλα ήταν καλά όταν ελέγχθηκαν. Μόλις βγουν έξω, βάζουν δηλητήριο.
EDIT:Πώς να διορθώσετε ...... Είναι πιθανώς να προσθέσετε τη ρύθμιση SSLCertificateChainFile κατά τη διαμόρφωση του διακομιστή και να χρησιμοποιήσετε το αρχείο πακέτου που παρέχεται από τον ιστότοπο του εκδότη του πιστοποιητικού (το αρχείο περιέχει μια δέσμη ενδιάμεσων πιστοποιητικών για τη δημιουργία της σύνδεσης μεταξύ του πιστοποιητικού σας και ενός πιστοποιητικού υψηλής εμπιστοσύνης).
|