Změňte výstup VPN, zatímco je obchod otevřený v jiné kartě, a košík tam obvykle pořád je. To není porucha VPN; to prohlížeč dělá přesně to, co mu bylo řečeno. Cookie odesílá prohlížeč a nová síťová cesta nemění to, co prohlížeč ukládá. Za větou „web mě pořád zná“ se skrývají tři různé otázky a odpověď závisí na tom, kterou z nich vlastně kladete.

Tři otázky, jeden příznak

Za prvé: rozpoznává web uloženou cookie? Za druhé: rozpoznává přihlášený účet, který přetrvává nezávisle na jakékoli jednotlivé cookie? Za třetí: rozpoznává něco o prohlížeči nebo zařízení, a ne uložený stav? Každá má svůj test a svůj lék.

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

Většina zmatku vzniká tím, že změníte první a čekáte, že druhé bude následovat. Síťová adresa a úložiště prohlížeče jsou dva oddělené systémy, které náhodou používá stejná stránka.

Co cookie skutečně nese

Správa stavu HTTP, jak ji určuje RFC 6265, je záměrně jednoduchá: server nastaví jméno a hodnotu s rozsahem a prohlížeč je vrací u požadavků, které tomuto rozsahu odpovídají. Hodnotou může být identifikátor relace, předvolba nebo neprůhledný token, který server mapuje na záznam košíku. V mechanismu není nikde zmíněna adresa klienta.

Tento návrh je důvod, proč běžná přihlášení a košíky přežijí změnu sítě, a také proč ji přežijí u trackerů. Stejný mechanismus slouží oběma účelům a nerozlišuje je. V protokolu není pole pro adresu klienta, takže nový výstup nemá co zneplatnit. Web, který by chtěl cookie svázat se síťovým původem, by si musel tuto logiku přidat sám.

Když web vrátí cookie, server vyhledá záznam, na který tato hodnota ukazuje. Změna trasy, kterou požadavek prošel, toto vyhledání nemění, a to je celé vysvětlení pozorování s nákupním košíkem.

Rozhodněte, co váš test měří

Než cokoli změníte, zapište stav, ze kterého začínáte: který profil prohlížeče, který účet, která data webu, která síťová cesta. Potom změňte právě jedno z nich a pozorujte. Test, který mění současně výstupní adresu i profil prohlížeče, neprokazuje nic o ani jednom z nich.

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

Oba příkazy používají stejný soubor cookies a druhý vynucuje jinou místní zdrojovou adresu, kde to hostitel dovolí. Odpověď košíku je v obou případech stejná, protože server nikdy neviděl jinou identitu klienta, jen jinou cestu. To je mechanismus v jedné opakovatelné dvojici požadavků.

Pokud je cílem zjistit, zda vás web rozpozná bez uloženého stavu, vymažte data toho webu a opakujte. Pokud vás stále rozpoznává, dalšími podezřelými jsou přihlášený účet, odkaz, který jste sledovali, nebo vlastnosti prohlížeče, a ne cookie.

Vymažte správný stav, ne síť

Odstranění úložiště jednoho webu patří do vlastních ovládacích prvků prohlížeče a často vás odhlásí nebo resetuje předvolby jako vedlejší účinek. Nemaže účet ani záznamy, které služba už vede; ty potřebují vlastní postup služby.

Omezení mezi weby řeší jinou část problému. Prohlížeče mohou blokovat nebo rozdělovat úložiště, které by vložené služby jinak sdílely mezi weby, zatímco přihlášení z první strany funguje dál. Úspěšné přihlášení tedy není důkazem, že sledování mezi weby funguje.

Soukromá okna jsou další nástroj s užším rozsahem, než lidé čekají. Weby mohou během relace stále nastavovat cookies a přihlášení stále identifikuje účet. Právě ukončení soukromé relace zahodí dočasný stav, což znamená zavřít všechna soukromá okna, ne jednu kartu.

Nakonec berte rozpoznávání podle otisku jako možnost, ne jako první vysvětlení. Vlastnosti zařízení a prohlížeče mohou propojit návštěvy bez jakékoli uložené cookie a vymazání úložiště se jich nedotkne. Nejprve prověřte jednoduché příčiny, potom vyšetřování rozšiřte a poznamenejte si, který stav jste změnili, aby další srovnání mělo smysl.

Související články