Zabezpečení českých DNS resolverů

CZ.NIC se už po několik let účastní projektu DITL (A Day in the Life of the Internet), tedy volným překladem „Den života Internetu“, který je zastřešen organizacemi CAIDA a OARC. Účelem projektu je shromáždit datový provoz kořenových jmenných serverů a TLD autoritativních jmenných serverů z co nejvíce zdrojů a poskytnout tak možnost výzkumníkům zkoumat různé aspekty chování Internetu.

V letošním roce proběhl sběr dat v dubnu a trval dva dny. Využili jsme tedy nasbíraných dat a provedli analýzu českých resolverů na úroveň jejich zabezpečení z pohledu útoku typu otráveni „cache“ paměti DNS resolveru. Přesněji jsme zkoumali, jaké zdrojové porty daný DNS resolver používá u dotazů na autoritativní jmenné servery české domény .CZ. Pokud by resolver používal pořád stejný port (statický) či porty z posloupnosti (sekvenční), byl by velice snadno náchylný na Kaminského verzi DNS útoku na otrávení paměti DNS resolveru. Tím „snadno“ je myšleno útok v rámci sekund či minut bez potřeby náročného HW či velkokapacitního pásma pro připojení k Internetu. Raději ještě připomeneme, že pod pojmem otrávení paměti DNS resolveru si čtenář může představit situaci, kdy namísto své oblíbené webové stránky může být přesměrován na falešnou stránku útočníka a to změnou IP adresy k doméně v paměti jim používaného DNS resolveru.

A konečně se dostáváme k číslům. Z celkového počtu 32 408 českých DNS resolverů je snadno napadnutelných 6 519 serverů, což je 20.12 %. S ohledem na fakt, že už pěknou řádku let jsou k dispozici verze DNS serverů s pseudonáhodně generovanými zdrojovými porty, by mnozí z nás čekali toto číslo o něco nižší. Z výše uvedeného počtu napadnutelných serverů používá statické porty 4 017 serverů (12.40 %) a sekvenční porty 2 502 (7.72 %) serverů.

        

Dalším zajímavým údajem je procentuální zastoupení těchto snadno napadnutelných resolverů v celkovém provozu českých DNS serverů na .CZ domény a to je 12.15 %. Z něhož 10.76 % jsou resolvery používající statické a 1.39 % sekvenční porty. Dvanáct procent není zanedbatelných a proto už nyní CZ.NIC připravuje určité kroky pro zvýšení bezpečnosti uživatelů těchto DNS resolverů.

Výše uvedené statistiky napomáhají mapovat situaci zabezpečení DNS v České republice a proto budou ke konci roku 2011 doplněné ještě o analýzu DNSSEC; informace jsou pravidelně uveřejňovány na stránkách labs.nic.cz.

Emanuel Petr, Laboratoře CZ.NIC

Dodatek: Své DNS servery můžete otestovat webovým testem Web-based DNS Randomness Test nebo z příkazového řádku porttest.dns-oarc.net.

Bitsquatting

Najskôr sa už každému podarilo spraviť preklep v názve domény pri ručnom písaní do browseru a dostať sa na doménu zaregistrovanú „typosquatterom“, aby využil preklep k nejakému zisku (typicky reklamy). Artem Dinaburg prezentoval na konferencii Defcon 19 zaujímavú variantu nazvanú bitsquatting.

Bitsquatting je založený na predpoklade, že v počítačoch pripojených k internetu dochádza občas vplyvom tepla, elektromagnetického žiarenia apod. k chybe, ktorá prehodí v pamäti niektorý bit. Takáto bitová chyba nastáva veľmi zriedkavo, preto na „zmysluplné“ využitie sa musí jednať o mimoriadne často dotazovanú doménu.

Dinaburg si zaregistroval niekoľko variant populárnych domén s jedným prehodeným bitom, ktorý je na klávesnici ďaleko od originálneho znaku (napr. mic2osoft.com s prehodeným 7. bitom v znaku ‚r‘, aby sa to jednoduchšie odlíšilo od typosquattingu) a sledoval 7 mesiacov príchodzie dotazy. Za toto obdobie prišlo 52 317 dotazov z 12 949 unikátnych IP adries, čo je dosť malý počet oproti chybám z preklepov. Relatívne nízky počet je očakávateľný kvôli nízkej pravdepodobnosti výskytu bitovej chyby. Nasledujúci graf ilustruje rozloženie počtu spojení od unikátnych IP počas meraného obdobia:

Okrem troch anomálií (označených v grafe A, B, C) je počet IP za deň celkom rovnomerný. Prvé dva extrémy (A, B) podľa autora vznikli chybou cache priamo v infraštruktúre spoločnosti Zynga (tvorca hry Farmville), za posledný (označený C) je zodpovedná proxy alebo DNS resolver spoločný pre menšiu sieť.

Koncept vzbudil miernu nedôveru, pretože je celkom ťažké dokázať, že sa jedná o bitovú chybu a nie o zvláštny preklep alebo aktivitu skriptu, ktorý enumeruje domény. Asi najlepší argument podporujúci Dinaburgove tvrdenie sú rozdiely medzi dotazovanou doménou a HTTP Host hlavičkou: 3 % HTTP spojení na bitsquat domény obsahujú Host hlavičku odpovedajúcu pôvodnej („nebitsquatovej“) doméne, čomu pri typosquattingu nedochádza. Naviac v jeho príkladoch obsahujú bežne HTTP spojenia aj Referer.

Niektoré komentáre namietali, že pri podobných „náhodných“ chybách by neboli schopné počítače pracovať. V skutočnosti si človek takú chybu skôr vôbec nevšimne. Zhodou okolností som asi pred 15 rokmi robil experiment, ako sa PC vysporiada s chybami v RAM. Na starších PC bolo možné preprogramovať cez časovač frekvenciu obnovy pamäte (DRAM refresh). DRAM refresh zaručuje, že pamäť „nevybledne“ (nestratí sa z kondenzátorov náboj). Po znížení frekvencie refreshu trvalo rádovo minúty, než boli chyby človekom viditeľné (refresh je rádovo mikrosekundy až milisekundy). Prvé viditeľné chyby boli zmeny zobrazovaných znakov, logické chyby v aplikáciách a nakoniec pád systému. Podobne Dinaburg zachytil prípady havarujúcich Windows strojov, ktoré odosielali chybové hlásenia na bitsquat domény.

Ďalšie informácie k bitsquattingu sa dajú nájsť v Dinaburgovej prezentácii a článku.

Ondřej Mikle, Laboratoře CZ.NIC

I-D ECDSA pro SSHFP aneb krátký zápis o vzniku jednoho budoucího RFC…

Minulý týden vyšel na serveru Root.cz pěkný článek DNSSEC jako bezpečné úložiště SSH klíčů, který byste si měli přečíst, pokud chcete, aby vám tento blogpost dával aspoň nějaký smysl. Ve zmíněném článku zaznělo jedno takové povzdechnutí „Bohužel, specifikace záznamu SSHFP dosud nebyla rozšířena o podporu pro ECDSA klíče, jejich otisky tedy prozatím není možné do DNS uložit.“, které spustilo řetěz událostí, které (snad) vyústí v aktualizaci RFC.

Po chvilce pátrání v RFC lze zjistit, že autoři RFC 5656, které do Secure Shell protokolu přidává ECDSA algoritmus, opravdu zapomněli zaktualizovat i RFC 4255 definující SSHFP záznam. Seznam algoritmů pro klíče a jejich otisky jsou udržovány v registru IANA v seznamu DNS SSHFP Resource Record Parameters a je možné je zaktualizovat pomocí mechanismu „IETF Consensus“, který je definovaný v BCP 26:

IETF Consensus – New values are assigned through the IETF consensus process. Specifically, new assignments are made via RFCs approved by the IESG. Typically, the IESG will seek input on prospective assignments from appropriate persons (e.g., a relevant Working Group if one exists).

Ve zkratce řečeno, pro aktualizaci seznamu algoritmů je zapotřebí samostatné RFC. Jelikož pracovní skupina secsh je již uzavřena, tak zbývaly dvě možnosti – najít jinou pracovní skupinu, která by byla blízko, nebo nový draft publikovat jako individuální.

Tak či onak nový Internetový Draft (I-D) se nenapíše sám… a jelikož byl DNSSEC nedávno obohacen o rodinu algoritmů SHA-2, tak nebylo potřeba začínat na zelené louce, ale bylo možné se inspirovat již schváleným RFC. Také proto, ale nejen z tohoto důvodu, nový návrh rozšiřuje záznam SSHFP i o otisky pomocí SHA-256. Původně draft obsahoval i SHA-385 a SHA-512, ale nakonec na základě komentáře Ólafura Guðmundssona (předsedajícího pracovní skupině DNSEXT) byl výčet algoritmů zredukován jen na SHA-256 (aneb pokud to stačí pro otisk v DS záznamu, tak to musí stačit i pro SSHFP záznam). Další komentáře, které jsme dostali a následně začlenili do návrhu, byly od Stephena Kenta (ředitel oblasti Security).

Jedna z připomínek byla, zda-li by draft nemohl také obsahovat příklady nových záznamů. Což bylo již kousek od toho napsat funkční implementaci nových algoritmů do OpenSSH, což, jak se nakonec ukázalo, nebyl nijak heroický výkon a výsledek (používejte pouze na vlastní riziko) naleznete v patchi ssh-sshfp-ecdsa.patch.

Výsledný návrh nového I-D byl publikován pod názvem draft-os-ietf-sshfp-ecdsa-sha2 (zdrojové xml). Stephen Kent také navrhl, že bude nejlepší poslat nové I-D do obecné skupiny SAAG, což proběhlo hned po nahrání I-D do nástrojů IETF. Zatím se k novému návrhu nikdo nevyjádřil, takže doufejme, že je to kvůli tomu, že je to vcelku dost nudný návrh RFC :). Těsně před psaním tohoto příspěvku jsem ředitele oblasti Security požádal, zda-li by náš návrh nesponzoroval. Takže držme palce, aby tento jednoduchý návrh (ECDSA bude mít číslo 3, SHA-256 bude mít číslo 2), který ovšem v jazyce RFC znamená 9 stran textu :), hladce projde schvalovacími procesy IETF.

Na závěr bych chtěl poznamenat, že z hlediska procesů IETF je jedno, jestli je autor Internetového Draftu dlouhodobě zapojen do práce IETF nebo jen přijde, napíše návrh a zase odejde. Za CZ.NIC můžu říci, že bychom byli velice rádi, kdybychom mohli k práci pro IETF přitáhnout více lidí z ČR. K sérii popularizačních článků, které vyšly na Lupě (Cesta do hlubin IETF, Odkud pochází Internetové standardy (aneb bylo jednou jedno RFC) a Vrána k vráně sedá aneb koťátka, dogy a nápoje v IETF), tak přidáváme tuto veřejnou nabídku.

Pokud máte nápad na nový protokol, standard nebo jen menší či větší vylepšení stávajícího (viz toho rozšíření SSHFP o nové algoritmy), tak se na nás můžete kdykoliv obrátit. Velice rádi vám s psaním návrhu nového RFC pomůžeme.

Ondřej Surý

BIND 10 – agilně vyvíjený modulární nameserver

V týdnu od 21. března se v Akademii CZ.NIC uskutečnil BIND 10 Developer Meeting a já, spolu s mými kolegy z Laboratoří, jsem měl možnost podívat se, jak se vyvíjí nová verze téhle nejpoužívanější implementace DNS.

BIND 10 navenek přináší úplně nový design a množství funkcí, samotná koncepce vývoje však také doznala změn. Jak to vyjádřil programový manažer BIND 10 Shane Kerr, BIND 9 vznikal stylem „top-down“ a jeho vývoj byl více řízen někde „shora“. U nové verze se vývojáři snaží více o styl „bottom-up“ a méně o centralizované řízení. Projevem toho prvního je, že se jeho tým snaží o silnou modulárnost nového BINDu, kdy jednotlivé moduly (v praxi reprezentované samostatně běžícími procesy) jsou do velké míry nezávislé. Projevem toho druhého je zase určitá rovnost mezi všemi členy týmu (Shana nevyjímaje). Ta může být na jedné straně přínosná; každý má možnost „dostat se ke slovu“ a pokusit se prosadit svůj nápad či přístup. Na straně druhé to může vést k nekonečným diskusím, ve kterých trochu chybí nějaká autorita, která by ve věci „vynesla soud“ či aspoň nasměrovala diskusi produktivnějším směrem.

Vedení vývojářského týmu je v případě BIND 10 nepochybně náročné. Tvoří ho totiž patnáct lidí z celého světa – USA, Číny, Japonska, Velké Británie, Nizozemska i od nás z Čech. Tito lidé se osobně scházejí čtyřikrát do roka, aby tváří v tvář prodiskutovali jak plán dalšího vývoje, tak některé implementační detaily.


Část vývojářského týmu BIND 10 na setkání v Praze. Druhý zleva stojí Shane Kerr, třetí je Michal Vaner z Laboratoří CZ.NIC.

Byl jsem celkem překvapen jejich disciplínou a pracovním nasazením, když během těch pěti dnů, které tady strávili, věnovali práci devět nebo i více hodin denně. Na druhou stranu, jak už to tak bývá, když několik lidí s různých koutů světa a s různými názory a přístupy o něčem diskutuje, občas se nechá unést k již zmíněným dlouhým a ne zcela produktivním výměnám názorů.

Pravděpodobně největší výzvou je rozdělování a plánování úkolů a koordinace týmu; osobních setkání je málo a většina práce se tak musí plánovat do detailů a dopředu a to na období několika týdnů nebo i měsíců. Tým BIND 10 zvolil pro práci agilní metodu Scrum upravenou pro využití v mezinárodním týmu, který se nemůže setkávat každý den, což ostatně Scrum vyžaduje. Základem jsou za prvé face-to-face meetingy jako ten, kterého jsme se zúčastnili, a za druhé konferenční hovory probíhající téměř každý den. Podle Shanových slov zaberou minimálně 15 procent času celého týmu, pro vývoj jsou ale velice přínosné. Metodu Scrum využívá vývojářský tým teprve od minulého roku a její zavedení je prý skutečně znát.

Dalším výrazným prvkem provázejícím vývoj BIND 10 je testování. Tady musím mezinárodní tým vývojářů pochválit, protože testování věnuje skutečně mnoho času a prostředků. Skutečně bylo vidět, že „test-driven development“ není jen prázdná fráze. Až doposud se věnovali hlavně unit-testům, ale v plánu mají také testování na vyšší úrovni, která by měla ověřovat, jak se bude celý systém chovat v různých situacích. Cílem je zvýšit spolehlivost a důvěru uživatelů v tento systém; k tomuto cíli se podle mě vydali tou správnou cestou. Doufejme, že to dotáhnou do konce a BIND bude mít šanci zbavit se své nepříliš lichotivé přezdívky – Buggy Internet Name Daemon.

Sledovat práci vývojářů BIND 10, poznat lidi, kteří za ním stojí, a vidět, jak vzniká nová verze nejpoužívanějšího DNS softwaru bylo nevšední zkušeností. I když u nás v Laboratořích zatím žádný mezinárodní projekt nevedeme, v mnohém se jistě můžeme z jejich práce poučit či inspirovat.

Ľuboš Slovák

ITAR končí

V půlce července byla podepsána kořenová zóna a krátce na to jsem si posteskl, že DS záznamy některých domén zůstaly v ITARu a některé se přesunuly do kořenové zóny. Dnes už je situace úplně jiná. ITAR je už téměř prázdný a naopak kořenová zóna se nám utěšeně plní. Snad proto ve čtvrtek IANA oznámila, že ukončuje provoz ITARu. Dle tohoto oznámení budou na konci listopadu vymazány z ITARu všechny záznamy a na začátku příštího roku bude provoz celého adresáře ukončen. Zatím nebylo vydáno žádné podobné prohlášení u dalšího podobného systému, tedy DLV.

Jaké záznamy vlastně ITAR v současnosti ještě obsahuje? Jsou v něm DS záznamy následujících domén: .arpa, .bg, .br, .gov, .nu, .pr, .th, a .tm. Překvapivé je, že DS první jmenované, tedy .arpa, neni v kořenové zóně. Je to poměrně škoda. Tato doména je využívána i třeba pro reverzní DNS zóny či ENUM. Snad se tedy rychle podaří i tuto doménu zmigrovat. Každopádně kořenová zóna v současné chvíli obsahuje 294 domén a podepsaných je z toho 46.

Pokud tedy používáte ITAR, připravte se na jeho vypnutí a buďte bez obav, kořenová zóna vám bude stačit…

Ondřej Filip

KIDNS – Keys In DNS

Technologie DNSSEC je aktuálně nasazována po celém světě. K většímu úspěchu jí ovšem chybí tzv. killer-app. Tj. takové použití DNSSECu, kvůli kterému si jej budou chtít pořídit všichni. Takovou killer-app by se mohly stát standardy ukládání kryptografických dat do DNS, na kterých se pracuje na půdě organizace IETF.

Nejprve bych ovšem krátce zabrousil do historie. Nápad ukládat veřejné části klíčů (nebo jejich otisky) do DNS není nikterak nový. První standard popisující záznam CERT, umožňující ukládat certifikáty do DNS, vytvořili v roce 1999 Olafur Gudmundsson a Donald Eastlake (RFC2538). Tento internetový standard byl v roce 2006 aktualizován Simonem Josefssonem a jeho aktuální podobu naleznete v RFC4398.

Pro SSH vznikl v roce 2006 podobný standard (RFC4255), který je podporován v OpenSSH, ale bohužel je nutné jeho podporu implicitně zapnout. Vytváření šifrovaných tunelů pomocí IPsecu můžete taktéž podpořit informací uloženou v záznamu IPSECKEY (RFC4025) z roku 2005.

Proč tedy zatím nedošlo k masivnějšímu rozšíření používání těchto šikovných pomůcek, jak publikovat veřejné klíče pomocí DNS? Jeden z velkých problémů spočíval v tom, že data, která jste dostali pomocí DNS, nebyla nijak zabezpečena. Tudíž útočník mohl libovolně podvrhnout kryptografický obsah v těchto záznamech.

Naštěstí jsme od té doby ušli dlouhou cestu zakončenou podepsáním kořenové zóny a nyní máme kryptograficky zabezpečený DNS strom, ve kterém můžeme publikovat zabezpečená data. Po počátečním šumu, který vznikl z nadšení z podpisu kořenové zóny, se většina práce naštěstí soustředila okolo IETF. Na posledním setkání IETF 78 v Maastrichtu se na neformálním meetingu (tzv. Bar BoF) potkalo asi 50 zástupců internetové komunity i komerčních firem, které tato problematika zajímá, a dohodli jsme se na postupu směřujícímu k vytvoření regulérní pracovní skupiny (WG) v rámci IETF. Po počátečních průtazích s vytvořením poštovní konference vznikl mailing list keyassure (archiv konference), ve kterém probíhá živá debata nad několika I-D, které vznikly na základě počátečního impulsu.

Aktuálně jsme společně s Warrenem Kumarim z Google vytvořili návrh zakládací listiny pracovní skupiny (za přispění diskutérů v poštovní konferenci) a poslali jsme žádost na vytvoření pracovní skupiny KIDNS (Keys In DNS). Původní záměr byl uspořádat formální BoF setkání na IETF 79 v Pekingu, viz seznam BoF, ale na základě diskuze v konferenci vyplynulo, že BoF již pro vytvoření pracovní skupiny není zapotřebí.

A co se tedy jedná? Pokud chcete provozovat web přes HTTPS (případně mít zabezpečený poštovní protokol – SMTP, IMAP, POP3), tak máte v zásadě jen jednu možnost, jak toto provést tak, aby se certifikát jevil jako důvěryhodný – a to pořídit jej u některé z certifikačních autorit, které jsou považovány za natolik bezpečné, že byli výrobci prohlížečů zařazeny do implicitního seznamu certifikačních autorit. Jak už to ovšem bývá, tak ne všechny certifikační autority jsou stejně bezpečné a bezpečnost je vždy tak silná, jako její nejslabší článek. Běžná praxe u DV (Domain Validated) certifikátů je dnes taková, že ověření validity žádosti je provedeno na základě toho, že jste schopni přijímat e-maily na doméně, pro kterou žádáte certifikát. Jinými slovy vám stačí ovládnout MX záznamy pro směřování pošty a odchytit ty správné e-maily, abyste byli schopni vytvořit certifikát pro konkrétní doménové jméno. Certifikační autority sice poskytují i certifikáty s vyšší úrovní zabezpečení tzv. EV (Extended Validation), ale ruku na srdce, kolik z vás by si všimlo, že se zabezpečení změnilo z EV na DV certifikát. A jak velké by to bylo procento z vašich přátel, rodičů, atp., kteří nejsou obdařeni bezpečnostní paranoiou jako vy.

Úkoly jsou před námi dva:

  1. Umožnit validaci libovolných certifikátů, tedy i self-signed, pomocí záznamu v DNS
  2. Umožnit ověření, že použitý certifikát je pravý a vlastník doménového jména jej zamýšlel použít. To je výrazné vylepšení i pro EV certifikáty.

V obou dvou případech bude nutné záznamy zabezpečit pomocí DNSSECu, aby bylo možné ověřit validitu dat, která klient dostane z DNS.

Na závěr bych uvedl seznam čtení na dlouhé noci, tedy I-D, které zatím v pracovní skupině vznikly:

A na úplný závěr bych vás, pokud vás tato problematika oslovuje, rád pozval do poštovní konference a snad již brzy vzniklé pracovní skupiny KIDNS.

Ondřej Surý

Dvojkotví

Stejně jako všichni lidé, kteří se nějakým způsobem podílejí na správě DNS infrastruktury, jsem se i já těšil na podpis kořenové zóny. Všichni jsme si od tohoto kroku slibovali, že konečně bude jeden jediný pravý bod důvěry (trust anchor – kotva), který velice rychle nahradí dosavadní dočasné mechanismy jako je ITAR či DLV. Osobně jsem očekával, že hned, jak bude umožněno vkládat DS záznamy do kořenové zóny, tak učiní všechny podepsané domény nejvyšší úrovně. Dnes máme už téměř tři týdny po podpisu kořene a více než měsíc od okamžiku, kdy bylo možné DS záznamy vkládat. Pojďme se tedy podívat, jak situace s kořenovou zónou vypadá. Poměrně překvapivé je zjištění, že v kořenové zóně je 11 domén (bg, br, cat, cz, dk, edu, lk, na, org, tm, uk), zatímco v ITARu je 12 domén (arpa, bg, br, ch, cz, li, na, nu, pr, se, th, tm). Na druhou stranu počet domén v ITARu neustále klesá, nedávno například ITAR opustila .lk a .org. A pochopitelně počet DS záznamů v kořenové zóně roste. Nicméně právě druhým překvapením je, že v kořenové zóně nejsou dvě vetší domény – .se a .eu. Evropská .eu není ani v ITARu. Zástupkyně švédské domény se v mailinglistu vyjádřila tak, že v době dovolených nemají kapacity na vložení DS záznamu, a že tak učiní v průběhu srpna. To je zajímavé vyjádření. Z naší zkušenosti musím říct, že to rozhodně mnoho práce nevyžaduje :-)

Každopádně i tak můžeme říct, že ITAR se pomalu stává minulostí, už rozhodně nelze validovat jen s ním. Česká doména jej kvůli rotaci klíčů opustí brzy a dá se předpokládat, že obdobně se zachovají i ostatní registry. Naopak nové registry už budou vkládat své DS záznamy přímo do kořene. V mailinglistech věnovaných rozvoji DNSSEC byla už spuštěna debata o tom, kdy provoz ITARu definitivně ukončit. Zatím ještě žádné datum nepadlo.

Každopádně, pokud jste tak ještě neučinili, nastavte své resolvery, aby validovaly proti kořenové zóně. Jinak už o mnoho domén „přijdete“.

Ondřej Filip

DNSSEC klíč v kořenové zóně

Jistě jste si všimli, že vás, naše čtenáře, pravidelně informujeme o dění okolo podpisu kořenové zóny (naposledy zde). Máme za sebou úspěšně první i druhou KSK ceremonii a poslední krok, který dle harmonogramu zbývá, je zveřejnění pravého KSK klíče (až doposud byla kořenová zóna podepsaná pomocí mechanismu DURZ).

A dnešního dne bude celý tento proces, který trval několik měsíců, završen publikováním pravého KSK klíče (teď si na pozadí představte bouchání šampaňského a jásot :)).

Pravý klíč pro kořenovou zónu má následující hash:


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

. IN DS 19036 8 2 49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkw9t5sACgkQoZmhm3FA9yZfkwCeOo3dGa5Nr1ux4WmDpRIrKjoM
iREAoKtYh03ZK+k5brhikmb+9u5iqOZU
=ZfNp
-----END PGP SIGNATURE-----

Tento DS záznam byl získán z dokumentu, který byl vytisknut na první KSK ceremonii:

Dokument z první KSK ceremonie obsahující DS záznam

DS záznam KSK klíče pro kořenovou zónu je podepsán GPG klíčem CZ.NICu 7140F726, který by měl být podepsán mým osobním klíčem a klíčem CSIRT CZ.NIC. Tento klíč můžete získat například ze server pgp.mit.edu:


gpg --keyserver pgp.mit.edu --recv-key 7140F726

Následující sekce bude platná až po publikaci tohoto klíče do kořenové zóny, která proběhne dnes 15. července 2010 mezi 21.30 – 01.30 středoevropského letního času.

Pokud budete chtít začít validovat pomocí klíče kořenové zóny, tak toto provedete změnou konfigurace vašeho rekurzivního DNS serveru (připomínám, že je zapotřebí rekurzivní server Unbound nebo Bind minimálně ve verzi 9.6-ESV nebo libovolné vyšší).

Přesný popis zveřejnění klíčů naleznete v dokumentu DNSSEC Trust Anchor Publication for the Root Zone. Důležité informace jsou tyto:

Konfiguraci serveru Unbound provedete pomocí direktivy trust-anchor:


trust-anchor: ". IN DS 19036 8 2 49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5"

Druhou variantou je uložení DS záznamu do souboru např. /etc/unbound/root.ds a nastavení directivy trust-anchor-file: (nebo auto-trust-anchor-file:)


trust-anchor-file: "/etc/unbound/root.ds"

Konfiguraci serveru Bind9 je podobná, jen formát záznamu je odlišný. Nepoužívá se přímo DNS záznam, ale rovnou DNSKEY.

Do konfigurace Bind 9.6 vložíte následující blok s konfigurací:


trusted-keys {
"." 257 3 8 "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq QxA+Uk1ihz0=";
};

Konfigurace pro Bind 9.7 je obdobná, ale použije se konfigurační direktiva managed-keys:, která automatickou aktualizaci klíče v případě, že bude DNSSEC klíč změněn mechanismem popsaným v RFC5011:


managed-keys {
"." initial-key 257 3 8 "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq QxA+Uk1ihz0=";
};

Po provedení změn musíte znovu načíst konfiguraci a měli byste mít zapnutu validaci pomocí kořenové zóny. Podotýkám, že bych zatím nevypínal validaci pomocí služby ITAR, která v současnosti obsahuje 26 pevných bodů důvěry. Oproti tomu kořenová zóna v čase psaní tohoto blogpostu obsahuje pouhých sedm bezpečných delegací:


# dig @xfr.lax.dns.icann.org . axfr | awk '/^[a-zA-Z0-9-]+\.[[:space:]]/ { print $1, $4; }' | grep DS | sort -u
bg. DS
br. DS
cat. DS
cz. DS
na. DS
tm. DS
uk. DS

Ověření validace můžete například provést takto:


# dig +adflag IN NS . @adresa_vašeho_resolveru

Nyní vypadá výsledek přibližně takto:


$ dig +adflag IN NS . @127.0.0.1

; <<>> DiG 9.7.0-P1 <<>> +adflag IN NS . @127.0.0.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7104
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 15

;; QUESTION SECTION:
;. IN NS

;; ANSWER SECTION:
[...seznam NS záznamů...]

;; ADDITIONAL SECTION:
[...seznam IP adres nameserverů...]

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Wed Jul 14 15:45:11 2010
;; MSG SIZE rcvd: 492

Po podpisu kořenové zóny do hlavičky přibude příznak AD:


$ dig +adflag IN NS . @127.0.0.1

; <<>> DiG 9.7.0-P1 <<>> +adflag IN NS . @127.0.0.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7104
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 15

[...]

Aktualizováno: Přidána konfigurace pro Bind 9.7.

Ondřej Surý

DNSSEC nechutná firewallu ESET Smart Security

Kolegové z provozního oddělení mě upozornili, že narazili na zajímavý problém. V případě, že je v programu ESET Smart Security zapnutý osobní firewall, nefunguje náš doplněk do prohlížeče Mozilla Firefox – DNSSEC Validátor. ESET Smart Security kontroluje obsah DNS zpráv a v případě podezřelého obsahu je taková DNS zpráva zablokována. Bohužel v tomto případě je firewall naprogramován příliš restriktivně a blokuje i naprosto korektní DNS zprávy, které obsahují DNSSEC informace.

Nicméně je velmi pozitivní, a chtěl bych to zdůraznit, že výrobce ESET Smart Security přistoupil k problému velmi zodpovědně a proaktivně; nechal si zaslat blokující komunikaci a v některé z dalších verzí bude tato chyba odstraněna. Kéž by se takto chovali všichni výrobci zařízení, která pracují s DNS.

Mezitím než bude blokování DNSSECu opraveno, můžete jako prozatímní opatření vložit IP adresy DNS serverů do konfigurační volby „Adresy vyloučené z aktivní ochrany IDS“ v editoru pravidel a zón.

Na závěr bych dodal, že při implementaci striktních kontrol libovolného protokolu je zapotřebí sledovat nejen nejběžnější chování tohoto protokolu, ale aktivně vyhledávat informace o možnostech protokolu a také sledovat aktuální vývoj (v případě protokolu DNS to znamená pracovní skupinu dnsext a dnsop organizace IETF).

Ondřej Surý

Všechno, co jste kdy chtěli vědět o doménách (ale báli jste se zeptat)

Na základě informací uvedených v registru domén lze vygenerovat spoustu zajímavých dat nejen o doménách samotných, jejich držitelích apod. Je možné poohlédnout se po tom, jaký obsah je na webových stránkách v příslušných doménách, kolik domén je připraveno na přechod na nový protokol IPv6 či jaké jsou tržní podíly serverového software. Tržní podíly webových serverů poskytujících domény .cz  následují jako malá ochutnávka tzv. Domain Reportu, který jsme se rozhodli pravidelně připravovat.

Tržní podíly webových serverů - 2009

Celý Domain Report s mnoha dalšími statistikami za minulý rok 2009 si můžete stáhnout ve formátu PDF: DOMAIN REPORT 2009 CZ [836 kB].

PT