Hijack et domæne
Ca. 607 ord.
Af Ole Tange
Et af de systemer, er binder Internettet sammen, er DNS.
Sikkerheden mod forfalskede data i DNS ikke særlig
høj. Det er derfor muligt (ulovligt) at omdirigere trafik
fra et domæne.
Når man surfer ind på en web-side, angiver man et
navn. Da maskiner ikke er så gode til at håndtere
navne, oversættes navnet til et IP-nummer.
Denne oversættelse af navne til IP-numre foretages af
Domain Name System (DNS).
FIG 1
+(rod)
/ \
/ \
/ \
/ \
/ \
.com + + .dk
/ \ / \
/ \ / \
/ \ / \
/ \ / \
.yahoo + .google + + .uni-c + .jubii
/ / |\ \
/ / | \ \
/ / | \ \
www www www danpost www
Et hieraki af domæner
DNS består af et hieraki af domæner. Fig. 1 er en lille
del af DNS. Ved hver '+' sidder en nameserver, som ved alt om det
givne domæne, således ved ['+' .uni-c] alt om
domænet uni-c.dk.
Find en adresse
Når en PC skal finde ud af IP-adresse på www.uni-c.dk,
spørger den sin lokale nameserver (Følg med på
fig 2). Denne nameserver ved hvilke nameserere, der betyrerer
[+(rod)]. Den spørger så nameserverne for (rod): "Hvad
er IP-adressen på www.uni-c.dk?". (Rod)-serverne svarer: "Det
ved jeg ikke, men jeg ved hvem, der bestyrer .dk". Den lokale
nameserver spørger nu .dk-serverne: "Hvad er IP-adressen
på www.uni-c.dk?". .dk-serverne svarer: "Det ved jeg ikke,
men jeg ved hvem, der bestyrer uni-c.dk". Den lokale nameserver
spørger nu .uni-c.dk-serverne: "Hvad er IP-adressen på
www.uni-c.dk?". .uni-c.dk-serverne svarer: "Adressen på
www.uni-c.dk". Til slut besvarer den lokale nameserver PCen:
"Adressen på www.uni-c.dk".
FIG 2
[PC] --> [Lokal NS] "www.uni-c.dk?"
[Lokal NS] --> [(rod) NS] "www.uni-c.dk?"
[Lokal NS] <-- [(rod) NS] "NS for .dk er .dk-NS"
[Lokal NS] --> [.dk-NS] www.uni-c.dk?"
[Lokal NS] <-- [.dk-NS] "NS for .uni-c.dk"
[Lokal NS] --> [.uni-c.dk-NS] "www.uni-c.dk?"
[Lokal NS] <-- [.uni-c.dk-NS] "Adressen på www.uni-c.dk"
[PC] <-- [Lokal NS] "Adressen på www.uni-c.dk"
Sæt fart i tingene
Da oventstående kan tage lang tid, bliver alle resultater
cachet af din lokale nameserver. Så næste gang den
bliver spurgt om www.uni-c.dk, behøver den ikke kontakte
alle de andre nameservere igen, men giver svaret omgående.
Dataene blive kun cachet et vist stykke tid (Time To Live (TTL)).
TTL er bestemt af domænets nameservere. Med andre ord:
nameserverne for .uni-c.dk bestemmer hvor længe din lokale
nameserver må cache informationen.
Lokal forurening
Man kan snyde sin lokale nameserver til at give en forkert adresse
for www.offer.dk. Det gøres ved at spørge den lokale
nameserver om www.offer.dk. Vi går ud fra, den lokale
nameserver ikke har information om www.offer.dk. Den skal derfor
på et tidspunkt ud og spørge .offer.dk-serverne. Mens
den lokale nameserver venter på svar fra .offer.dk-serverne,
bombarderer vi den lokale nameserver med et falsk svar. Svaret
indeholder den forkerte adresse og skal se ud som om, det kommer
fra .offer.dk-serverne. Hvis man samtidig giver svaret en lang TTL,
så vil den lokale nameserver cache informationen i
længe.
Global forurening
Hele verden kan snydes, hvis man foretager lokal forurening af alle
lokale nameservere i verden. Dette er naturligvis ikke
overkommeligt med håndkraft, men der skal ikke et stort
program til at foretage dette.
Løsning
Det er nemt at fjerne forureningen fra ens lokale nameserver.
Nameserverprogrammet skal blot genstartes, derved tømmes den
cache, og man starter dermed med en ren tavle. Men da man er
afhængig af alle de andre nameservere ude på nettet,
så er der en risiko for at man spørger en forurenet
nameserver. |