Centralizované DoH škodí ochraně soukromí, v roce 2019 i do budoucna

14. 11. 2019
Doba čtení: 14 minut

Sdílet

Co ve skutečnosti způsobí centralizace DNS přes HTTPS (DoH) a proč je to pro uživatele špatné. Ve výchozím nastavení má negativní vliv na soukromí pro všechny a ani v pozdějších letech se to nezlepší.

Článek původně vyšel na blogu PowerDNS pod názvem Centralised DoH is bad for privacy, in 2019 and beyond , autorem je Bert Hubert. Překlad vychází s autorovým laskavým svolením a za redakční spolupráce Petra Špačka ze sdružení CZ.NIC.

Mozilla nedávno oznámila, že pro své americké zákazníky ve výchozím nastavení přesune DNS provoz z Firefoxu na resolvery firmy Cloudflare. Existující uživatelé Firefoxu o tom budou informováni a budou mít možnost vrátit se k DNS od poskytovatele připojení. Podstatné je, že si nemusí používání DNS od Cloudfare aktivně zapnout, protože jeho používání bude výchozím nastavením, využívajícím technologii jménem DoH

Toto rozhodnutí vzbudilo rozporuplné reakce, a to obzvláště v Evropě, kde se na setkáních a panelových diskuzích v Amsterodamu, Haagu, Paříži a Belfastu rozebíraly jeho klady a zápory, které se můžou jednou týkat i evropských zemí. 

Během těchto diskusí jsem si všiml, že jsme zatím příliš nerozebírali, co šifrování a přesouvání DNS provozu znamená pro ochranu soukromí. Zdá se, že mnoho lidí si plete pojmy ochrany soukromí a šifrování, což jsou ve skutečnosti velmi odlišné věci.

V tomto příspěvku tvrdím, že v září 2019 má centralizované DoH ve výchozím nastavení negativní vliv na soukromí na Internetu pro všechny, a že ani v pozdějších letech soukromí nezlepší. Jedinou výjimkou jsou velmi nepřátelská prostředí, kde by se stejně nikdo pro zachování svého soukromí a bezpečí neměl spolehnout na dílčí opatření, jako je DoH.

Rekapitulace toho, co DoH dělá

DNS je v současné době obvykle poskytováno operátorem sítě, kterým může být váš poskytovatel internetových služeb, vaše telefonní společnost, váš zaměstnavatel nebo v nejhorším případě nějaká ta kavárna s WiFi zdarma. 

Takto poskytované DNS není nikdy šifrováno. Kdokoli, kdo sleduje váš síťový provoz, může vidět, jaká jména překládáte pomocí DNS na IP adresy. Schopnější člověk také může vložit falešné DNS odpovědi a potenciálně tak přesměrovat váš provoz.

Oproti tomu DNS přes HTTPS šifruje dotazy DNS procházející sítí, což znamená, že nikdo mezi vámi a serverem DoH nemůže vidět vaše dotazy DNS nebo upravovat odpovědi DNS.

Je ale důležité si uvědomit, že jak v případě obyčejného DNS, tak i DoH, může operátor DNS resolveru zaznamenávat, prodávat, blokovat a upravovat DNS data. DoH v tom brání pouze prostředníkům na síti, ale ne samotnému provozovateli DNS resolveru.

DNS a ochrana metadat

Ochrana DNS provozu a dalších provozních metadat je důležitá. Seznam kontaktovaných domén (a tedy i webů a serverů) odhalí, kde pracujete, žijete, studujete, jaké máte záliby, jaká zařízení vlastníte, jaké sportovní týmy sledujete, jaké poskytovatele zdravotní péče často navštěvujete, automobil jaké značky vlastníte (nebo chcete vlastnit), a pravděpodobně také vaše sexuální preference.

Mnoho vlád se také velmi zajímá o to, kdo komunikuje s politickými stranami nebo organizacemi, které nemají rády.

Omezení skupiny lidí a organizací, které mohou vidět metadata týkající stránek, které navštěvujete, je proto velmi užitečné.

Úniky metadat

DNS je jedním ze čtyř způsobů přenosu takových metadat v prostém textu. Pro začátek je třeba uvést, že prohlížeče dnes stále nedělají výhradně požadavky pomocí zabezpečeného protokolu HTTPS. Mnoho návštěv webu stále začíná čistě textovými HTTP dotazy, které nejdřív vyzradí jméno webu a až poté jsou přesměrovány na HTTPS.

Zadruhé TLS (který je základem HTTPS) musí velmi často přenášet v čistě textové podobě název serveru, ke kterému se uživatel hodlá připojit. Dokonce i poslední verze TLS 1.3 vyzradí jméno serveru každému, kdo se dívá, v TLS hlavičce zvané „Server Name Indication“, zkráceně SNI. Existuje pracovní verze dokumentu IETF pro šifrování Server Name Indication (SNI), ale není široce podporován a před standardizací potřebuje ještě hodně práce. 

Lidé se často a nesprávně domnívají, že TLS protokol verze 1.3 tento únik vyřešil, ale opak je pravdou. Abyste se přesvědčili na vlastní oči, zkuste si spustit tento příkaz a podívejte se na jeho výstup:

# sudo tshark -i any -T fields -e tls.handshake.extensions_server_name -Y tls.handshake.extensions_server_name -n

Zatřetí, aby se zajistilo, že certifikát použitý pro připojení TLS je platný, bude mnoho prohlížečů a TLS knihoven provádět OCSP (Online Certificate Status Protocol) ověření u certifikačních autorit. Toto ověření také probíhá bez zabezpečení a vyzrazuje tak jméno domény. (Je dobré vědět, že s určitou snahou lze vyhledáváním OCSP zabránit.)

Konečně bylo zjištěno, že více než 95 % webových stránek lze jednoznačně identifikovat pomocí pouhé sady IP adres, na nichž jsou hostovány, a tyto IP adresy také nelze zašifrovat.

Chtěl bych také poznamenat, že pokud nebudou přijata zvláštní opatření, celá řada specializovaných společností (jako je Facebook a Google) stejně zaznamená a zpeněží většinu vašich aktivit online, bez ohledu na to, jak dobře šifrujete své připojení.

Ochrana soukromí před a po DoH

Z výše uvedeného vidíme, že DNS přes HTTPS blokuje pouze jeden ze čtyř (nebo pěti) způsobů, kterými unikají data o navštívených webech.

Pokud si to shrneme, před nasazením DoH měly k názvům většiny serverů, které navštěvujete, přístup následující entity:

  1. Váš poskytovatel sítě
  2. Vaše vláda, policie, zpravodajské služby (prostřednictvím soudních příkazů)
  3. Každý schopný napíchnout se na vaši místní síť
  4. Certifikační autority (prostřednictvím OCSP)
  5. Velké společnosti věnující se sledování webů a internetové reklamě (Google, Facebook)

DNS přes HTTPS v prohlížečích zatím nabízejí výhradně americké společnosti, ať už přímo nebo svým prostřednictvím. Po přechodu na DoH (v září 2019 posílajícím data na americké servery) proto musíme do našeho seznamu přidat následující: 

  1. Cloudflare / váš poskytovatel DoH 
  2. Americká vláda, NSA, FBI atd. 

Protože DoH nešifruje nic, co není zároveň není viditelné jinde nebo není odvoditelné z ostatních nešifrovaných informací, tak není co ze seznamu odebrat.

Na tomto základě můžeme dojít k závěru, že za současného stavu technologií vlastně použití DoH přes cloudového poskytovatele povede ke zhoršení ochrany vašeho soukromí.

Poznámka: DNS přes HTTPS (DoH) je „jen“ síťový protokol, který by mohl být použit pro zvýšení soukromí. V roce 2019 je ale DoH použito k přesunu DNS do cloudu, a v tomto specifickém způsobu nasazení soukromí uživatelů reálně zhoršuje.

DNS přes HTTPS nabízí možnosti sledování navíc

DNS přes HTTPS otevírá DNS všem možnostem sledování přítomným v HTTPS a TLS. Za současného stavu DNS přes UDP téměř vždy získává extra ochranu soukromí smícháním všech zařízení v síti – případný zvědavec zvenku vidí proud dotazů přicházejících z domácnosti, kavárny nebo dokonce celé kancelářské budovy, bez možnosti přiřadit jednotlivé dotazy ke konkrétním zařízením nebo uživatelům. Takové smíchání dotazů poskytuje nedokonalou, ale užitečnou základní ochranu soukromí.

DNS přes HTTPS ovšem přesně vyděluje každé zařízení (a dokonce i každou jednotlivou aplikaci na tomto zařízení) do samostatného spojení. To je samo o sobě znepokojivé, protože nyní máme k dispozici dotazy jednotlivých uživatelů.

Situaci dále zhoršuje použití TLS, které je základem HTTPS, a které obvykle také používá obnovení TLS spojení (anglicky TLS session resumption), které přidává ještě další možnosti sledování. Stručně řečeno, každé sestavení šifrovaného připojení spotřebovává procesorový čas jak na straně klienta, tak i serveru. Technika obnovení TLS spojení umožňuje znovu použít dříve vytvořený šifrovaný stav pro opakované připojení ke stejnému serveru, což ušetří spoustu procesorového času a tím i energie.

Aby obnovení fungovalo, tak si klient musí pamatovat „ID obnovení TLS spojení“ pro daný server, a toto ID zároveň funguje jako cookie, která umožňuje sledovat pohyb klienta i po změně jeho IP adresy.

Ale co dohody o ochraně osobních údajů?

Poskytovatelé DoH obvykle zveřejňují zásady ochrany osobních údajů, v nichž se zavazují, že vám poskytnou vynikající službu DNS, aniž by jakýmkoli způsobem těžili z vašich dat, s výjimkou případných velmi abstraktních průzkumů nebo mlhavě definovaných výhod, které by mohly přilákat zákazníky jiných produktů. 

Historie ukázala, že drtivá většina poskytovatelů bezplatných služeb, které pracují se zajímavými uživatelskými daty, nakonec nedokázala tento slib dodržet – buď došlo k ohrožení dat, nebojejich nezamýšlenému použití. Po takových pochybeních vždy následují omluvy, ale ty už důvěru nevrátí. 

Dále kromě takových hypotetických prohřešků žádná dohoda o ochraně osobních údajů neobstojí vůči soudnímu příkazu k hromadnému předání údajů. V americkém právním a zpravodajském prostředí se stává, že se k získávání uživatelských dat využívají předvolání a žádosti o informace formou NSL (national security letter). Také je třeba poznamenat, že konkrétně americké zákony umožňují o dost nižší úroveň ochrany soukromíneamerickým osobám“, než je již tak skromná ochrana poskytovaná americkým občanům.

Americké právo se také vztahuje na všechny servery a služby provozované americkými společnostmi, takže „hosting dat ve Švýcarsku“ neposkytuje ochranu, pokud je provozovatel americký. 

Spoléhat se na dohodu o ochraně osobních údajů jako na jakousi axiomatickou záruku ochrany soukromí nemá žádný základ ani v historii, ani v právní skutečnosti.

DNS a bezpečnost

DNS samo o sobě (bez DNSSEC validace na klientovi!) neposkytuje žádnou bezpečnostní ochranu. Utajení a integrita přenášených dat závisí na TLS, které se samo o sobě o DNS nezajímá. Uveďme si extrémní příklad – poskytovatel DNS by mohl jednoduše jako odpověď na jakýkoli dotaz z prohlížeče vracet IP adresu 198.51.100.1, přijmout TLS spojení na této adrese, a odtud se (jako TCP proxy) připojit k správnému serveru na základě SNI jména a všechno by fungovalo.

Dokonce i v tomto případě TLS poskytuje end-to-end zabezpečení (zabezpečení mezi koncovými systémy), a kontroluje certifikát poskytovaný serverem hostujícím dané jméno. Ani v takto extrémním případě útočník nezíská přístup k obsahu komunikace, ale stále uvidí jméno serveru, ke kterému se uživatel připojuje (z TLS SNI). To názorně ukazuje, že zabezpečení spojení z prohlížeče nestojí na DNS, tedy za předpokladu, že TLS je důsledně implementováno (ostatně k němu nemáme žádnou alternativu).

DNS a blokování reklam, cenzura a CDN

Přestože DNS nemůže změnit data chráněná TLS, může určitě zabránit přístupu k těmto datům. Některé země často používají DNS jako opatření pro vynucení cenzury, protože je to snadné a levné. Rusko, Turecko a Indonésie zhusta používají DNS k zablokování přístupu na stránky, které jejich vlády nemají rády.

Telefony a stále více prohlížečů neumožňují snadno blokovat reklamy. Jedním z jednoduchých způsobů, jak toho dosáhnout, je přes DNS. Sabotování DNS dotazů na jména populárních reklamních serverů je velmi účinný způsob blokování reklamního obsahu.

Podobně je možné pomocí seznamů známých doménových jmen spojených s malwarem levně zabránit zařízení v přístupu k řídící infrastruktuře botnetů.

Konečně lze DNS použít k optimalizaci připojení k streamování videa do cache na základě IP adresy klientského počítače. Několik velkých CDN a poskytovatelů služeb se spoléhá na tuto techniku při směrování uživatelů na správný server.

Jednou významnou změnou u DoH je to, že volba, co se má cenzurovat (nebo blokovat), se přesouvá od provozovatele sítě, ve které je uživatel, k poskytovateli prohlížeče (který si vybere poskytovatele DoH). Pokud vám záleží na ochraně osobních údajů, je to skvělá zpráva, pokud ovšem důvěřujete poskytovateli vašeho prohlížeče (a jeho vládě) více než své vlastní zemi.

Pokud chcete zablokovat reklamy, malware nebo potřebujete-li uživatele nasměrovat na nejlepší server, bude to možné pouze v případě, že tuto službu poskytuje vybraný poskytovatel DoH. To nemusí vždy platit, zejména pokud váš poskytovatel prohlížeče nebo DoH působí také v reklamním průmyslu nebo konkuruje jiným CDN.

DoH od poskytovatele připojení 

Já (a mnoho dalších lidí) tvrdím, že šifrované DNS je dobré a že bychom ho měli využívat více. To se často setkává s okamžitým odmítnutím, protože neexistuje žádný šifrovaný způsob, jak automaticky nakonfigurovat na klientských systémech adresy DNS resolverů podporujících šifrování.

Když se připojíme k síti, téměř ve všech případech se naše zařízení nakonfigurují automaticky s použitím správných nastavení sítě a jmenných serverů. Je velmi důležité, že tato automatická konfigurace (ať už DHCP nebo PPP) sama o sobě není silně šifrována. Takže i když naše WiFi nebo 4G připojení mohou být šifrovány, je adresa jmenného serveru poskytována přes toto připojení jako prostý text (uvnitř tohoto šifrovaného kanálu).

To v některých situacích umožňuje chytrému útočníkovi podvrhnout adresu DoH serveru, čímž by celé DoH ztratilo smysl.

Z tohoto důvodu výrobci prohlížečů tvrdí, že musí ignorovat požadavek na automatickou konfiguraci a raději napevno předkonfigurují adresu DoH serveru od dodavatele, kterého vybrali za uživatele.

Měli bychom si však uvědomit, že poskytovatel sítě nemusí manipulovat s výběrem DNS resolveru, aby se dozvěděl, co už se mohl dozvědět třemi dalšími způsoby, kterými z prohlížeče unikají informace o tom, k čemu se uživatel připojuje! 

DoH v represivních režimech

Často se zmiňuje, že DoH není vytvořeno pro privilegované obyvatele Západu žijící v zemích s (možná zhoršující se) vládou práva. DoH je místo toho nabízeno jako způsob, jak se lidé žijící v represivním režimu mohou vyhnout cenzuře a kontrole, což je jistě chvályhodný cíl.

Často se říká, že vědět málo je nebezpečné. Já osobně nemám žádné zkušenosti jako bojovník za politickou svobodu, ale mám v rodině osoby, které musely uprchnout ze své hluboce nedemokratické země, protože jsou příslušníky pronásledované menšiny.

Před několika lety jsem je kontaktoval, protože v šifrování TLS byla nalezena chyba, která by pro ně mohla být nebezpečná, a k mému překvapení to nikoho nezajímalo. Předpokládali, že jejich internetový provoz byl stejně předmětem špehování, a ukázalo se, že měli pravdu.

Později mi řekli, že „všichni používají VPN“ a já byl ohromen tím, jak dbají o ochranu svého soukromí. Ale ne, řekli mi, dělají to tak všichni, protože bez VPN je zde připojení k Internetu příliš pomalé; měli podezření, že všechno to špehování způsobovalo zpomalení provozu. VPN používali pro rychlost. Nepředpokládali, že jim poskytne soukromí, a v tomto bodě se také prokázalo, že měli pravdu (většina poskytovatelů VPN je totiž velmi pochybná).

Zmínil jsem tyto dva příběhy, abych ukázal, že naše předpoklady o represivních režimech mohou být úplně mylné a vůbec nezachycují místní realitu v Číně, Rusku, Íránu, Indonésii a Turecku. Je zábavné sedět na židli u svého počítače a být u toho imaginárním politickým aktivistou, ale praxe je úplně jiná, pokud tam skutečně žijete.

XKCD 538
Autor: Randall Munroe, podle licence: CC BY-NC 2.5

XKCD 538

V nerdově představě: „Jeho notebook je zaheslovaný. Postavíme cluster za milion dolarů, abychom ho hackli.“ „To nepůjde! Je to 4096bitová RSA!“ „Sakra! Náš ďábelský plán nevyšel.“

Co by se skutečně stalo: „Jeho notebook je zaheslovaný. Nadopuj ho a pak ho mlať tímhle hasákem za pět babek, dokud nám neřekne heslo.“ „Jdu na to.“

Více šifrování je samozřejmě dobré, pokud ztěžuje represivním režimům život. Je to určitě případ „musíme něco udělat, a tohle je něco“. Je trochu (ale jen nepatrně) těžší extrahovat TLS SNI než analyzovat prosté DNS.

Ale dynamika toho, co se stane, když se lidé v těchto zemích začnou spoléhat na DoH pro svou bezpečnost, je obtížně pochopitelná. Slyšeli jsme, že některé vlády se již od blokování založeného na DNS posunuly dále, což jsme viděli v Rusku během „války proti Telegramu“. V této souvislosti je užitečné vidět DoH jako „velmi selektivní VPN“, která šifruje pouze pakety DNS, ale všechny ostatní pakety zůstanou bez ochrany. A nejrůznější aplikace DoH pro telefony jsou ve skutečnosti implementovány poskytovateli VPN.

Pokud se na DoH budeme dívat jako na VPN, tak vypadá jako dost slabá VPN plná děr. Proto doporučovat DoH z důvodu, že pomůže disidentům v nebezpečných zemích, silně zavání postojem ajťáka odříznutého od reality, který bere jako samozřejmost, že jeho vynález je užitečný, aniž by plně chápal situaci v celé její složitosti – a všichni víme, že falešný pocit bezpečí je ve skutečnosti velmi nebezpečný. Můžeme se podivovat, proč nikdo nedoporučuje plnou VPN namísto prosazování neúplného řešení. Možná je to proto, že nám směrování veškerého svého internetového provozu přes poskytovatele cloudu přijde jako příliš znepokojivé?  

DoH jako dílčí krok

Zastánci DoH často souhlasí s tím, že DoH samo o sobě nezabraňuje všem únikům soukromých metadat, ale trvají na tom, že je to dobrý krok. Uvedeným cílem je, aby bylo možné nakonec použít jakoukoli síť, ať už jakkoli nedůvěryhodnou, a procházet web v naprostém soukromí. Je zvláštní, že zastánci DoH říkají, že je v pořádku přesunout DNS všech uživatelů na centrální místo v jiné zemi, i když to v současné době neposkytuje žádnou výhodu, s výjimkou odeslání DNS další entitě pod kontrolou zahraniční vlády vyžívající se ve špehování. Abychom dosáhli cíle dokonalého soukromí na nedůvěryhodných sítích (bez použití plné VPN), budeme muset udělat následující:

  1. Úplně vypnout HTTP v prostém textu.
  2. Použít šifrované DNS.
  3. Nasadit funkční šifrované SNI odolné vůči downgrade útokům.
  4. Zakázat OCSP/zajistit povinný OCSP stapling nebo ho nahradit alternativním mechanismem.
  5. Hostovat všechno (i sebemenší widget) na velkých sítích pro doručování obsahu, které jsou schopny poskytnout generické IP adresy, které nemají zjistitelné spojení s weby, které hostují.

Pouze v případě, že by byly podniknuty všechny kroky – přičemž bod 5 by zlikvidoval celá internetová odvětví – by DoH mělo šanci poskytnout skutečnou ochranu soukromí. 

Shrnutí

Centralizované DoH v současné době přináší jednoznačné zhoršení ochrany soukromí na Internetu. Kdokoli, kdo měl přístup k vašim metadatům, je může vidět i po přesunutí DNS k třetí straně. Tato třetí strana navíc získá úplný přehled všech DNS dotazů na zařízení způsobem, který lze dokonce sledovat i po změně IP adresy.

ict ve školství 24

DoH provozované třetí stranou zůstává v nejlepším případě dílčím řešením, na které by nemělo být považováno za účinné bezpečnostní opatření: Bude velmi těžké vyřešit všechny ostatní úniky, zejména pokud na internetu zůstanou nějací poskytovatelé obsahu mimo CDN. Šifrování DNS je samo o sobě je dobré, ale přináší výhody jen když není použito k odesílání DNS provozu třetí straně.

A pokud jde o skutečné soukromí v nedůvěryhodných sítích, nic nepřekonává VPN, kromě případného rozhodnutí tyto sítě vůbec nevyužívat.

Autor článku

Pracuje jako analytik specializovaný na DNS. Podílí se na projektech BIND, DNS Shotgun a dnsperf. Dříve vyvíjel Knot DNS a Knot Resolver.