Ganti keluar VPN saat sebuah toko terbuka di tab lain, dan keranjang biasanya masih ada. Itu bukan kegagalan VPN; itu peramban yang melakukan persis seperti yang diperintahkan. Cookie dikirim oleh peramban, dan jalur jaringan baru tidak mengubah apa yang disimpan peramban. Tiga pertanyaan berbeda tersembunyi di balik «situs masih mengenal saya», dan jawabannya bergantung pada mana yang benar-benar Anda tanyakan.

Tiga pertanyaan, satu gejala

Pertama: apakah situs mengenali cookie yang tersimpan? Kedua: apakah ia mengenali akun yang sudah masuk, yang bertahan terlepas dari cookie mana pun? Ketiga: apakah ia mengenali sesuatu tentang peramban atau perangkat, bukan keadaan tersimpan? Masing-masing punya ujian dan penawarnya sendiri.

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

Sebagian besar kebingungan muncul dari mengubah yang pertama lalu berharap yang kedua menyusul. Alamat jaringan dan penyimpanan peramban adalah dua sistem terpisah yang kebetulan dipakai halaman yang sama.

Apa yang sebenarnya dibawa cookie

Manajemen keadaan HTTP, seperti ditetapkan dalam RFC 6265, sengaja dibuat sederhana: server menetapkan nama dan nilai dengan cakupan, dan peramban mengembalikannya untuk permintaan yang cocok dengan cakupan itu. Nilainya bisa berupa pengenal sesi, preferensi, atau token buram yang dipetakan server ke catatan keranjang. Tidak ada bagian mekanisme ini yang menyebut alamat klien.

Rancangan itulah sebabnya login dan keranjang biasa bertahan melewati perubahan jaringan, dan juga sebabnya mereka bertahan untuk pelacak. Mekanisme yang sama melayani kedua tujuan dan tidak membedakannya. Tidak ada bidang dalam protokol untuk alamat klien, jadi tidak ada yang bisa dibatalkan oleh keluar baru. Situs yang ingin mengikat cookie ke asal jaringan harus menambahkan logika itu sendiri.

Ketika situs mengembalikan cookie, server mencari catatan yang ditunjuk nilai itu. Mengubah rute yang ditempuh permintaan tidak mengubah pencarian itu, dan itulah seluruh penjelasan atas pengamatan keranjang belanja.

Tentukan apa yang diukur ujian Anda

Sebelum mengubah apa pun, tuliskan keadaan awal Anda: profil peramban mana, akun mana, data situs mana, jalur jaringan mana. Lalu ubah tepat satu di antaranya dan amati. Ujian yang mengubah alamat keluar dan profil peramban sekaligus tidak membuktikan apa pun tentang keduanya.

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

Kedua perintah memakai ulang berkas cookie yang sama, dan yang kedua memaksa alamat sumber lokal berbeda di tempat hos mengizinkannya. Respons keranjang sama dalam kedua kasus karena server tidak pernah melihat identitas klien berbeda, hanya jalur berbeda. Itulah mekanismenya dalam satu pasangan permintaan yang dapat diulang.

Jika tujuannya melihat apakah situs mengenali Anda tanpa keadaan tersimpan, hapus data situs itu lalu ulangi. Jika situs masih mengenali Anda, tersangka berikutnya adalah akun yang sudah masuk, tautan yang Anda ikuti, atau ciri peramban, bukan cookie.

Hapus keadaan yang tepat, bukan jaringannya

Menghapus penyimpanan satu situs termasuk kendali peramban itu sendiri, dan sering kali akan mengeluarkan Anda atau mengatur ulang preferensi sebagai efek samping. Itu tidak menghapus akun atau catatan yang sudah dipegang layanan; semuanya memerlukan proses layanan itu sendiri.

Pembatasan antar-situs menangani bagian lain dari masalah. Peramban dapat memblokir atau memisahkan penyimpanan yang seharusnya dibagi layanan tersemat antar situs, sementara login pihak pertama tetap berfungsi. Karena itu login yang berhasil bukan bukti bahwa pelacakan antar-situs berjalan.

Jendela privat adalah alat lain dengan cakupan lebih sempit daripada yang orang duga. Situs masih dapat menetapkan cookie selama sesi, dan login masih mengenali akun. Mengakhiri sesi privat itulah yang membuang keadaan sementara, yang berarti menutup semua jendela privat, bukan satu tab.

Terakhir, perlakukan identifikasi lewat sidik jari sebagai kemungkinan, bukan penjelasan pertama. Ciri perangkat dan peramban dapat menautkan kunjungan tanpa cookie tersimpan, dan menghapus penyimpanan tidak akan menyentuhnya. Periksa dulu penyebab sederhana, lalu perluas penyelidikan, dan catat keadaan mana yang Anda ubah agar perbandingan berikutnya bermakna.

Artikel terkait