Γιατί ο έλεγχος ταυτότητας κωδικού SOCKS5 ξεκινά με την έκδοση 1
Διακρίνετε τον χαιρετισμό SOCKS5 από το πεδίο έκδοσης στη δευτερεύουσα διαπραγμάτευση ονόματος χρήστη/κωδικού.
Ένας πελάτης SOCKS5 ξεκινά με την έκδοση 5 και στη συνέχεια στέλνει την έκδοση 1 κατά τον έλεγχο ταυτότητας κωδικού. Αυτό δεν είναι απαραίτητα υποβάθμιση ή λανθασμένος διακομιστής μεσολάβησης.
Η πρώτη ανταλλαγή διαπραγματεύεται τη μέθοδο ελέγχου ταυτότητας SOCKS5. Όταν επιλέγεται όνομα χρήστη/κωδικός, το RFC 1929 ορίζει ξεχωριστή δευτερεύουσα διαπραγμάτευση της οποίας το πεδίο έκδοσης είναι 0x01.
Αυτό το αίτημα ελέγχου ταυτότητας περιλαμβάνει μήκη και byte για το όνομα χρήστη και τον κωδικό. Ο διακομιστής επιστρέφει την έκδοση της δευτερεύουσας διαπραγμάτευσης και μια κατάσταση. Μόνο αφού ο έλεγχος ταυτότητας πετύχει ο πελάτης στέλνει το αίτημα προορισμού SOCKS5.
Κρατήστε τις δύο ανταλλαγές χωριστές όταν διαβάζετε ένα ίχνος ή υλοποιείτε πελάτη. Η επανάληψη 0x05 παντού επειδή η υπηρεσία ονομάζεται SOCKS5 παράγει το λανθασμένο μήνυμα ελέγχου ταυτότητας.
Μια επιτυχής κατάσταση κωδικού επίσης δεν σημαίνει ότι ο ζητούμενος προορισμός επιτρέπεται. Η επόμενη απάντηση SOCKS μπορεί ακόμη να απορρίψει αυτή τη σύνδεση.
Τέλος, αυτή η μέθοδος ονόματος χρήστη/κωδικού δεν κρυπτογραφεί τα διαπιστευτήριά της. Το byte έκδοσης προσδιορίζει μορφή μηνύματος, όχι κρυπτογραφημένη ή ισχυρότερη λειτουργία σύνδεσης.