Systém doménových jmen byl vytvořen tak, aby byl rychlý. Nebyl vytvořen tak, aby byl bezpečný. Když se DNS navrhoval v 80. letech, nikdo nepočítal se světem, ve kterém se útočníci budou snažit padělat odpovědi DNS a přesměrovávat vaše návštěvníky na falešné weby. DNSSEC, zkratka pro DNS Security Extensions, vznikl, aby tuto mezeru zacelil. Přidává k záznamům DNS digitální podpisy, takže každou odpověď DNS serveru lze ověřit jako pravou dřív, než jí prohlížeč uvěří.
Co je DNSSEC?
DNSSEC je sada bezpečnostních rozšíření protokolu DNS. Funguje tak, že ke každému záznamu DNS vaší domény připojí kryptografický podpis. Když resolver vyhledává vaši doménu, před přijetím odpovědi zkontroluje, zda podpis sedí. Pokud podpis chybí nebo nesedí, odpověď je odmítnuta. Tím se útočníkům brání ve vkládání falešných odpovědí DNS do systému.
DNSSEC nemění to, jak DNS funguje. Vyhledávání probíhá stejně. Vaše doména se stále překládá na IP adresu přes řetězec DNS serverů. Rozdíl je v tom, že každý krok tohoto řetězce lze nyní ověřit. Resolver odpovědi jen tak nevěří. Zkontroluje kryptografický podpis, aby potvrdil, že odpověď přišla z oprávněného zdroje a cestou nebyla změněna.
Jaký problém DNSSEC řeší?
Bez DNSSEC se odpovědi DNS přijímají tak, jak jsou. Neexistuje vestavěný způsob, jak zkontrolovat, zda odpověď přišla ze správného serveru nebo zda byla cestou změněna. To otevírá prostor pro konkrétní typ útoku zvaný otrava cache DNS, známý také jako DNS spoofing.
Při útoku otravou cache pošle útočník resolveru padělané odpovědi DNS dřív, než dorazí ta pravá. Resolver uloží falešnou odpověď do své cache a poskytuje ji všem, kdo tuto doménu vyhledávají. Každý návštěvník, který napíše vaši doménu do prohlížeče, je poslán na server, který ovládá útočník, místo na váš skutečný web.
Falešný web může vypadat stejně jako ten váš. Návštěvníci mohou zadat přihlašovací údaje, platební údaje nebo osobní informace, aniž by si uvědomili, že jsou na úplně jiném serveru. Pro návštěvníka je útok neviditelný, protože adresa v prohlížeči stále ukazuje název vaší domény.
DNSSEC tomu brání tím, že padělané odpovědi lze odhalit. Pokud podpis nesedí, resolver odpověď odmítne a návštěvník není poslán na falešné místo.
Jak DNSSEC funguje?
DNSSEC používá k podepisování záznamů DNS systém veřejných a soukromých klíčů. Tady je postup v hrubých rysech.
Když zapnete DNSSEC, váš poskytovatel DNS pro vaši doménu vygeneruje pár kryptografických klíčů. Soukromý klíč slouží k vytvoření digitálního podpisu každého záznamu DNS. Veřejný klíč je zveřejněn jako samotný záznam DNS, aby k němu měly resolvery přístup.
Když resolver vyhledává vaši doménu, dostane odpověď DNS spolu s podpisem. Pak pomocí veřejného klíče ověří, že podpis odpovídá datům v odpovědi. Pokud vše sedí, odpověď je důvěryhodná. Pokud je podpis neplatný nebo chybí, resolver odpověď považuje za nedůvěryhodnou a nepředá ji prohlížeči.
Toto ověřování funguje přes řetězec důvěry. Na veřejný klíč vaší domény odkazuje záznam DS (Delegation Signer) v nadřazené zóně. Například pokud je vaše doména yourbrand.com, zóna .com obsahuje záznam DS, který ukazuje na veřejný klíč vaší domény. Samotná zóna .com je podepsána a ověřena kořenovou zónou. Každá úroveň v řetězci ověřuje úroveň pod sebou, celou cestu od kořene až k vaší konkrétní doméně.
Co se děje bez DNSSEC?
Bez DNSSEC je každá odpověď DNS vaší domény nepodepsaná. Resolvery přijmou jakoukoli odpověď, která dorazí první, bez možnosti potvrdit, že přišla z legitimního zdroje. To znamená, že dobře umístěný útočník může do systému vsunout padělané odpovědi a přesměrovat vaše návštěvníky, aniž by spustil jakýkoli alarm.
U většiny malých webů je riziko cíleného útoku otravou DNS nízké. Útočníci obvykle míří na hodnotné cíle, jako jsou banky, poskytovatelé e-mailu a velké e-shopy. Riziko ale není nulové. Veřejné sítě Wi-Fi, napadené routery a zranitelnosti v některých resolverech mohou vytvářet příležitosti pro DNS spoofing i v menším měřítku.
Praktický dopad absence DNSSEC závisí na vaší situaci. Pokud pracujete s citlivými daty, přijímáte platby nebo je váš web hlavním místem kontaktu se zákazníky, ověření navíc za to stojí.
Potřebujete DNSSEC pro svou doménu?
Upřímná odpověď je, že to záleží. DNSSEC přidává skutečnou ochranu, ale není povinný pro každou doménu.
DNSSEC byste měli zapnout, pokud váš web zpracovává platby, sbírá citlivé informace nebo běží na doméně s vysokou viditelností. Weby státní správy, finanční služby i zdravotnické značky mají z aktivního DNSSEC užitek. Pokud je pro vaši značku prioritou zabezpečení domény, DNSSEC je další vrstva, kterou stojí za to přidat.
Hned ho nemusíte potřebovat, pokud provozujete menší informační web bez přihlašování a váš registrátor DNSSEC zatím nepodporuje nebo si za něj účtuje příplatek. Mnoho webů funguje bez něj bez potíží. SSL už šifruje spojení mezi návštěvníkem a vaším serverem, což chrání data při přenosu. DNSSEC řeší jiný problém, konkrétně integritu samotného vyhledávání DNS.
Pokud to váš registrátor podporuje a nastavení je jednoduché, zapnutí má jen velmi málo nevýhod. Ochrana, kterou přidává, je skutečná, i když riziko, které řeší, se netýká každé domény stejně.
Jak DNSSEC zapnout?
Zapnutí DNSSEC vyžaduje akci na dvou místech. Prvním je váš poskytovatel DNS, kde jsou hostované záznamy DNS vaší domény. Druhým je váš registrátor domény, u kterého je doména registrovaná.
Obecné kroky vypadají takto.
- Přihlaste se k poskytovateli DNS a zapněte DNSSEC pro svou doménu. Tím se vygenerují kryptografické klíče a začnou se podepisovat vaše záznamy DNS.
- Zkopírujte záznam DS, který vám poskytovatel DNS dá. Tento záznam obsahuje odkaz na veřejný klíč vaší domény.
- Přihlaste se k registrátorovi domény a přidejte záznam DS do nastavení své domény. Tím propojíte klíče DNSSEC své domény s nadřazenou zónou.
- Počkejte na propagaci. Stejně jako u každé změny záznamu DNS může nějakou dobu trvat, než se nový záznam DS rozšíří po internetu. Obvykle jde o několik hodin.
- Otestujte nastavení pomocí online nástroje na ověření DNSSEC a potvrďte, že vše funguje.
Pokud jsou váš registrátor a poskytovatel DNS jedna a ta samá firma, je postup jednodušší. Někteří poskytovatelé zvládnou oba kroky z jedné administrace. Jiní vyžadují, abyste záznamy kopírovali mezi dvěma samostatnými účty.
Nejčastější chybou při nastavení je nesprávné zadání záznamu DS. Před uložením zkontrolujte dvakrát označení klíče (key tag), číslo algoritmu, typ otisku (digest type) a hodnotu otisku (digest value). Špatná číslice v kterémkoli z těchto polí přeruší řetězec důvěry a může způsobit, že vaše doména bude nedostupná, dokud chybu neopravíte.
Co DNSSEC nedělá?
DNSSEC řeší jeden konkrétní problém: ověřuje, že odpovědi DNS jsou pravé. Je důležité chápat, co je mimo jeho rozsah.
DNSSEC nešifruje vaše dotazy DNS. Obsah každého vyhledávání DNS je stále vidět každému, kdo sleduje síť. Pokud vám záleží na soukromí dotazů DNS, je to samostatný problém, který řeší DNS over HTTPS (DoH) nebo DNS over TLS (DoT), ne DNSSEC.
DNSSEC nešifruje provoz mezi návštěvníkem a vaším webem. To je úkol certifikátu SSL, který vytváří šifrované spojení přes HTTPS. DNSSEC a SSL chrání různé věci v různých fázích spojení.
DNSSEC nezabrání všem typům útoků na vaši doménu. Nezastaví někoho, kdo ukradne vaše přihlašovací údaje k registrátorovi a převede doménu. Nechrání před phishingovými e-maily, které napodobují vaši značku. A neblokuje útoky DDoS mířené na vaše servery DNS. Proti těmto hrozbám potřebujete samostatnou ochranu, jako je dvoufázové ověření, zamykání domény a ochrana před DDoS.
Čím se DNSSEC liší od SSL?
DNSSEC i SSL jsou bezpečnostní vrstvy, ale chrání různé části spojení mezi návštěvníkem a vaším webem.
SSL (a jeho nástupce TLS) šifruje data, která proudí mezi prohlížečem návštěvníka a vaším webovým serverem. Jakmile je spojení navázáno, vše, co návštěvník odešle a přijme, je chráněno před odposlechem. SSL také ověřuje, že server, se kterým návštěvník komunikuje, má platný certifikát pro vaši doménu.
DNSSEC chrání krok, který proběhne dřív, než se SSL uplatní. Když návštěvník napíše vaši doménu, prohlížeč nejdřív vyhledá IP adresu přes DNS. DNSSEC zajišťuje, že toto vyhledání vrátí správnou IP adresu. Bez něj by útočník mohl návštěvníka přesměrovat na úplně jiný server, který by mohl mít dokonce vlastní certifikát SSL pro podobně znějící doménu.
Obě vrstvy mají svůj smysl. SSL chrání rozhovor. DNSSEC chrání směr, kterým se návštěvník vydá, aby rozhovor začal. Použití obou dává vašim návštěvníkům nejsilnější jistotu, že jsou na vašem skutečném webu a jejich data jsou v bezpečí.
Jak WEMASY pracuje s DNSSEC
WEMASY spravuje DNS domén připojených k platformě. Když postavíte web na WEMASY, nastavení DNS vaší domény zajišťuje WEMASY včetně nastavení nameserverů a záznamů DNS. Co obsahuje který tarif, najdete v ceníku.
Shrnutí modulu 6
Tato kapitola uzavírá modul o zabezpečení domén. V předchozích kapitolách jste prošli celý obraz. Zjistili jste, co zabezpečení domény znamená, jak zamykání domény, ochrana soukromí a hlídání obnovení udržují doménu pod vaší kontrolou a jaké konkrétní hrozby, jako únos domény, spekulace s doménami a podvody s obnovením, míří na majitele domén. DNSSEC přidává poslední vrstvu tím, že chrání samotné vyhledávání DNS, tedy jediný krok, který propojuje název vaší domény s vaším skutečným webem. Se všemi těmito ochranami je vaše doména zajištěná od registrace až po překlad na adresu.
Často kladené otázky o DNSSEC
Může DNSSEC rozbít můj web, když je špatně nastavený?
Ano. Pokud záznam DS u registrátora neodpovídá klíčům u poskytovatele DNS, resolvery, které DNSSEC ověřují, odmítnou odpovědi DNS vaší domény úplně. Váš web pak může být nedostupný návštěvníkům, jejichž resolvery ověřování DNSSEC vynucují. Po zapnutí vždy otestujte nastavení nástrojem na ověření DNSSEC a pokud někdy změníte poskytovatele DNS, udržujte klíče synchronizované. S Tvůrcem webů WEMASY to můžete nastavit přímo na svém webu.
Zpomaluje DNSSEC můj web?
Dopad na rychlost je minimální. DNSSEC přidává do odpovědí DNS kvůli podpisům malé množství dat navíc a resolvery provádějí jeden krok ověření navíc. V praxi to přidá jen pár milisekund k vyhledání DNS. Návštěvníci žádný rozdíl v době načítání stránky nepoznají.
Podporují DNSSEC všichni registrátoři?
Ne všichni. Většina velkých registrátorů DNSSEC podporuje, ale někteří menší nebo levnější ho zatím nenabízejí. Než se pokusíte DNSSEC zapnout, zkontrolujte dokumentaci nebo stránku podpory svého registrátora a ověřte, že vám přidání záznamů DS umožňuje. Pokud ne, možná budete muset doménu převést k registrátorovi, který to umožňuje.
Co se stane s DNSSEC, když změním poskytovatele DNS?
Pokud přejdete k jinému poskytovateli DNS, musíte aktualizovat konfiguraci DNSSEC. Nový poskytovatel vygeneruje nové klíče a vy budete muset nahradit záznam DS u registrátora novým. Během přechodu existuje okno, kdy starý záznam DS už neodpovídá novým klíčům. Přechod pečlivě naplánujte. Nejdřív odstraňte starý záznam DS, počkejte na propagaci, přesuňte DNS, zapněte DNSSEC u nového poskytovatele a teprve potom přidejte nový záznam DS.
Je DNSSEC totéž co DNS over HTTPS?
Ne. Řeší různé problémy. DNSSEC ověřuje, že odpověď DNS je pravá a nikdo s ní nemanipuloval. DNS over HTTPS (DoH) šifruje samotný dotaz DNS, takže nikdo, kdo sleduje vaši síť, nevidí, které domény vyhledáváte. DNSSEC chrání integritu. DoH chrání soukromí. Lze je používat společně, ale jedno druhé nenahrazuje.