Cryptology Academy · Oppitunti

DNSSEC: DNS-vastausten todentaminen

Opi, miten DNSSEC käyttää digitaalisia allekirjoituksia DNS:n suojaamiseen väärentämiseltä ja välimuistin myrkytyshyökkäyksiltä.

Oppitunti 4/413 vaihetta

DNSSEC: DNS-vastausten todentaminen on ilmainen Cryptology Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Cryptology Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Cryptology Academy-kurssilla on yhteensä 4 oppituntia.

DNS-välimuistin myrkytys: Kaminskyn hyökkäys

Tietoturvatutkija Dan Kaminsky julkisti vuonna 2008 kriittisen hyökkäyksen DNS-resolvereita vastaan. Hyökkäyksessä hyödynnettiin DNS-vastausten pientä 16-bittistä tapahtumatunnistekenttää. Tulvimalla resolveri väärennetyillä vastauksilla, jotka sisälsivät satunnaisia tapahtumatunnisteita, hyökkääjä saattoi tilastollisesti onnistua löytämään laillista vastausta vastaavan tunnisteen ennen oikean vastauksen saapumista. Myrkytetty välimuisti ohjaa kaikki kyseisen resolverin käyttäjät hyökkääjän hallitsemille palvelimille viikoiksi, kunnes välimuisti vanhenee.

Mitä DNSSEC lisää DNS:ään

DNSSEC (DNS Security Extensions) lisää DNS-vastauksiin kryptografisen todennuksen. Jokaiseen DNSSEC-allekirjoitetun vyöhykkeen DNS-tietuejoukkoon liittyy digitaalinen allekirjoitus. Tarkistavat resolverit tarkistavat nämä allekirjoitukset ennen tietueiden hyväksymistä. Väärennetyllä tai muokatulla vastauksella on virheellinen allekirjoitus, joten se hylätään. DNSSEC suojaa välimuistin myrkytykseltä ja vastausten väärentämiseltä, mutta se ei salaa DNS-kyselyitä.

Vyöhykkeen allekirjoitusavain ja avainten allekirjoitusavain

DNSSEC käyttää vyöhykekohtaista kaksitasoista avainhierarkiaa. Zone Signing Key (ZSK) -avainta käytetään yksittäisten DNS-tietuejoukkojen päivittäiseen allekirjoittamiseen. Key Signing Key (KSK) -avain allekirjoittaa vain DNSKEY-tietuejoukon, joka sisältää sekä ZSK:n että KSK:n julkiset avaimet. ZSK voidaan vaihtaa usein, esimerkiksi kuukausittain, kun taas KSK vaihtuu harvemmin, esimerkiksi vuosittain, koska KSK:n tiiviste on rekisteröitävä emovyöhykkeelle ja vaihto on toiminnallisesti monimutkaista.

RRSIG: resurssitietueiden allekirjoitukset

Jokaisella allekirjoitetulla DNS-tietuejoukolla (RRset) on vastaava RRSIG-tietue, joka sisältää kyseisen RRsetin kryptografisen allekirjoituksen. Kun resolveri pyytää DNS-tietuetta, vastaus sisältää sekä tietueen että sen RRSIG-tietueen. Resolveri tarkistaa RRSIG:n vyöhykkeen julkisen avaimen avulla. Allekirjoitus kattaa tietueen sisällön, tyypin, luokan ja vanhenemisajan, mikä estää sekä muokkaamisen että vanhojen kelvollisten allekirjoitusten uudelleentoiston.

DS-tietueet: emo- ja lapsivyöhykkeiden yhdistäminen

DNSSEC:n luottamusketju rakennetaan Delegation Signer (DS) -tietueiden avulla. Kun vyöhyke delegoi alivyöhykkeelle, emovyöhyke julkaisee DS-tietueen, joka sisältää lapsivyöhykkeen KSK:n tiivisteen. Emovyöhykkeeseen luottava resolveri voi tarkistaa, että lapsivyöhykkeen KSK:n tiiviste vastaa DS-tietuetta, jolloin lapsivyöhykkeen allekirjoituksiin voidaan luottaa. Ketju ulottuu DNS:n juurivyöhykkeeltä TLD-tasojen kautta yksittäisiin verkkotunnusvyöhykkeisiin.

DNSKEY-tietue: vyöhykkeen julkisen avaimen julkaiseminen

Jokainen DNSSEC-allekirjoitettu vyöhyke julkaisee julkiset allekirjoitusavaimensa DNSKEY-tietueissa. DNSKEY-tietueita on yleensä kaksi: yksi ZSK:lle ja yksi KSK:lle. KSK:n julkisen avaimen tiiviste rekisteröidään DS-tietueena emovyöhykkeelle, mikä ankkuroi vyöhykkeen luottamuksen emovyöhykkeeseen. Juurivyöhykkeen KSK:n tiiviste on kovakoodattu tarkistaviin resolvereihin lopullisena luottamusankkurina, jota kutsutaan juurivyöhykkeen luottamusankkuriksi (Root Zone Trust Anchor).

Luottamusketju juuresta lehteen

DNSSEC-tarkistus alkaa juurivyöhykkeeltä, jonka KSK:n luottamusankkuri on kovakoodattu resolvereihin. Juurivyöhykkeen DNSKEY:tä käytetään sen RRSIG:n tarkistamiseen, mikä todentaa TLD-tunnusten, kuten .com:n, DS-tietueet. .com-vyöhykkeen DNSKEY tarkistaa yksittäisten verkkotunnusten DS-tietueiden RRSIG:n. Tämä kryptografinen tarkistusketju ulottuu juuresta kyselyn kohteena olevaan verkkotunnukseen ja varmistaa jokaisen linkin aitouden.

DNSSEC-tarkistus resolvereissa

Kun DNSSEC-tarkistusta tekevä resolveri vastaanottaa vastauksen, se tarkistaa koko luottamusketjun. Se noutaa DNSKEY-tietueet, tarkistaa RRSIG-allekirjoitukset, seuraa DS-tietueita juuren luottamusankkuriin asti ja tarkistaa allekirjoitusten vanhenemisajat. Jos tarkistus epäonnistuu, resolveri palauttaa SERVFAIL-virheen mahdollisesti väärennettyjen tietueiden sijaan. Useimmat suuret julkiset resolverit, kuten Cloudflaren 1.1.1.1 ja Googlen 8.8.8.8, suorittavat DNSSEC-tarkistuksen.

DNSSEC:n käyttöönoton haasteet

DNSSEC:n käyttöönotto on ollut hidasta sen tietoturvaeduista huolimatta. Avainten vaihto edellyttää koordinointia vyöhykkeiden ylläpitäjien ja ylempien rekisterien välillä. Virhe KSK:n vaihdon aikana voi tehdä koko vyöhykkeestä saavuttamattoman. ICANN:n juuren KSK:n vaihto vuonna 2019 vaati vuosien valmistelun. Allekirjoitukset kasvattavat vyöhykkeen kokoa merkittävästi. Ylläpitäjien on toteutettava automaattinen avainten vaihto ja valvonta. Nämä toiminnalliset haasteet ovat saaneet monet pienemmät verkkotunnusten ylläpitäjät välttämään DNSSEC:tä.

DNSSEC ei salaa DNS-liikennettä

Yleinen väärinkäsitys on, että DNSSEC suojaa DNS-kyselyiden yksityisyyttä. Se ei tee sitä. DNSSEC todentaa vain vastaukset; kyselyt ja vastaukset kulkevat edelleen salaamattomina UDP-paketteina portissa 53. Kuka tahansa verkkoa tarkkaileva voi yhä nähdä jokaisen kysellyn verkkotunnuksen. DNS-over-TLS (DoT) ja DNS-over-HTTPS (DoH) suojaavat kyselyiden yksityisyyttä salaamalla DNS-liikenteen. DNSSEC ja DoH/DoT täydentävät toisiaan: toinen tarjoaa aitouden ja toinen luottamuksellisuuden.

DNSSEC tosielämässä

Vuonna 2024 noin 90 prosenttia DNS:n juurivyöhykkeestä ja tärkeimmistä TLD-tunnuksista oli allekirjoitettu DNSSEC:llä. Kuitenkin vain noin 20–30 prosenttia yksittäisistä verkkotunnuksista on allekirjoitettu. Selainten ja sovellusten DNSSEC-tarkistuksen käyttöönotto vaihtelee. DNSSEC:n tietoturvahyöty on suurimmillaan, kun se yhdistetään DANEen (DNS-Based Authentication of Named Entities), joka käyttää DNSSEC:tä TLS-varmenteiden sormenjälkien julkaisemiseen ja antaa asiakasohjelmille mahdollisuuden tarkistaa varmenteet tukeutumatta yksinomaan varmentajiin (CA:t).

DNSSEC:n luottamusketju

Miten DNSSEC-tarkistusta tekevä resolveri muodostaa luottamuksen verkkotunnuksen DNS-tietueisiin alusta alkaen?

DNSSEC: tärkeimmät opit

DNSSEC lisää DNS-vastauksiin kryptografiset allekirjoitukset estääkseen välimuistin myrkytyksen ja vastausten väärentämisen. ZSK-avaimet allekirjoittavat tietuejoukot, KSK-avaimet DNSKEY-tietueet, ja DS-tietueet muodostavat luottamusketjun emo- ja lapsivyöhykkeiden välille. Tarkistus alkaa kovakoodatusta juurivyöhykkeen luottamusankkurista. DNSSEC ei salaa DNS-liikennettä; DoH ja DoT tarjoavat yksityisyyttä, kun taas DNSSEC tarjoaa aitouden. Toiminnallinen monimutkaisuus, kuten avainten vaihto, on hidastanut laajaa käyttöönottoa.

Aloita maksutta

Opi Cryptology Academy tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
67
Oppitunnit
261

Usein kysytyt kysymykset

Onko oppitunti ”DNSSEC: DNS-vastausten todentaminen” ilmainen?

Kyllä – oppitunnin ”DNSSEC: DNS-vastausten todentaminen” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Cryptology Academy-kurssin, päivitä CoddyKit PROhon. Cryptology Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”DNSSEC: DNS-vastausten todentaminen”?

Opi, miten DNSSEC käyttää digitaalisia allekirjoituksia DNS:n suojaamiseen väärentämiseltä ja välimuistin myrkytyshyökkäyksiltä. Harjoittelet Cryptology Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Cryptology Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Cryptology Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.

Kuinka kauan ”DNSSEC: DNS-vastausten todentaminen”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Cryptology Academy-oppitunnilla?

Kyllä. Jokainen Cryptology Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Mikä tekee protokollasta turvallisen
  2. SSH: etäkäytön suojaaminen
  3. SFTP ja SCP: turvallinen tiedostonsiirto
  4. DNSSEC: DNS-vastausten todentaminen
← Takaisin: Cryptology Academy