Česká národní top-level doména cz. je světovým leaderem v zabezpečení DNSSEC, aspoň co se týče kvantity zabezpečených zón. I když se praktické důsledky podepisování DNS záznamů zatím spíše nedoceňují, či podceňují, jde o systém, který se může v budoucnu pomoci ve snaze o bezpečnější Internet, a na rozdíl od jiných snah se stejným cílem (například filtrování obsahu) nevyvolává zdaleka takové kontroverze.
Nicméně jedna kontroverze tu je. Jde o tzv. NSEC záznamy, jejímž účelem je bezpečně klienta informovat o neexistenci hledaného záznamu. Jak už akronym napovídá, obsahuje záznam informaci o „Next SECure“, tedy dalším bezpečném záznamu v zóně, seřazené v kanonickém pořadí, v podstatě podle abecedy. Tato vlastnost je některými „bezpečnostními experty“ chápána jako nepřiměřené bezpečnostní riziko, neboť je možné postupným procházením NSEC záznamů získat celý obsah zóny.
Osobně nechápu, co je na datech, zveřejněných v DNS zóně, tak citlivého, že by mělo být nežádoucí, aby je někdo získal. Bezpečnostní opatření spočívající v obecné neznámosti doménového jména je tak chabé, že snad ani nestojí za řeč; dá se předpokládat, že pokud záznam v DNS existuje, bude ho taky někdo používat a v takovém případě může jeho existenci zjistit každý provozovatel DNS serveru, přes který někdo záznam poptá.
V každém případě k vyřešení tohoto pseudoproblému byl vyvinut záznam NSEC3, který namísto seřazených jmen používá seřazené hashe (Podrobněji například v článku Pavla Satrapy na Lupě). Takové řešení vede k většímu zatížení DNS serverů, to však zřejmě za uklidnění paranoiků stojí. Ostatně právě česká národní doména na tento typ záznamů co nevidět přejde.
EDIT: K přechodu již došlo, níže uvedený postup nezkoušejte. Viz též záznam na blogu NIC.cz.
Máme tedy poslední šanci využít slabiny a vypsat si všechny registrované záznamy v zóně cz. V tomto případě je praktická realizace velmi snadná:
$ dig +short cz. NSEC @b.ns.nic.cz 0.cz. NS SOA RRSIG NSEC DNSKEY
Předchozí příkaz vypsal úplně první záznam v zóně CZ, doménu 0.cz. Můžeme pokračovat dál a podívat se, co následuje za zónou 0.cz:
$ dig +short 0.cz. NSEC @b.ns.nic.cz 0-0.cz. NS RRSIG NSEC
Řečeno slovy Dušana Kleina, nyní již máte dostatek informací, abyste mohli vyrobit skript, který získá obsah celé domény. Pokud ho spustíte, možná narazíte u domény kasuar.cz:
$ dig +short kasuar.cz. NSEC @b.ns.nic.cz www.kasuar.cz. A NS SOA MX AAAA RRSIG NSEC DNSKEY $ dig +short www.kasuar.cz. NSEC @b.ns.nic.cz kasuar.cz. A AAAA RRSIG NSEC
Jak z takového cyklu ven? Musíme využít původní účel záznamu NSEC, zeptat se tedy na neexsitující zónu:
$ dig kasuar0.cz. NSEC @b.ns.nic.cz ; <<>> DiG 9.4.3-P5 <<>> kasuar0.cz. NSEC @b.ns.nic.cz ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 1522 ;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;kasuar0.cz. IN NSEC ;; AUTHORITY SECTION: cz. 900 IN SOA a.ns.nic.cz. hostmaster.nic.cz. 1280660718 900 300 604800 900
Ovšem, takhle jednoduše to nejde. Abychom získali NSEC záznam o následujícím existujícím záznamu, musíme se zeptat s použitím DNSSEC:
$ dig +dnssec kasuar0.cz. NSEC @b.ns.nic.cz ... ;; AUTHORITY SECTION: ... kasuar.cz. 900 IN NSEC kasuistiky.cz. NS DS RRSIG NSEC
Tím máme hotovo. Můj skript běžel zhruba 20 hodin a získal celkem 692867 doménových jmen. Co s takovým seznamem dělat? Netuším :)
napsat sem tu 63 znakovou :o)
http://www.nic.cz/page/771/domen-.cz-je-jiz-700-000.-nejdelsi-ma-63-znaku/
Dobrý nápad: Tady jsou všechny delší než 60 znaků:
akce-naradi-aeg-bosch-black-decker-dewalt-makita-narex-protool.cz.
hryhryhryhryhryhryhryhryhryhryhryhryhryhryhryhryhryhryhryhryhry.cz.
ijavolimveciverejnejetonovaapruhlednastranaasijakotahleadresa.cz.
krasnevanoceahodnestestizdraviiuspechuvnovemroceprejesymblaze.cz.
ktere-maji-pro-sve-nakupy-jen-velke-a-nadnarodni-spolecnosti.cz.
pomozte-zastavit-cenovou-diskriminaci-malych-a-strednich-firem.cz.
prvni-nejdelsi-domena-v-ceske-republice-ktera-ma-prave-63-znaku.cz.
sms-brana-zdarma-eurotel-paegas-oskar-mobil-go-twist-oskarta.cz.
vozik-voziky-vysokozdvizny-vysokozdvizne-manipulacni-technika.cz.
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.cz.
A ještě jak jsem je získal:
while read d; do if [[ ${#d} -gt 63 ]]; then echo $d; fi; done
Jé, Oskar je na Rootu!
[2] No, je vidět, že většina je kvůli SEO, ale obzvláště tu s xxxx bych z vizitky opisovat nechtěl - kdo má vědět, když je to natištěné na papíře, kolik jich je? I když bych to asi tipnul, protože bych předpokládal, že se pokusili zaregistrovat tu nejdelší, co jde.
[4] Ano, to měla být hádanka pro chytré hlavičky :) Problém se dá také obejít použitím serveru c.ns.nic.cz, který pro takové subdomény autoritativní není. V obecném případě ale je třeba předpokládat, že autoritativní server může být autoritativní i pro některou svou subdoménu a pokud bychom programovali skript, musíme to zohlednit.
Myslím, že ne. Ale víte co, hledejte si (LZMA, 2MB).
Teď jen doufám, že obsah DNS není taky nějakým autorským dílem :)
Malá statistika:
163196 domén (23,55 %) obsahuje alespoň jednu pomlčku
23605 domén (3,41 %) obsahuje alespoň jedno číslo
3142 domén (0,45 %) obsahuje „levne“
2174 domén (0,31 %) obsahuje „sex“
1049 domén (0,15 %) obsahuje „hry“
911 domén (0,13 %) obsahuje „porn“
851 domén (0,12 %) obsahuje „zdarma“
To je zaujimave. Na Slovensku zoznam domen zverejnuje priamo SK-NIC - https://www.sk-nic.sk/documents/domeny_1.txt.gz
Radsi to nezverejnujte. Ono to je sice naprosto trivialni, ale jen malo z nas kdo si to umime napsat sami takovy seznam zajima. Na druhou stranu se najde HROMADA BFU a deti, ktery nic lepsiho na praci nemaji a budou dolovat root DNS server(y) jak divi. Mozna by pomohlo, kdybyste sem poslal hotovy seznam, mohlo by to predejit DDoSu (ne)funkcnima pokusama. Ty NIC servery legitimne pouzivame vsichni...
[15.] Nechci, není to nic světoborného, nemá to ošetřené všechny situace, které mohou nastat - upravoval jsem ho za chodu podle nastalých situací. Navíc není žádoucí, aby to každý zkoušel spustit, s ohledem na zatížení serverů CZ.NIC i jiných NICů.
Ale především proto, že po zadání "DNSSEC zonewalk" do Google na mě vypadl už hotový program jménem: DNSSEC Walker. Není tedy nutné znovu objevovat kolo, s výjimkou edukativních příkladů, což byl můj případ. (<i>Ve skutečnosti jsem o existenci toho programu dříve nevěděl, jinak bych asi žádný skript nepsal</i>)
[16.] Ano, souhlasím. Seznam je zveřejněn v [10.]
A je po všem. Zóna cz je podepsaná pomocí NSEC3, přesně podle harmonogramu, takže už si nic nevylistujeme. Zajímalo by mne, kolika lidem dnes přestal „chodit Internet“ s .cz doménami. Osobně vím o Strahově :)
Co o sobě napsat? Absolvent ČVUT FEL, linuxák, síťař. Mimo to se zajímám o elektrotechniku, elektroniku a speciálně elektrické pohony.
Přečteno 57 277×
Přečteno 15 948×
Přečteno 15 860×
Přečteno 15 161×
Přečteno 13 130×