Locked History Actions

Domain Name System Security Extensions

Domain Name System Security Extensions

DNSSEC

Domeno vardo sistemos saugos patobulinimas.


DNSSEC (angl. Domain Name System Security Extensions) - Tai protokolas, skirtas padidinti domeno vardų sistemos saugumą.


DNSSEC sukuria papildomą apsaugą, kuri suteikia galimybę kompiuteriams patikrinti ar IP adresas, kurį jie gauna, yra tikslus ir yra iš patikimų vardų serverių bei užtikrina, kad interneto svetainės būtų registruojamos ir tam tikru skaitmeniniu būdu „ženklinamos“. Iš esmės tai yra pačiame internete integruota saugumo priemonė, kuriai veikiant tam tikros svetainės adresą surinkęs vartotojas patenka būtent į tą svetainę, o ne į piratinį jos „kloną“. Į DNSSEC įtraukti dauguma pagrindinių interneto serverių. Jei pasaulyje kada nors būtų įvykdyta globali kibernetinė ataka, sistema automatiškai nutrauktų ryšį su šiais svarbiausiais serveriais, taip užkirsdama kelią didesnio masto pažeidimams. DNSSEC standartas prideda saugumo funkcijų DNS protokolui ir yra skirtas apsisaugoti nuo tokių atakų prieš DNS, kaip DNS kaupyklės teršimas (DNS cache poisoning). DNSSEC užtikrina DNS duomenų autentiškumą, duomenų vientisumą bei autentifikuotą egzistavimo atmetimą (authenticated denial of existence), tačiau tam būtini DNS protokolo pakeitimai. DNSSEC prideda 4 naujus DNS įrašų tipus: Resource Record Signature (RRSIG); DNS Public Key (DNSKEY); Delegation Signer (DS); Next Secure (NSEC).


www.en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions

DNSSEC PLAČIAU


Srities vardų struktūra DNS (ang. Domain Name System) yra viena iš kertinių interneto dalių. Be šios paslaugos naršymas internete taptų itin nepatogus. DNS paslauga užtikrina, kad interneto mazgų vardiniai adresai būtų išversti į skaitinius IP adresus. Kuriantis internetui jo teikiamų paslaugų saugumas nebuvo didžiausias prioritetas, todėl DNS paslauga buvo sukurta be papildomų saugumo priemonių. Nors nuo interneto kūrimo pradžios praėjo daug laiko, tačiau DNS paslauga yra pažeidžiama ir šiandien ir šie pažeidžiamumai gali būti išnaudoti programišių. Pasinaudojus DNS paslaugos pažeidžiamumu programišiai gali nukreipti vartotojo srautą į vietas į kurias vartotojas nenori patekti ar panašiai. DNS paslaugos pažeidžiamumams ištaisyti 2006 m. IETF (ang. Internet Engineering Task Force) pasiūlė DNS paslaugos praplėtimą pavadintą DNSSEC (ang. DNS Security Extensions). Šiame namų darbe yra nagrinėjamas DNSSEC paslaugos poreikis bei veikimo principas. Visų pirma trumpai apžvelgta kaip veikia įprasta DNS paslauga, pateikti kelių žinomų atakų, išnaudojusių DNS paslaugos pažeidžiamumą, pavyzdžiai bei išnagrinėta kaip veikia DNSSEC saugumo papildymai skirti DNS paslaugai.

DNS SAUGUMO SPRAGOS IR ATAKŲ PAVYZDŽIAI


DNS protokolas neturi jokių sagumo savybių. Literatūroje yra išskiriami šie DNS protokolo pažeidžiamumai [1]: 1. DNS pranešimai nėra šifruojami dėl to nėra konfidencialūs. Tai reikšia, kad perimus DNS pranešimus, programišius gali nuskaityti DNS pranešimų turinį ir sudaryti dažniausiai vartotojo naudojamų vardų sąrašą bei sudaryti vartotojo profilį. Programišiui tai gali padėti pasirengti ateities atakoms prieš vartotoją. 2. Programišiai gali perimti DNS pranešimus, juos pakeisti ir pristatyti vartotojui kaip originalų DNS serverio atasakymą. Tai reiškia, kad DNS pranešimai neužtikrina DNS pranešimų integralumo ir autentiškumo. Pasinaudojus šiuo pažeidžiamumu, vartotojas gali būti nukreipiamas į ne tuos mazgus internete į kuriuos norima patekti, o į tuos į kuriuos programišius nori, kad vartotojas patektų. 3. DNS serveriai gali būti DDOS (angl. Distributed Denial Of Services) atakų taikiniais. Tokiu būdu DNS serveris gali būti nebepasiekiamas vartotojo ir vartotojo naršymas internete tampa labai apribotas.

DNS protokulu 2011 m. pasinaudojo Estijos nusikalteliai veikę per įmonę Rove Digital“ [3]. Įmonė išplatino kenkėjišką programą, kuri aukų kompiuteriuose pakeisdavo DNS kliento nustatymus ir juose nurodydavo netikrų DNS serverių IP adresus. Šiuos nurodytus netikrus DNS serverius kontroliavo nusikaltėliai ir per juos nukreipdavo vartototojus į klaidingus puslapius. Tokiu būdu nusikaltėliai prie vartotojo prašytame puslapyje reklamas pakeitė į savo reklamas [4]. Tokiu būdu buvo neteisėtai užsidirbta apie 14 milijonų JAV dolerių. Nusikalteliai buvo sulaikyti FBI operacijos Ghost Click“ metu 2011 metais. Įdomu tai, kad nusikaltėlių naudoti netikri DNS serveriai buvo išjungti tik po metų, nes buvo baiminamasi, kad daugiau nei 300 tūkst. užkrėstų interneto vartotojų prarastų prieigą prie interneto jeigu netikri DNS serveriai būtų išjungti iš karto [5]. Svarbu pabrėžti, kad nuo šios atakos nebūtų apsaugojęs DNSSEC DNS saugumo papildymas, kadangi šiuo atveju buvo pakeista aukų kompiuterių DNS sprendėjų konfigūracija, o ne perimti ar pakeisti DNS pranešimai. Dar vienas DNS pranešimų autentiškumo ir integralumo spragų panaudojimo pavyzdys yra didžioji Kinijos ugniasienė (angl. The Great Firewall of China). Į vartotojo DNS priešatmintyje (angl. cache) saugomus įrašus bandoma įrašyti sugadintus ar netirkus DNS įrašus. Tokiu būdų vartotojas negali pasiekti norimo mazgo tinkle ir negali prieiti prie tinklalapių, prie kurių Kinijos valdžia nenori, kad jos interneto vartotojai prieitų.

DNSSEC VEIKIMAS


DNSSEC veikimas yra paremtas skaitmeninių sertifikatų, paremtų viešojo rakto kriptografija, naudojimu [7]. Svarbu pabrėžti, kad ne DNS pranešimai yra pasirašomi skaitmeniniais sertifikatais, o DNS duomenys yra pasirašomi sertifikatu. Kiekviena DNS zona turi viešojo ir privataus raktų porą. Kiekvienos DNS zonos savininkas naudoja privatų raktą DNS įrašų pasirašymui. Tuo tarpu DNS zonos viešasis raktas yra pasidalinamas su visais tos zonos vartotojais. Taip kiekvienas tos zonos DNS įrašo gavėjas gali patikrinti ar gautas DNS įrašas yra tikras ar ne. Taip yra išsprendžiama svarbi DNS saugumo spraga, kuri leidžia DNS sprendėjui (angl. DNS resolver) įsitikinti, kad priimta informacija tikrai buvo siūsta iš tos DNS zonos iš kurios ir buvo tikimasi atsakymo bei įsitikinti, kad priimta informacija iš tos DNS zonos nebuvo pakeista. Taip pat svarbu panagrinėti kaip galima pasitikėti, kad DNS zonos pasidalintas viešasis raktas yra patikimas. Ši problema yra išsprendžiama, kad kiekvienos žemesnės zonos viešasis raktas yra pasirašomas aukštesnės zonos viešuoju raktu. Tai reiškia, kad jeigu DNS sprendėjas pasitiki šakninės zonos viešuoju raktu, jis gali pasitikėti viršutinės (angl. top) zonos viešuoju raktu, kuris yra pasirašytas šakninės zonos. Ši viešuojų raktų pasirašymo grandinė yra vadinama ,,Pasitikėjimo grandine“ (angl. Chain of trust). Dažniausiai kiekvienas DNS sprendėjas pasitiki tik vienu, šakninės zonos viešuoju raktu, ir tokiu būdu galima patikrini visų DNS medyje esančių įrašų autentifiškumą. Kad būtų įgyvendintas DNSSEC papildymas DNS resurso įraše atsiranda šie papildomi laukai [8]:

• RRSIG (angl.recource record signature) – resurso įrašo parašas – šiame lauke yra saugomas DNSSEC parašas įrašo rinkiniui. DNS sprendėjas pagal šį parašą tikrina su viešuoju raktu saugomu DNSKEY lauke.

• DNSKEY – šiame įraše saugomas viešasis raktas, kurį DNS sprendėjas naudoja patikrinti DNSSEC parašą saugoma RRSIG lauke. • DS (angl. delegetaion signer) – Šiame įraše yra saugojamas aukščiau esančios (angl. parent) DNS zonos vardas

• NSEC – Nurodo kitą DNS vardą esantį toje DNS zonoje. Dėl galimo kito DNS vardo išsiaiškino DNSSEC atnaujinime yra pakeistas NSEC3 ir NSEC3PARAM laukais. Svarbu pabrėžti tai, kad jeigu DNS sprendėjui nepavyksta įsitikinti gautos DNS užkalausos tikrumu DNS atsakymo pranešimui yra nustatomas ,,SERVFAIL“ atsakymo kodas (angl. response code)

APIBENDRINIMAS


Apžvelgtas DNS protokolo būtinumas, apibendrintas jo veikimas. Pastebėta, kad literatūroje yra pabrėžiama, kad DNS protokolas turi kelias esmines saugumo spragas, kurios negali užtikrinti DNS pranešimų autentiškumo, konfidencialumo bei DNS paslauga gali būti lengvai paveikta DDOS atakų. Darbo metu pateikti kelių atakų pavyzdžiai, kada buvo išnaudotos DNS saugumo spragos ar pats DNS protokolas. Taip pat išnagrinėtas DNS protokolo saugumo papildymas DNSSEC, kuris sprendžia svarbų DNS protokolo pažeidžiamumą – DNS pranešimų autentiškumo problemą. Taip pat verta pabrėžti, kad DNSSEC saugumo papildymas neužtikrina DNS pranešimų konfidiencialumo.


NAUDOTA LITERATŪRA


1. Forouzan B. A.;, Fegan S. C. 2007. Data Communications and Networking – 4th ed. McGraw – Hill Higher Education. 1134 p. ISBN 978-0-07-296775-32.

2. Straipsnis apie DNS [interaktyvus] [žiūrėta: 2019-03-17]. Prieiga per internetą: < https://lt.wikipedia.org/wiki/DNS >.

3. Rove digital veiklos schema [interaktyvus] [žiūrėta: 2019-03-17]. Prieiga per internetą: <https://blog.trendmicro.com/trendlabs-security-intelligence/the-rise-and-fall-of-rove-digital-graphic/>.

4. DNS changer kenkėjiškos programos veikimas ir apsijaugojimo būdai [interaktyvus] [žiūrėta: 2019-03-17]. Prieiga per internetą: <https://www.comparitech.com/blog/information-security/dns-changer-malware-how-to-detect-it-and-protect-yourself/ >.

5. DNS changer kenkėjiškos programos straipsnis Wiki [interaktyvus] [žiūrėta: 2019-03-17]. Prieiga per internetą: <https://en.wikipedia.org/wiki/DNSChanger>.

6. DNS atakų tipai [interaktyvus] [žiūrėta: 2019-03-17]. Prieiga per internetą: <https://securitytrails.com/blog/most-popular-types-dns-attacks>.

7. DNSSEC veikimo aprašymas [interaktyvus] [žiūrėta: 2019-03-17]. Prieiga per internetą: <https://www.icann.org/resources/pages/dnssec-what-is-it-why-important-2019-03-05-en>.

8. DNSSEC straipsnis Wiki [interaktyvus] [žiūrėta: 2019-03-17]. Prieiga per internetą: < https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions >.