Et tanca la sessió d’una botiga si canvies de servidor VPN?
Una adreça de sortida nova no buida el pot de galetes. Decideix primer si estàs provant el camí de xarxa, la sessió iniciada o les dades desades del lloc.
Canvia la sortida del VPN mentre una botiga és oberta en una altra pestanya i la cistella normalment encara hi és. Això no és una fallada del VPN; és el navegador fent exactament el que se li ha dit. La galeta l’envia el navegador, i un camí de xarxa nou no canvia el que el navegador desa. Darrere de «el lloc encara em coneix» s’hi amaguen tres preguntes diferents, i la resposta depèn de quina estàs fent de debò.
Tres preguntes, un símptoma
Primera: el lloc reconeix una galeta desada? Segona: reconeix un compte iniciat, que sobreviu independentment de qualsevol galeta individual? Tercera: reconeix alguna cosa del navegador o del dispositiu en lloc de l’estat desat? Cadascuna té la seva prova i el seu remei.
| What you changed | What it actually tests |
|---|---|
| VPN exit address | Whether the site treats a different network origin differently |
| Cookie jar for one site | Whether a stored identifier was doing the recognition |
| Browser profile or account | Whether identity, rather than storage, links the visits |
La major part de la confusió ve de canviar la primera i esperar que la segona segueixi. Una adreça de xarxa i un magatzem del navegador són sistemes separats que, casualment, fa servir la mateixa pàgina.
Què porta realment una galeta
La gestió d’estat HTTP, especificada a RFC 6265, és deliberadament simple: el servidor defineix un nom i un valor amb un abast, i el navegador els retorna per a les peticions que coincideixen amb aquest abast. El valor pot ser un identificador de sessió, una preferència o un testimoni opac que el servidor associa a un registre de cistella. Enlloc del mecanisme no es menciona l’adreça del client.
Aquest disseny és el motiu pel qual els inicis de sessió i les cistelles normals sobreviuen a un canvi de xarxa, i també el motiu pel qual hi sobreviuen els rastrejadors. El mateix mecanisme serveix per a tots dos propòsits i no els distingeix. No hi ha cap camp al protocol per a l’adreça del client, així que una sortida nova no té res a invalidar. Un lloc que volgués lligar una galeta a un origen de xarxa hauria d’afegir aquesta lògica ell mateix.
Quan un lloc retorna una galeta, el servidor busca el registre al qual apunta aquest valor. Canviar la ruta que ha seguit la petició no canvia aquesta cerca, i aquesta és tota l’explicació de l’observació de la cistella de la compra.
Decideix què mesura la teva prova
Abans de canviar res, apunta l’estat des del qual comences: quin perfil de navegador, quin compte, quines dades del lloc, quin camí de xarxa. Després canvia exactament un d’aquests i observa. Una prova que canvia alhora l’adreça de sortida i el perfil del navegador no demostra res sobre cap dels dos.
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/cartTotes dues ordres reutilitzen el mateix fitxer de galetes, i la segona força una adreça d’origen local diferent allà on l’amfitrió ho permet. La resposta de la cistella és la mateixa en tots dos casos perquè el servidor mai no ha vist una identitat de client diferent, només un camí diferent. Aquest és el mecanisme en una parella de peticions reproduïble.
Si l’objectiu és veure si el lloc et reconeix sense estat desat, esborra les dades d’aquell lloc i repeteix. Si encara et reconeix, els sospitosos següents són el compte iniciat, un enllaç que hagis seguit o característiques del navegador, més que no pas una galeta.
Esborra l’estat correcte, no la xarxa
Eliminar l’emmagatzematge d’un sol lloc pertoca als controls propis del navegador, i sovint et tancarà la sessió o reiniciarà preferències com a efecte secundari. No esborra el compte ni els registres que el servei ja té; per a això cal el procediment propi del servei.
Les restriccions entre llocs aborden una altra part del problema. Els navegadors poden bloquejar o dividir l’emmagatzematge que els serveis incrustats compartirien entre llocs, mentre que un inici de sessió de primera part continua funcionant. Per tant, un inici de sessió correcte no és prova que el rastrejament entre llocs funcioni.
Les finestres privades són una altra eina amb un abast més estret del que la gent espera. Els llocs encara poden definir galetes durant la sessió, i un inici de sessió encara identifica el compte. És acabar la sessió privada el que descarta l’estat temporal, cosa que vol dir tancar totes les finestres privades i no una sola pestanya.
Finalment, tracta la identificació per empremta com una possibilitat i no com la primera explicació. Les característiques del dispositiu i del navegador poden lligar visites sense cap galeta desada, i esborrar l’emmagatzematge no les tocarà. Comprova primer les causes simples, després amplia la investigació i pren nota de quin estat has canviat perquè la propera comparació sigui significativa.