Prečo profily, kontajnery a izolácia stránok rozhodujú o súkromí
Moderné prehliadače nie sú iba „okná na web“. Sú to zložité sandboxované platformy, ktorých architektúra priamo ovplyvňuje, koľko o vás môžu weby zistiť, ako ľahko sa dajú spájať vaše aktivity naprieč službami a aké škody spôsobí kompromitácia jednej karty. Kľúčové koncepty – viacero profilov, kontajnery (izolované „cookie jary“) a izolácia stránok (procesová aj dátová) – tvoria základ obrany proti sledovaniu, kradnutiu relácií a bočným kanálom. Tento článok vysvetľuje princípy, rozdiely, implementácie v hlavných prehliadačoch a odporúčania pre jednotlivcov aj firmy.
Modely hrozieb a ciele ochrany
- Profilovanie naprieč webmi: reklamné a analytické siete spájajú identitu a správanie.
- Únik alebo krádež relácie: zneužitie cookies/úložiska na prevzatie účtu.
- Bočné kanály: načítanie zdrojov cez rovnaký proces/úložisko (history sniffing, cache probing).
- Cross-tenant riziká: miešanie pracovných a osobných kontextov (SSO, jednotné cookies).
- Zníženie entropie pre fingerprinting: konzistentná izolácia a minimalizmus údajov.
Prehliadačové profily: koncept a architektúra
Profil je samostatný pracovný priestor prehliadača: vlastné cookies, LocalStorage/IndexedDB, históriu, rozšírenia, certifikáty, kľúčenky a politiky. Profily sa navzájom nevidia a možno ich spúšťať paralelne.
- Výhody: pevná hranica medzi identitami (práca/osobné/test), menej „prelievania“ cookies, menšie riziko cross-site korelácie.
- Nevýhody: správa viacerých inštancií, duplicitné rozšírenia, vyššia spotreba pamäte.
- Prípady použitia: oddelenie cloud tenantov, administrátorské účty, A/B testovanie s rôznymi politikami súkromia.
Kontajnery (izolované „cookie jary“): jemnozrnná izolácia v rámci jedného profilu
Kontajner (napr. Multi-Account Containers) vytvára samostatný priestor pre cookies a ďalšie webové úložiská pre zvolenú množinu domén. Umožňuje mať súčasne prihlásenia do rovnakých služieb (napr. dva e-maily) bez miešania stavov.
- Mechanika: každému kontajneru je priradený izolovaný cookie store, izolované storage a často aj farebné značky kariet pre UX.
- Výhody: minimálne trenie pri prepínaní identít, lepšia kontrola referer a third-party vložiek (sociálne widgety v osobitnom kontajneri).
- Limity: nie všetky rozšírenia rešpektujú kontajnery rovnako; sieťová vrstva môže zostať spoločná (nutné ďalšie opatrenia).
Izolácia stránok: procesy, pamäť a hranice medzi pôvodmi
Site Isolation presadzuje pravidlo, že rozdielne site (zvyčajne eTLD+1 + schéma + port) bežia v oddelených procesoch. Tým sa znižuje riziko bočných kanálov a zvyšuje odolnosť voči chybám typu Spectre.
- Procesová izolácia: každý site (a často aj cross-site iframe) v samostatnom procese s vlastným sandboxom.
- Partitioning stavu: cache, cookies, storage, service workeri a sieťové state sa viažu na top-level site (prípadne na double keying s prvkom embeddujúceho kontextu).
- Prínosy: ťažšie prelezenie sandboxu, menšie zdieľanie cache, nižšia účinnosť pixelov a tretích strán pri korelácii.
Prvky izolácie stavu: cookies, cache a storage
- Cookies: atribúty
SameSitea partitioning tretích strán (oddelené „krabičky“ pre každého embeddera). - Cache a sieťový stav: Network State Partitioning – oddelenie DNS cache, prerušovaných spojení, HSTS a TLS session ticketov podľa top-level site.
- Storage: Storage Partitioning – LocalStorage/IndexedDB/Service Worker scope viazané na kontext zhora (zabraňuje „supercookies“ cez zdieľané úložiská).
- Fenced Frames a podobné mechanizmy: bezpečnejšie embedovanie bez zdieľania identifikátorov.
Profily vs. kontajnery vs. čisté okno: čo kedy zvoliť
| Potreba | Najlepšie riešenie | Dôvod |
|---|---|---|
| Prísne oddelenie práce a súkromia | Samostatné profily | Oddelené rozšírenia, kľúče, politika, histórie |
| Paralelné prihlásenia do rovnakého webu | Kontajnery | Rýchle prepínanie, izolované cookies na úrovni domén |
| Jednorazová „čistá“ relácia | Privátne okno | Ephemerálny stav, bez pretekania histórie |
| Obrana proti bočným kanálom | Site/Process Isolation | Oddelené procesy a sieťové stavy |
Konfigurácia a odporúčané nastavenia (prehliadače)
- Firefox: viacprofilový spúšťač, Multi-Account Containers, Total Cookie Protection (partitioning), Enhanced Tracking Protection; voliteľne First-Party Isolation pre prísnejšie rozdelenie.
- Chromium/Chrome/Edge: viac profilov s oddelenými politikami; Site Isolation predvolene, partitioning storage a obmedzenia tretích strán; odporúčané
SameSite=Lax/Stricta zásady pre tretie strany. - Safari: prísna prevencia trackerov (ITP), izolácia state a silné predvolené restrikcie tretích strán.
Praktické vzory pre jednotlivcov
- Minimálne dva profily: „Práca“ (firemné SSO, rozšírenia, VPN certifikáty) a „Súkromie“ (bez účtov, minimálne rozšírenia).
- Kontajnery pre veľké platformy: sociálne siete, e-mail a cloud v odlišných kontajneroch; externé odkazy otvárať mimo „osobných“ kontajnerov.
- Privátne okná pre rizikové úkony: dočasné prihlásenia, citlivé vyhľadávania, testovanie bez vplyvu histórie.
- Minimalizmus rozšírení: menej je viac; rozšírenia majú prístup k stránkam a môžu znižovať súkromie.
Podnikové politiky a riadenie rizika
- Standardizované profily: centrálne spravované profily s politikami (povolené rozšírenia, DLP, certifikáty, nastavenia cookie).
- Tenant a konto izolácia: šablóny profilov pre jednotlivé klienty/projekty; povinné používanie kontajnerov pre sociálne siete a webmail.
- SSO a prehliadač: obmedziť remember me, vynucovať FIDO2/WebAuthn, skracovať životnosť relácií.
- Logovanie a forenzika: korelovať udalosti s profilom/kontextom; zakázať „súkromné“ profily pre administrátorov.
Technické detaily: hranice, ktoré najčastejšie zlyhajú
- Pretekanie URL parametrov: aj s izoláciou cookies môžu
utm_*a identifikátory v URL korelovať identity; odporúčané automatické strihanie parametrov. - Shared workers a BroadcastChannel: nutné rešpektovať partitioning podľa top-level site; kontrola kompatibility.
- Cache a Service Worker scope: správne scopy a registrácie, aby sa zabránilo neočakávanému zdieľaniu.
- Schémy a subdomény: konzistentné používanie eTLD+1 a explicitná separácia (napr.
auth.example.comvs.app.example.com).
Minimalizmus údajov na strane aplikácie
- SameSite a Secure cookies:
HttpOnly,Secure,SameSite=Strict/Laxako predvolené;Path/Domainzúžiť na minimum. - Rotácia identifikátorov: krátke TTL pre session a refresh tokeny; viazanie na kontext (device binding).
- Redukcia tretích strán: načítavať zdroje z vlastnej domény; presun meraní na server s rešpektom k súhlasu.
- Privacy by default: deaktivovať voliteľné trackery bez súhlasu; implementovať storage partitioning-safe stratégie.
Testovanie a audit izolácie
- Matica domén × kontajnery: overiť, že prihlásenie do A v kontajneri 1 nie je viditeľné v kontajneri 2.
- Kontrola cache a storage: nástroje vývojára – sekcia Application/Storage; overenie oddelenia podľa top-level site.
- SSO scenáre: federované prihlasovanie (OpenID/OAuth/SAML) – skúšky v paralelných profiloch a v privátnych oknách.
- Rozšírenia: audit oprávnení, obmedzenie behu na vybrané domény, testovanie interakcie s kontajnermi.
Výkonnostné dopady a optimalizácia
- Viac procesov ≠ vždy pomalšie: site isolation zvyšuje bezpečnosť, no prehliadače optimalizujú zdieľanie knižníc a plánovanie.
- Profily a RAM: aktívne iba potrebné profily; zastavovanie pozadia a spánok kariet.
- CDN a partitioning: dopady na cache hit-rate – zvážiť first-party hostovanie kritických zdrojov.
Typické scenáre a odporúčané nastavenia
- Remote work: profil „Práca“ (FIDO2 povinné, minimum rozšírení), profil „Osobné“ (bez SSO k práci), kontajnery pre sociálne siete.
- Admin účty: samostatný profil bez rozšírení, povinný privátny režim pre prístup do konzol, krátke TTL relácií.
- Marketing/analytika: oddelený profil s explicitným súhlasom na testovacie nástroje; žiadne tretie strany v produkčnom profile.
Checklist súkromia v prehliadači
- Mám minimálne dva oddelené profily a používam ich konzistentne?
- Sú veľké platformy v samostatných kontajneroch a odkazy sa neotvárajú v „nesprávnom“ kontexte?
- Beží site/process isolation a je zapnutý partitioning cookies, cache a storage?
- Používam FIDO2/WebAuthn a krátke relácie pre citlivé účty?
- Mám minimálny počet rozšírení s obmedzeným rozsahom oprávnení?
Meranie zrelosti (KPI)
- Podiel izolovaných prihlásení: percento citlivých služieb v samostatných profiloch/kontajneroch.
- Incidenty pretekania relácie: počet detekovaných cross-context cookie/Storage únikov.
- Cache hit-rate vs. súkromie: sledovať dopady partitioningu a optimalizovať hostovanie zdrojov.
- Adopcia FIDO2: percento účtov bez SMS-OTP.
Limity a budúci vývoj
- Kompatibilita: niektoré staršie aplikácie rátajú so zdieľaným stavom – vyžadujú refaktor.
- Štandardizácia partitioningu: konsolidácia správania naprieč prehliadačmi pokračuje.
- On-device výpočty: viac funkcií presúvať na klienta bez odosielania identifikátorov; bezpečnejšie embedovanie (fenced, CHIPS/partitioned cookies).
Vrstvená stratégia namiesto jedného prepínača
Profily dávajú hrubú, organizačnú hranicu; kontajnery umožňujú jemné oddelenie identít v rámci dňa; izolácia stránok a partitioning oddeľujú procesy a dáta tak, aby chyba či tracker nezasiahli inde. Skutočná odolnosť vzniká ich kombináciou, disciplínou používania a minimalizmom údajov v samotných aplikáciách. Keď sú tieto vrstvy nastavené a dodržiavané, prehliadač sa stáva silným nástrojom ochrany súkromia – nie slabým miestom.