64k her og 64k der

I mit forrige indlæg brokkede jeg mig over bankernes tåbelige holdning til kreditkortsikkerhed, Idag skal det handle om DNS for det statistiske argument er lige så tåbeligt.

Nu hvor Dan Kaminsky har fået sit limelight på black-hat konferencen, vil jeg gerne give mit ufiltrerede besyv med.

Dan gør meget ud af at understrege at TTL, Time To Live, ikke er en sikkerhedsfeature og det har han helt ret i, men problemet stikker en gang dybere: DNS er ikke en sikkerhedsfeature.

Når min browser leder efter "www.version2.dk", er der ikke skyggen af sikkerhed for at den får et korrekt svar.

Undervejs er der gjort forskellige sporadiske forsøg på at holde rede på hvem der er hvem, f.eks hos DK-Hostmaster.

Den helt centrale tese der gør at internettet virker så godt som det gør, "End to end princippet", blev naglet fast i 1981 af Saltzer, Reed og Clark.

Argumentet er kort og godt at de to end-noder er nødt til at antage at alle de led der er imellem dem er dumme, inkompetente eller ude på at snyde.

Derfor skal checksum i netværksprotokoller foretages hos sender og modtager istedet for at forlade sig på at en eller anden netværksboks gør ting rigtigt undervejs.

Derfor skal man ikke bare blindt antage at en SSH host-key er god nok, hvis man vil være sikker på at logge ind på den rigtige host.

Og derfor er DNS systemet fundamentalt usikkert, for der er intet i pakkerne der giver mig en chance for at checke om indholdet har noget med virkeligheden at gøre.

Dans opdagelse og den efterfølgende febrilske patch aktivitet hjælper lidt på sandsynlighederne, men der er stadig ingen fundamental sikkerhed involveret i eler indbygget i DNS protokollen.

Når din browser checker et SSL certifikat bruger den DNS, når du får tilsendt en email med et password fra PayPal eller google bruger mailprogrammerne DNS, alt hvad du foretager dig på nettet afhænger af at DNS giver det rette svar.

Der findes en udviddelse der hedder DNSSEC, den komer vi til at høre mere til nu, hvor man begynder at sende digitale signaturer rundt i DNS pakkerne.

DNSSEC gør tingene lidt vanskeligere, der er certifikater der skal registreres og signaturer der skal opdateres (regelmæssigt!) men det er ikke noget den gennemsnitlige DNS administrator ikke kan finde ud af.

DNSSEC lapper de fleste af de tekniske huller, når man om nogle år når frem til at turde implementere protokollen på de store domæner.

Pt er status at det svenske top-domæne, .se, er et af de få domæner der kan beskyttes med DNSSEC.

DIFO og DK-Hostmaster har muligheden for at implementere DNSSEC for .dk domænet, men har ingen planer om det.

Til mit kendskab stillede IT&Telestyrelsen ikke nogen krav om DNSSEC i deres nylige udbud.

Men det kan jo være at det kommer om nogle års tid.

I mellemtiden er angrebet blevet gjort ca. 64000 gange sværere at gennemføre (ikke 65536 gange, de nederste UDP porte er reserverede).

Det flyttede angrebet fra trivielt til halv-svært og det er ikke godt nok.

phk

PS: Nej, man er ikke i sikkerhed blot fordi man er bag en firewall eller har en virusscanner. Der er ingen der er sikre.

Kommentarer (6)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Anonym

DNSSEC er desværre ikke tilgængeligt for alle topdomæner, dog på .SE, men det er også vigtigt at vide at hvis man kører en uddateret ISC BIND server, under version 9.3.X skulle jeg mene, så er der også sikkerhedshuller i DNSSEC, og det er jo heller ikke godt :)

Nu hvor vi måske forhåbentligt snart får fuldt understøttet IPv6 i Danmark, hvorfor indfører de så ikke en udvidelse altså opdatering af DNS Protokollen som så både kan køre den gamle, men også den nye indtil alle kører på den nye og så smide den gamle væk? I den nye kunne der jo så indføres Checksum hos både navneservere såvel som resolverne som du jo skrev om.

Jeg ved dog godt det ikke bare sådan er ligetil at lave en ny protokol eller en opdatering, men altså nu har vi haft DNS protokollen i meget lang tid uden den sådan rigtig er blevet opdateret, så det burde snart være på tide ;)

  • 0
  • 0
Klaus Elmquist Nielsen

DNSSEC lyder bestemt som en god ide.

Der er bare to problemer: Kompromiterede klienter og kompromiterede servere.

Hvis klienten er kompromiteret er DNSSEC ikke til nogen nytte da der herved ikke er nogen garanti for at DNSSEC rent faktisk benyttes, endsige giver de korrekte svar tilbage til brugeren. Tilsvarende vil en kompromiteret server der er en del af et DNSSEC netværk ikke være nogen garanti for korrekte svar til dens klienter.

Sagt med andre ord vil DNSSEC klart være en forbedring, idet det bliver sværre at hacke DNS protokollen, men langt fra en fuldstændig løsning på internetsikkerhed. Og da slet ikke i en verden med så mange kompromiterede klienter.

Desuden vil den uautoriserede del af internettets "forretningsliv" blot finde andre veje til at opnå deres fortjeneste på andres bekostning.

  • 0
  • 0
Poul-Henning Kamp Blogger

Der er bare to problemer: Kompromiterede klienter og kompromiterede servere.

Nu må du lige holde ørene lige i munden.

Hvis maskiner er kompromiterede er alt håb ude og der er DNS det mindste af problemerne.

Men med DNS usikkerhed, er selv ikke maskiner under hård kontrol istand til at sikre sig at de taler med den ønskede modpart.

men langt fra en fuldstændig løsning på internetsikkerhed

Der findes ikke nogen fuldstændig løsning på internetsikkerhed og der kommer aldrig til det, på nøjagtig samme vis som der ikke findes en fulstændig løsning for grænsesikkerhed, trafiksikkerhed eller bygningssikkerhed.

Poul-Henning

  • 0
  • 0
Axel Hammerschmidt

Lige som med alt andet, så gælder det for virus etc at "One size doen't fit all". Især den del af "infektionen" der går under betegnelsen Social Engineering.

Selv om jeg er inde på Windows Update, klikker jeg rundt for at læse om de forskellige patches. Jeg vil gerne vide hvad det er jeg får tilbudt inden jeg accepterer.

Det vil efter min mening være tilstrækkeligt til at opdage, om der er "ugler i mosen".

Naturligvis overlader jeg heller ikke sikkerheden på min Windows PC til et anti-virus program.

  • 0
  • 0
Henrik Kramshøj Blogger

PHK du skrev:

I mellemtiden er angrebet blevet gjort ca. 64000 gange sværere at gennemføre (ikke 65536 gange, de nederste UDP porte er reserverede)."

Tjoeh, det lyder ikke af meget, men da angrebet krævede en DEL pakker, så bliver 64000 gange sværere altså en DEL*64000 pakker, som alt i alt giver lidt tid at løbe på.

Jeg synes personligt det er rart at der er kommet lidt "hype" på denne sag, da den om ikke andet sætter fokus på DNS servere. Så fra at vi har masser af små maskiner som passer sig selv med få domæner og gammel software - inklusiv gammel OS software og eventuelt 2-3 (eller flere) remote root exploitable services kørende - så får vi måske opdateret et par af dem til nyere software og dermed sikret vores infrastruktur bare en smule.

Jeg vil klart anbefale kunder der har problemer med at køre en opdateret DNS server at skifte til en fornuftig DNS udbyder, eventuelt GratisDNS.

Alternativt køre en OpenBSD maskine som DNS server og bruge de få ressourcer det kræver at opdatere den hvert halve eller hele år.

Opdatering af en maskine der kører DNS på OpenBSD vil således koste ca. 1-2 timer hvert halve eller hele år, inklusiv at brænde en før og efter kopi af hele systemet på en CD-R.

Mht DNSSEC har det LAAAAANGE udsigter, der er for få der bekymrer sig om dette.

  • 0
  • 0
Søren Hansen

Det er præcis det, jeg har forsøgt at forklare folk. Kvalitativt er intet ændret i forhold til for et par måneder siden.

Hvis du på noget tidspunkt har foretaget dig noget hvis sikkerhed afhang på nogen som helst måde af, at du fik et korrekt svar tilbage fra en nameserver, du ikke selv er herre over, så har du gjort det forkert.

Kvantitativt set er det da ganske rigtigt blevet noget nemmere for diverse tåber, der finder den slags morsomt, eller for ondsindede personer at forfalske DNS svar, men det har på intet tidspunkt været sikkert. Hvem siger din ISP's DNS ikke er komprommiteret på en eller anden vis? Hvem siger, at DK Hostmasters DNS ikke er det? Eller en anden af de talrige DNS servere, du direkte eller indirekte interagerer med hver eneste dag?

Helt alvorligt: Hvis du foretager dig noget som helst, hvor sikkerheden på en eller anden vis afhænger af korrektheden af DNS svar, så gør du det forkert.

  • 0
  • 0
Log ind eller Opret konto for at kommentere