Proč profily, kontejnery a izolace stránek rozhodují o soukromí
Moderní prohlížeče nejsou pouze „okna do webu“. Jsou to složité sandboxované platformy, jejichž architektura přímo ovlivňuje, kolik o vás mohou weby zjistit, jak snadno lze spojovat vaše aktivity napříč službami a jaké škody může způsobit kompromitace jedné záložky. Klíčové koncepty – více profilů, kontejnery (izolované „cookie sklady“) a izolace stránek (procesová i datová) – tvoří základ obrany proti sledování, krádeži relací a bočním kanálům. Tento článek vysvětluje principy, rozdíly, implementace v hlavních prohlížečích a doporučení pro jednotlivce i firmy.
Modely hrozeb a cíle ochrany
- Profilování napříč weby: reklamní a analytické sítě spojují identitu a chování.
- Únik nebo krádež relace: zneužití cookies/úložiště k převzetí účtu.
- Boční kanály: načítání zdrojů přes stejný proces/úložiště (history sniffing, cache probing).
- Cross-tenant rizika: míchání pracovních a osobních kontextů (SSO, jednotné cookies).
- Snížení entropie pro fingerprinting: konzistentní izolace a minimalismus dat.
Prohlížečové profily: koncept a architektura
Profil je samostatný pracovní prostor prohlížeče: vlastní cookies, LocalStorage/IndexedDB, historii, rozšíření, certifikáty, klíčenky a politiky. Profily se navzájem nevidí a mohou být spuštěny paralelně.
- Výhody: pevná hranice mezi identitami (práce/osobní/test), méně „přelévaní“ cookies, menší riziko cross-site korelace.
- Nevýhody: správa více instancí, duplicitní rozšíření, vyšší spotřeba paměti.
- Případy použití: oddělení cloud tenantů, administrátorské účty, A/B testování s různými politikami soukromí.
Kontejnery (izolované „cookie sklady“): jemnozrnná izolace v rámci jednoho profilu
Kontejner (např. Multi-Account Containers) vytváří samostatný prostor pro cookies a další webová úložiště pro vybranou množinu domén. Umožňuje mít současně přihlášení do stejných služeb (např. dva e-maily) bez míchání stavů.
- Mechanika: každému kontejneru je přiřazen izolovaný cookie store, izolované storage a často i barevné označení záložek pro lepší uživatelskou zkušenost.
- Výhody: minimální tření při přepínání identit, lepší kontrola referer a third-party vložek (sociální widgety v samostatném kontejneru).
- Omezení: ne všechna rozšíření respektují kontejnery stejně; síťová vrstva může zůstat společná (vyžaduje další opatření).
Izolace stránek: procesy, paměť a hranice mezi původy
Site Isolation prosazuje pravidlo, že rozdílné site (obvykle eTLD+1 + schéma + port) běží v oddělených procesech. Tím se snižuje riziko bočních kanálů a zvyšuje odolnost vůči chybám typu Spectre.
- Procesová izolace: každý site (a často i cross-site iframe) v samostatném procesu s vlastním sandboxem.
- Partitioning stavu: cache, cookies, storage, service workeři a síťový stav se váží na top-level site (případně na double keying s prvkem embeddujícího kontextu).
- Přínosy: obtížnější překročení sandboxu, méně sdílení cache, nižší účinnost pixelů a třetích stran při korelaci.
Prvky izolace stavu: cookies, cache a storage
- Cookies: atributy
SameSitea partitioning třetích stran (oddělené „krabičky“ pro každého embeddera). - Cache a síťový stav: Network State Partitioning – oddělení DNS cache, přerušených spojení, HSTS a TLS session ticketů podle top-level site.
- Storage: Storage Partitioning – LocalStorage/IndexedDB/Service Worker scope vázaný na kontext shora (zabraňuje „supercookies“ přes sdílená úložiště).
- Fenced Frames a podobné mechanismy: bezpečnější embedování bez sdílení identifikátorů.
Profily vs. kontejnery vs. čisté okno: co kdy zvolit
| Potřeba | Nejlepší řešení | Důvod |
|---|---|---|
| Přísné oddělení práce a soukromí | Samostatné profily | Oddělená rozšíření, klíče, politika, historie |
| Paralelní přihlášení do stejného webu | Kontejnery | Rychlé přepínání, izolované cookies na úrovni domén |
| Jednorázová „čistá“ relace | Soukromé okno | Ephemerální stav, bez prolévání historie |
| Obrana proti bočním kanálům | Site/Process Isolation | Oddělené procesy a síťové stavy |
Konfigurace a doporučená nastavení (prohlížeče)
- Firefox: víceprofilový spouštěč, Multi-Account Containers, Total Cookie Protection (partitioning), Enhanced Tracking Protection; volitelně First-Party Isolation pro přísnější rozdělení.
- Chromium/Chrome/Edge: více profilů s oddělenými politikami; Site Isolation ve výchozím nastavení, partitioning storage a omezení třetích stran; doporučené
SameSite=Lax/Stricta pravidla pro třetí strany. - Safari: přísná prevence trackerů (ITP), izolace stavu a silná výchozí omezení třetích stran.
Praktické vzory pro jednotlivce
- Minimálně dva profily: „Práce“ (firemní SSO, rozšíření, VPN certifikáty) a „Soukromí“ (bez účtů, minimum rozšíření).
- Kontejnery pro velké platformy: sociální sítě, e-mail a cloud v oddělených kontejnerech; externí odkazy otevírat mimo „osobní“ kontejnery.
- Soukromá okna pro rizikové úkony: dočasná přihlášení, citlivé vyhledávání, testování bez vlivu na historii.
- Minimalismus rozšíření: méně je více; rozšíření mají přístup ke stránkám a mohou snižovat soukromí.
Podnikové politiky a řízení rizika
- Standardizované profily: centrálně spravované profily s politikami (povolená rozšíření, DLP, certifikáty, nastavení cookie).
- Tenant a účetní izolace: šablony profilů pro jednotlivé klienty/projekty; povinné využití kontejnerů pro sociální sítě a webmail.
- SSO a prohlížeč: omezit remember me, vynucovat FIDO2/WebAuthn, zkracovat životnost relací.
- Logování a forenzika: korelovat události s profilem/kontextem; zakázat „soukromé“ profily pro administrátory.
Technické detaily: hranice, které nejčastěji selhávají
- Únik URL parametrů: i s izolací cookies mohou
utm_*a identifikátory v URL korelovat identity; doporučuje se automatické ořezávání parametrů. - Shared workers a BroadcastChannel: nutné respektovat partitioning podle top-level site; kontrola kompatibility.
- Cache a Service Worker scope: správné scopy a registrace, aby se zabránilo neočekávanému sdílení.
- Schémata a subdomény: konzistentní používání eTLD+1 a explicitní separace (např.
auth.example.comvs.app.example.com).
Minimalismus dat na straně aplikace
- SameSite a Secure cookies:
HttpOnly,Secure,SameSite=Strict/Laxjako výchozí;Path/Domainminimalizovat. - Rotace identifikátorů: krátké TTL pro session a refresh tokeny; vázání na kontext (device binding).
- Redukce třetích stran: načítat zdroje z vlastní domény; přesun měření na server s respektem k souhlasu.
- Privacy by default: deaktivovat volitelné trackery bez souhlasu; implementovat storage partitioning-safe strategie.
Testování a audit izolace
- Matice domén × kontejnerů: ověřit, že přihlášení do A v kontejneru 1 není viditelné v kontejneru 2.
- Kontrola cache a storage: nástroje vývojáře – sekce Application/Storage; ověření oddělení podle top-level site.
- SSO scénáře: federované přihlášení (OpenID/OAuth/SAML) – testy v paralelních profilech a v soukromých oknech.
- Rozšíření: audit oprávnění, omezení běhu na vybrané domény, testování interakce s kontejnery.
Výkonnostní dopady a optimalizace
- Více procesů ≠ vždy pomalejší: site isolation zvyšuje bezpečnost, ale prohlížeče optimalizují sdílení knihoven a plánování.
- Profily a RAM: aktivní pouze nezbytné profily; zastavování pozadí a uspávání záložek.
- CDN a partitioning: dopady na cache hit-rate – zvážit first-party hosting kritických zdrojů.
Typické scénáře a doporučená nastavení
- Práce na dálku: profil „Práce“ (FIDO2 povinné, minimum rozšíření), profil „Osobní“ (bez SSO k práci), kontejnery pro sociální sítě.
- Admin účty: samostatný profil bez rozšíření, povinný soukromý režim pro přístup do konzol, krátké TTL relací.
- Marketing/analytika: oddělený profil s explicitním souhlasem pro testovací nástroje; žádné třetí strany v produkčním profilu.
Checklist soukromí v prohlížeči
- Mám minimálně dva oddělené profily a používám je konzistentně?
- Jsou velké platformy v samostatných kontejnerech a odkazy se neotvírají v „nesprávném“ kontextu?
- Běží site/process isolation a je zapnutý partitioning cookies, cache a storage?
- Používám FIDO2/WebAuthn a krátké relace pro citlivé účty?
- Mám minimální počet rozšíření s omezeným rozsahem oprávnění?
Měření zralosti (KPI)
- Podíl izolovaných přihlášení: procento citlivých služeb v samostatných profilech/kontejnerech.
- Incidenty úniku relace: počet detekovaných cross-context cookie/Storage úniků.
- Cache hit-rate vs. soukromí: sledovat dopady partitioningu a optimalizovat hosting zdrojů.
- Adopce FIDO2: procento účtů bez SMS-OTP.
Limity a budoucí vývoj
- Kompatibilita: některé starší aplikace počítají se sdíleným stavem – vyžadují refaktor.
- Standardizace partitioningu: konsolidace chování napříč prohlížeči pokračuje.
- On-device výpočty: více funkcí přesunout na klienta bez odesílání identifikátorů; bezpečnější embedování (fenced, CHIPS/partitioned cookies).
Vrstvená strategie místo jediného přepínače
Profily tvoří hrubou, organizační hranici; kontejnery umožňují jemné oddělení identit v rámci dne; izolace stránek a partitioning oddělují procesy a data tak, aby chyba či tracker nezasáhly jinde. Skutečná odolnost vzniká jejich kombinací, disciplínou používání a minimalismem dat v samotných aplikacích. Když jsou tyto vrstvy nastavené a dodržované, prohlížeč se stává silným nástrojem ochrany soukromí – nikoli slabým místem.