Friday 7 November 2008

Al-Kaida DNS: bojownicy DNSSEC

Niewątpliwie to, co bezpośrednio dotyczy abonentów domen .pl, firm rejestrujących domeny (takich jak NetArt, home.pl, Az.pl, Active 24, Onet.pl i wielu innych), to kwestia DNSSEC. Środa 5 listopada 2008 roku na spotkaniu ICANN to niewątpliwie dzień DNSSEC, a dokładnie wielkie pranie mózgów, że DNSSEC uratuje świat, a przynajmniej zabezpieczy DNS przed wieloma zagrożeniami.

Co ciekawe, te zagrożenia są hipotetyczne i proste przeciwdziałanie im (jak rozdzielenie funkcji autorytatywnych i rekursywnych w DNS-ie) rozwiązuje problem. Można nawet powiedzieć, że pojawiła się grupa ludzi (nazwijmy ich dla ustalenia uwagi „Al-Kaida”), która za wszelką cenę chce, aby został „podpisany” rootserwer oraz aby rejestry narodowe i gTLD wdrożyły DNSSEC. Osoby, które miały okazję słuchać Steve'a Crockera czy innych przedstawicieli tej Al-Kaidy, wiedzą, o czym mówię...

Ale wracając do kwestii DNSSEC, która była tak często podnoszona na ICANN. Aby DNSSEC zadziałał, musi zostać wdrożony przez:

* ICANN i VeriSign na poziomie root,
* wszystkie rejestry ccTLD i gTLD,
* rejestratorów domen, a abonenci zostają „uświadomieni”, co to DNSSEC,
* wszystkich ISP,
* użytkowników przez zainstalowanie systemów operacyjnych na swoich domowych komputerach, które obsługują DNSSEC.

Wdrożenie na poziomie „root” wydaje się relatywnie proste, chociaż dyskusja trwa już trzy lata. Załóżmy też, że problemów z wdrożeniem (poprawnym) nie będą miały rejestry ccTLD. Załóżmy także, że rejestratorzy domen (a więc u nas to prawie 100 podmiotów na czele z wymienionymi na początku) będą obsługiwały DNSSEC i przekonają klientów rejestrujących domeny (i zmieniających delegacje), że muszą podpisywać swoje strefy (domeny). Pozostają użytkownicy Internetu, 1,4 miliarda ludzi...

DNSSECC nie ma sensu, jeśli cała droga od komputera użytkownika przez cache DNS serwer należący do ISP oraz pozostałe serwery DNS nie jest zabezpieczona. No i pytanie, czy najpopularniejszy OS na rynku, czyli Windows (zarówno w wersji serwerowej, jak i desktopowej), będzie obsługiwał DNSSEC? Według przedstawiciela Microsoftu Windows Server 2008 R2 i Windows 7 będą dostępne za trzy lata (czytaj: za cztery lata). Czyli w roku 2012 Microsoft rozpocznie sprzedaż nowych Windows. Można oczekiwać, że za kolejne 5 lat (2017 rok?) ok. 30–40% komputerów wykorzystujących Windows będzie wyposażone w obsługę DNSSEC (bo taki jest cykl wymiany systemów operacyjnych przez użytkowników końcowych, zarówno biznesowych, jak i indywidualnych).

Pozostają takie kwestie, jak co robić, jeśli np. ISP nie obsługuje DNSSEC – czy wtedy komputer użytkownika podłączającego się przez takiego ISP powinien odmówić otwarcia strony WWW czy nie? Ta wręcz banalna kwestia nie jest ustandaryzowana, mimo że chcemy mieć DNSSEC w „root” serwerze...

No ale załóżmy, że mamy ten DNSSEC, domeny są podpisane, serwery DNS obsługują DNSSEC. Co dzięki temu osiągamy?

Wiemy, że jeśli zapytamy o adres www.mójBANKon-line.pl, to odpowiedź DNS, zwrócona do naszego komputera będzie zawierała niezmienioną informację, ale nadal nie będziemy wiedzieli, do kogo faktycznie należy strona WWW odpowiadająca domenie „mójBANKon-line.pl” i czy nie jest to jakaś strona phishingowa (bo nasz bank ma faktycznie domenę „mójBANKonline.pl”, a nie „mójBANKon-line.pl”). Oczywiście możemy to sprawdzić w WHOIS, ale nie mamy pewności, że dane w WHOIS są prawdziwe. NASK czy każdy inny rejestr TLD może weryfikować wszystkie dane w WHOIS, ale wtedy proces rejestracji będzie ręczny i będzie trwał kilka dni, podobnie jak to ma miejsce przy wystawianiu certyfikatów SSL – pytanie, czy rejestratorzy domen chociażby w Polsce chcieliby, aby wydłużyć proces rejestracji domeny do 2 tygodni oraz żądać dokumentów od abonentów.

Rozwiązaniem powyższego problemu, istniejącego od lat, są certyfikaty SSL, które faktycznie wystawiane są ręcznie, a proces trwa kilka dni (lub nawet tygodni dla certyfikatów typu Extended Validation). Jeśli więc zostaniemy skierowani na stronę obsługiwaną przez przestępców (phisherów), to sprawdzając certyfikat, będziemy mogli sprawdzić, czy faktycznie strona, na której jesteśmy, należy do banku. A DNSSEC nie da nam takiej pewności, ponieważ phisherzy też będą potrafili poprawnie wygenerować klucze, podpisać strefę itd. i nie mamy żadnej możliwości sprawdzenia, do kogo należy strona WWW. Będziemy mieli natomiast fałszywe poczucie bezpieczeństwa, ale wspomniani przyjaciele Al-Kaidy nie interesują się tym – ich interesuje tylko podpisanie „root”...

Mała demonstracja:

Jeśli ktoś wejdzie na stronę www.dns.pl po HTTPS, a więc na https://www.dns.pl/, to dostanie np. w Mozilla Firefoksie następującą informację:



Nazwa firmy na zielonym pasku to właśnie certyfikat typu Extended Validation, a sprawdzając dane kryjące się za tym certyfikatem, mamy pewność, do kogo należy strona:



Gdybyśmy zamiast SSL wykorzystali DNSSEC, nie mamy szans na uzyskanie takich informacji...

Zobaczymy, jak potoczą się losy DNSSEC. Na chwilę obecną wdrożyły go (ale tylko fragmentarycznie, bez całego procesu obsługi certyfikatów) rejestry .se, .bg oraz .cz. Jeśli natomiast chodzi o ISP, to w Europie DNSSEC obsługuje tylko Telia w Szwecji.

Więcej o DNSSEC od przedstawicieli Al-Kaidy można przeczytać na stronie ICANN.