Καταγράψτε σήμερα μια κρυπτογραφημένη σήραγγα, κλέψτε του χρόνου το μακροπρόθεσμο ιδιωτικό κλειδί του διακομιστή και προσπαθήστε να αποκρυπτογραφήσετε την καταγραφή. Η μπροστινή μυστικότητα είναι η ιδιότητα που λέει ότι το κλεμμένο κλειδί δεν θα αρκεί από μόνο του. Είναι μια δήλωση για καταγεγραμμένες συνεδρίες και συγκεκριμένα μυστικά, όχι μια γενική υπόσχεση ότι η σήραγγα ήταν ασφαλής. Το σωστό εύρος είναι αυτό που κάνει τον όρο χρήσιμο.

Το ερώτημα αφορά μια καταγραφή, όχι τη ζωντανή συνεδρία

Το μακροπρόθεσμο κλειδί αναγνωρίζει το άκρο και υπογράφει τη χειραψία. Τα κλειδιά συνεδρίας κρυπτογραφούν την πραγματική κίνηση, και σε σχεδίαση μπροστινής μυστικότητας παράγονται από φρέσκο υλικό ανταλλαγής κλειδιών που δημιουργούν και οι δύο πλευρές και μετά το απορρίπτουν. Ένας επιτιθέμενος που έχει μόνο το μακροπρόθεσμο κλειδί δεν μπορεί να ανακατασκευάσει αυτές τις απορριφθείσες τιμές. Ένας επιτιθέμενος που έχει ζωντανή κατάσταση συνεδρίας μπορεί ακόμη, γι' αυτό η εγγύηση αφορά το παρελθόν και όχι το παρόν.

Ο ισχυρισμός είναι υπό όρους: ισχύει μόνο αν τα εφήμερα μυστικά καταστράφηκαν πραγματικά και το πρωτόκολλο είναι αυτό που νομίζετε. Μια μικτή ανάπτυξη μπορεί να τον ικανοποιεί σε μια σήραγγα και να αποτυγχάνει σε άλλη.

Ένα μυστικό δεν πρέπει να ξαναχτίζει τα άλλα

Ελέγξτε τη διαπραγματευμένη λειτουργία και όχι τη σελίδα μάρκετινγκ. Η έξοδος της χειραψίας ονομάζει την ανταλλαγή κλειδιών και την έκδοση του πρωτοκόλλου.

openssl s_client -connect vpn.example.com:443 -tls1_3 -brief
swanctl --list-sas

Η σύνοψη του s_client δείχνει την έκδοση TLS και την ομάδα ανταλλαγής κλειδιών, και μια εφήμερη ομάδα είναι το ορατό σημάδι συμφωνίας κλειδιών με μπροστινή μυστικότητα. Η λίστα του swanctl δείχνει συσχετίσεις IKE και CHILD με τα χρονόμετρα ανανέωσης κλειδιών τους, ώστε να βλέπετε αν η ανάπτυξη ανανεώνει κλειδιά βάσει χρονοδιαγράμματος. Μια στατική ανταλλαγή κλειδιών RSA ή μια παλιά λειτουργία συμβατότητας χάνει την ιδιότητα ανεξάρτητα από το όνομα του κρυπταλγόριθμου. Καταγράψτε τη λειτουργία που παρατηρήσατε και όχι αυτήν που διαφήμιζε ο προμηθευτής.

Η ανανέωση κλειδιών δεν είναι αυτόματα μπροστινή μυστικότητα

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

Η ίδια σύγχυση εμφανίζεται με τα ονόματα κρυπταλγόριθμων: ένας σύγχρονος κρυπταλγόριθμος δεν λέει τίποτα για το πώς έφτασε το κλειδί του.

Τι παραμένει ορατό μετά την εγγύηση

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

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

Σχετικά άρθρα