Ondřej Filip: zavedením DNSSEC chceme celý trh povzbudit

1. 10. 2008
Doba čtení: 8 minut

Sdílet

Autor: 29
Systém doménových jmen (DNS) vznikl v době, kdy bylo k Internetu připojeno malé množství uzlů a jejich provozovatelé se vzájemně znali. Tím, jak Internet rostl co do počtu připojených lidí a počítačů, bylo nutné začít řešit otázku bezpečnosti. Proč by měl být řešením zrovna DNSSEC, z jakého důvodu nezavedl CZ.NIC hned NSEC3, jak probíhalo podepisování domény .CZ a co si od toho CZ.NIC slibuje, na to odpovídá Ondřej Filip, výkonný ředitel sdružení.

Jak byste vysvětlil princip DNSSEC někomu, kdo třeba příliš netuší, jakým způsobem vůbec name servery pracují?

Současný protokol DNS, který slouží k převodu doménových jmen na veřejné IP adresy, je dnes po technické stránce poměrně spolehlivý, ale jeho obrovská slabina spočívá v tom, že není zabezpečený. To znamená, že prakticky každý, kdo má alespoň minimální vybavení, může s určitou pravděpodobností podvrhnout odpověď nějakého name serveru. Jinými slovy může podvrhnout data, která člověk prostřednictvím DNS serveru dostává. Na systému DNS je dnes závislý prakticky veškerý běžný internetový provoz, nikdo se totiž příliš nenamáhá pamatovat si nějaké IP adresy, všichni dnes píšeme rovnou doménová jména, což může mít v případě podvrhnutí poměrně fatální následky. V těch nejhorších scénářích může například dojít k přesměrování www stránek banky nebo nějakého zpravodajského serveru v případě, že útočník chce například způsobit paniku nebo z jiného důvodu vypustit do světa nějakou dezinformaci. To jsou asi hlavní důvody, proč vznikl protokol DNSSEC a proč jsme jej nyní nasadili.

Ondřej Filip
ondrej filip
  • Vystudoval Matematicko-fyzikální fakultu Univerzity Karlovy v Praze – obor Informatika.
  • Během studia začal pracovat ve společnosti IPEX a.s., kde později působil jako technický ředitel a člen představenstva.
  • Od prosince roku 2004 je výkonným ředitelem sdružení.
  • Vedle výkonu své funkce v CZ.NIC působí v představenstvu sdružení NIX.CZ (Neutral Internet Exchange) a zároveň je aktivním členem rady ccNSO (Country Code Names Supporting Organisation) v rámci organizace ICANN (Internet Corporation for Assigned Names and Numbers).

Můžeme si ještě o něco názorněji ukázat, jak to celé funguje?

Asi bude pro jistotu dobré vrátit se ještě jednou k systému DNS. Běžný klient zpravidla nemá ve svém počítači rekurzivní DNS server, takže se zpravidla ptá dalšího počítače, který v této roli vystupuje, jak se jméno správně přeloží na číselnou adresu. Rekurzivní DNS server se začne postupně hierarchicky shora ptát autoritativních DNS serverů, až dostane odpověď, kterou potřebuje. Pokud tedy někdo zadá do prohlížeče adresu www.lupa.cz, rekurzivní DNS server se nejprve zeptá kořenových DNS serverů a dostane odpověď, kdo spravuje .CZ, následně se zeptá níže postaveného serveru a dozví se, kdo spravuje Lupa.cz a nakonec dostane od ještě níže postaveného serveru informaci, co je to www.lupa.cz. Když se klient ptá podruhé, tak už si server zpravidla informaci pamatuje, nicméně minimálně poprvé si touto cestou musí rekurzivní server projít.

Když do tohoto systému zavedete DNSSEC, tak se tento server od kořenového serveru dozví, jakým certifikátem je doména i úroveň níže podpsaná, v tomto případě se jedná o doménu .CZ. Od serverů, které jsou autoritativní pro doménu .CZ, zjistí, jaký digitální podpis používá Lupa.cz, a takto může postupovat celým hierarchickým stromem až úplně dolů. Výhoda oproti klasickému DNS spočívá v tom, že je každá odpověď je podepsaná a tedy zabezpečená. Rekurzivní server na základě tohoto podpisu ví, že odpověď přišla od správného autoritativního DNS serveru. Platí to ovšem pouze v ideálním případě, kdy je DNSSEC použit na všech úrovních hierarchie. Důležitou skutečností je, že pokud není podepsána zóna nejvyšší úrovně, musí si rekurzivní DNS server pamatovat klíč domény .CZ a celý proces ověřování začíná až o úroveň níže. Principiálně se ovšem vůbec nic nemění.

Pokud budeme postupovat po hierarchické struktuře směrem dolů, nehrozí reálně podvrh ze strany některého z níže postavených DNS serverů po cestě?

Nejprve se ještě vraťme k doméně nejvyšší úrovně. Pokud se zeptáte na domény právě v zóně .CZ, tak vzhledem k tomu, že správně nakonfigurovaný rekurzivní server přesně ví, jakou odpověď očekává, nevadí, že není podepsaná kořenová zóna. Vzhledem k tomu, že rekurzivní DNS server ví o nutnosti podepsané odpovědi z domény .CZ, bude podvržená DNS odpověď odhalena. Každá doména, kterou chce její držitel zabezpečit, musí být také podepsaná. Pokud nebude podepsaná doména lupa.cz, půjde podvrhnout DNS záznam např. pro www.lupa.cz.

Jaký má vlastně smysl zavádět DNSSEC v době, kdy na to nejsou pořádně připraveny ani klientské systémy, ani řada name serverů? Nebylo by logické vyčkat, až na to bude trh skutečně připraven?

Je otázkou k zamyšlení, zda by se trh připravil více, pokud bychom počkali ještě o něco déle. My si spíše myslíme, že zavedením DNSSEC dokážeme celý trh trochu povzbudit a éru DNSSEC tak v Česku nastartovat. Protože jsme ale opatrní, nezavedli jsme rovnou poslední verzi protokolu DNSSEC – NSEC3. Tato verze byla standardizována poměrně nedávno a právě zde jsme si nebyli jisti dostatečnou podporou v běžně instalovaných name serverech. Navíc současná verze má naprosto stejnou úroveň zabezpečení jako NSEC3. Rozdíl je pouze v systému podepisování záznamů.

Když se, možná trochu v rozporu s mojí předchozí otázkou, zeptám na to, proč DNSSEC zavádíte až dnes, jaká bude vaše odpověď?

To je bezesporu správná otázka a je zajímavé sledovat, jak se nás jednotlivé subjekty průběžně ptají, proč tak brzy, a jiné naopak, proč tak pozdě. Myslím si, že oba tábory mají svůj díl pravdy. My jsme k zavádění DNSSEC nemohli přistoupit dříve, zejména z toho důvodu, že jsme se v roce 2007 zabývali jinou, částečně související věcí, a to změnou celého našeho registračního systému. Měnili jsme tedy celý způsob, jak se registrovat domény, byť se zachováním základních principů. Samotný systém je nicméně zcela nový a tím pádem také vztahy s registrátory jsou zcela jiné, což znamenalo radikální zásah jak do našeho systému, tak zejména do systému samotných registrátorů a jejich komunikace s uživateli. Proto bylo zcela logickým důsledkem, že jsme se rozhodli se zavedením další změny, tedy s příchodem DNSSEC, počkat, až se nový systém zaběhne a situace se ustálí. Měli jsme zkrátka obavu, že zavedení obou kroků najednou by mohlo působit poměrně násilně a nemělo by to ten efekt, který od DNSSEC očekáváme.

Ve vaší předposlední tiskové zprávě, která se DNSSEC týkala, jste se chlubili tím, že jste vůbec prvním registrátorem, který zavádí DNSSEC také pro ENUM. Má tento krok opravdu nějaký praktický smysl, tedy, když si odmyslíme ono prvenství?

Já jsem přesvědčený, že určitě ano, pomocí technologie ENUM totiž směřujete hovory. U nich by se mohlo například stát, že v případě, kdy někdo modifikuje DNS záznam o konkrétní ENUM doméně, bude schopný přesměrovat daný hovor na jiný počítač a odposlechnout váš rozhovor, aniž byste si vy nebo vaše protistrana vůbec něčeho všimli. Myslíme si tedy, že by také české ENUM domény měly být zabezpečeny technologií DNSSEC, aby něco takového jednoduše nebylo možné. Doménu jsme se snažili podepsat hned poté, co byla splněna předcházející technická podmínka, a to podpis nadřazené domény e164.arpa.

Vím, že přípravy na zavedení DNSSEC nebyly úplně jednoduché, a úplně jednoduché to pravděpodobně nebude na nižších stupních celé hierarchické pyramidy, teď, kdy už je doména .CZ podepsána. Stojí výhody DNSSEC systému vůbec za překonání všech úskalí, která bylo potřeba podstoupit?

Důvod, proč zavádět DNSSEC, je myslím zcela nasnadě. Přiznám se, že v době, kdy jsme o zavedení DNSSEC začali vážně uvažovat, jsme sice ještě vůbec netušili, že by mohl přijít pan Kaminski s takto významným útokem. Přesto všichni věděli, že DNS není úplně bezpečný systém a dříve či později se může objevit nějaká jeho fatální slabina. Proto jsme se rozhodli pro zavedené bezpečnějšího systému a jsem přesvědčen, že nám dnešek dává hodně za pravdu. V poslední době nás také oslovuje řada kolegů z jiných registrů, kteří se začínají o DNSSEC zajímat; chtěli by ho co nejrychleji zavést a rádi by těžili z našich zkušeností.

Je možné některé z nich jmenovat?

Určitě, naposledy jsem mluvil s kolegy z australského registru. Na zavádění DNSSEC pracují třeba také Britové u národní domény UK.

Kolik registrů v současné chvíli DNSSEC používá?

V dnešní době je to včetně nás celkem pět registrů, těmi zbývajícími čtyřmi jsou Švédsko, Portoriko, Brazílie a Bulharsko. Když nepočítám nás, jsou to tedy dvě evropské země a dvě americké. Úplně první byli Švédové, následovali Bulhaři, v případě Portorika jde více o prestižní než praktickou záležitost, kterou měla na svědomí snad jedna jediná osoba z tohoto státu, která se problematikou v dané době zabývala. Po útoku pana Kaminského nicméně očekáváme, že se počet registrů bude zvyšovat podstatně rychleji.

Proč ještě nezačaly se zaváděním DNSSEC systému třeba takové země, jako jsou USA?

Důvod, proč nezačaly se zaváděním Spojené státy, je celkem nasnadě, USA mají národní doménu .US, která je využívána pouze minimálně. Největší procento využívaných domén zde tvoří .COM, což je doména, kde bude spuštění procesu DNSSEC o něco složitější vzhledem k celkovému počtu registrátorů i počtu domén. Nebudu přehánět, když řeknu, že je to největší doména vůbec a má obrovské množství registrátorů ze všech zemí světa. Přípravy na podepsání zde tedy zaberou daleko více času než u nás, navíc musíte započítat i větší nároky na hardware. Podepsat zónu zabere nějaký čas a vy ji musíte podepisovat po každé změně, na což je potřeba určité vybavení. Jinak se tato operace provádí v počtu domén, kterým disponujeme my, jinak v počtu stonásobném.

Co znamená, že je potřeba zónu znovu podepsat po každé změně?

Princip podepisování zóny se děje tak, že se všechny záznamy seřadí abecedně, podepíše se první záznam a napíše se, který je další. Takto vznikne logický řetězec, přičemž ten poslední záznam opět podepíše odkaz prvního záznamu; tím vznikne jakýsi uzavřený kruh. Pokud jenom záznam měním, musím ho znovu podepsat. Pokud chci přidat nový záznam, musím celý kruh vzít, roztrhnout ho a předchozí a následující záznam po novém záznamu podepsat znovu. To často nebývá úplně jednoduché, takže často dochází k tomu, že se podepíše celá zóna znovu. U velkých registrů, což je případ i toho našeho, se sice dělají spíše ony takzvané inkrementální podpisy, ale i to znamená hodně velkou režii a množství stráveného času (pracuje se zde s RSA kryptografií).

Co se stane, pokud se registrátorům nebude do podepisování zatím moc chtít?

To by bylo opravdu velmi smutné. Víme ale, že se alespoň ti největší na zavedení DNSSEC připravují a pokud ho ještě nespustili, udělají to v několika následujících dnech. Od dalších máme zprávy, že s DNSSEC počítají od nového roku. Věřím, že ti, kteří ještě váhají, se brzy přidají.

Děkuji za rozhovor.

DNSSEC se podle vás zavádí:

Seriál: Rozhovory
ikonka

Zajímá vás toto téma? Chcete se o něm dozvědět víc?

Objednejte si upozornění na nově vydané články do vašeho mailu. Žádný článek vám tak neuteče.

Autor článku

Externí spolupracovník serveru Lupa.cz a expert na blockchain a kryptoměny. Jako šéfredaktor v minulosti vedl ADASTRA Business Intelligence Magazine a server ITbiz.cz. Dnes pracuje jako redaktor časopisu Forbes.

Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).