Αλλάξτε την έξοδο του VPN ενώ ένα κατάστημα είναι ανοιχτό σε άλλη καρτέλα και το καλάθι συνήθως είναι ακόμη εκεί. Αυτό δεν είναι βλάβη του VPN· είναι το πρόγραμμα περιήγησης που κάνει ακριβώς αυτό που του είπαν. Το cookie το στέλνει το πρόγραμμα περιήγησης και μια νέα διαδρομή δικτύου δεν αλλάζει αυτό που αποθηκεύει. Πίσω από το «ο ιστότοπος με ξέρει ακόμη» κρύβονται τρεις διαφορετικές ερωτήσεις και η απάντηση εξαρτάται από το ποια ρωτάτε πραγματικά.

Τρεις ερωτήσεις, ένα σύμπτωμα

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

What you changedWhat it actually tests
VPN exit addressWhether the site treats a different network origin differently
Cookie jar for one siteWhether a stored identifier was doing the recognition
Browser profile or accountWhether identity, rather than storage, links the visits

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

Τι κουβαλάει πραγματικά ένα cookie

Η διαχείριση κατάστασης HTTP, όπως ορίζεται στο RFC 6265, είναι σκόπιμα απλή: ο διακομιστής ορίζει ένα όνομα και μια τιμή με εύρος και το πρόγραμμα περιήγησης τα επιστρέφει για αιτήματα που ταιριάζουν σε αυτό το εύρος. Η τιμή μπορεί να είναι αναγνωριστικό συνεδρίας, μια προτίμηση ή ένα αδιαφανές διακριτικό που ο διακομιστής αντιστοιχίζει σε εγγραφή καλαθιού. Πουθενά στον μηχανισμό δεν αναφέρεται η διεύθυνση του πελάτη.

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

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

Αποφασίστε τι μετράει η δοκιμή σας

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

curl -sS -c /tmp/jar.txt -b /tmp/jar.txt -o /dev/null -w '%{http_code}\n' https://shop.example/cart
curl -sS -c /tmp/jar.txt -b /tmp/jar.txt -o /dev/null -w '%{http_code}\n' --interface 198.51.100.44 https://shop.example/cart

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

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

Καθαρίστε τη σωστή κατάσταση, όχι το δίκτυο

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

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

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

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

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