DNSSEC DNS tehnologija zaštite u sustavu Windows Server 2012

Nedostaci DNS-a

DNS sustav za rješavanje imena, koji je jedan od temelja modernog sustava mrežnih interakcija, razvijen je prije više od 20 godina kada se o pitanjima zaštite informacija gotovo uopće nije razmišljalo. Jedan od glavnih nedostataka DNS sustava je mogućnost lažiranja odgovora na DNS upit.

Problem je u tome što odgovor DNS poslužitelja nije provjeren ni na koji način, to znači da u slučaju razbijanja DNS poslužitelja (i preusmjeravanja na lažne DNS poslužitelje), falsificiranja DNS zapisa, trovanja DNS cachea (trovanja DNS cachea), možete poslati korisnika bilo kojem IP adresu, a korisnik će biti potpuno uvjeren da surađuje s legitimnom web stranicom ili uslugom. Ove metode napadači široko koriste, preusmjeravaju korisnike na web mjesta koja sadrže zlonamjerne kodove ili prikupljaju njihove osobne podatke (lozinke, brojeve kreditnih kartica itd.) Koristeći tzv. pharming napadi.

Zašto vam je potrebna DNSSEC tehnologija?

DNS sigurnosna proširenja (DNSSEC) - tehnologija je dizajnirana za poboljšanje sigurnosti DNS usluge korištenjem kriptografskih potpisa koji će nedvosmisleno provjeriti vjerodostojnost informacija primljenih od DNS poslužitelja. tj svi zahtjevi i odgovori DNS poslužitelja s podrškom DNSSEC moraju imati digitalni potpis, čiju ispravnost klijent može potvrditi javnim ključem. Ovi digitalni potpisi nastaju prilikom potpisivanja zone (na nju se primjenjuje DNSSEC).

Pojednostavljeni mehanizam za provjeru DNSSEC funkcionira ovako: klijent šalje zahtjev DNS poslužitelju, poslužitelj vraća digitalno potpisan DNS odgovor. jer klijent ima javni ključ certifikacijskog tijela koje je potpisalo DNS zapise, može dešifrirati potpis (hash vrijednost) i provjeriti DNS odgovor. Da bi se to postiglo, i klijent i DNS poslužitelj moraju biti konfigurirani za korištenje istog sidra povjerenja. Pouzdajte se sidro - Unaprijed konfigurirani javni ključ povezan s određenom DNS zonom. Ako DNS poslužitelj podržava više zona, tada se mogu koristiti više sidrišta za pouzdanje..

Važno je napomenuti da je glavna svrha DNSSEC-a zaštititi od krivotvorenja i izmjene DNS upita i odgovora. Ali podaci koji se prenose preko same mreže nisu šifrirani (iako se povjerljivost poslanih DNS podataka može osigurati enkripcijom, ali to nije obavezno i ​​nije glavni cilj DNSSEC-a).

Osnovne komponente DNSSEC definirane su u sljedećim RFC standardima:

  • RFC 4033
  • RFC 4034
  • RFC 4035

DNSSEC na Windows sustavima

Podrška DNSSEC tehnologija pojavila se u Windows Server 2008 R2 i Windows 7. Međutim, zbog složenosti i ne očiglednosti postavki, nije se široko koristila. DNSSEC je dobio svoj daljnji razvoj u sustavu Windows Server 2012, u kojem je funkcionalnost DNSSEC-a značajno proširena i sugerira mogućnost konfiguriranja putem grafičkog sučelja.

U ovom ćemo članku opisati osnovnu instalaciju i konfiguraciju DNSSEC-a na temelju DNS poslužitelja koji pokreće Windows Server 2012, stvoriti potpisanu zonu i točke povjerenja.

Instaliranje i konfiguriranje DNSSEC-a na Windows Server 2012

Stvorite novu DNS zonu dnssec.contoso.com i dodajte joj jedan zapis SRV12 poslužitelja s adresom 192.168.1.14.

primjedba. U sustavu Windows 8/2012, umjesto da se koristi uslužni program nslookup, za korištenje podataka s DNS poslužitelja bolje je koristiti Powershell cmdlet Resolve-DnsName.
Resolve-DnsName srv12.dnssec.contoso.com -Server SRV12-SUB-CA -DnssecOk

jer zona nije potpisana, zahtjev neće vratiti RRSIG zapise.

Digitalno ćemo potpisati unutarnju DNS zonu dnssec.contoso.com. Da biste to učinili, u DNS konzoli desnom tipkom miša kliknite zonu i odaberite DNSSEC-> Potpiši zonu.

U pojavljenom Čarobnjaku za prijavljivanje zona ostavite sve zadane postavke (Koristite zadane postavke za potpisivanje zone) -> Dalje -> Dalje -> Završi.

Nakon što se čarobnjak završi, u zoni potpisa će se automatski stvoriti sljedeći novi zapisi resursa:

  • RRSIG (Resource Read Signature) - Sigurnosni potpis potpisa
  • DNSKEY (javni ključ) - sprema javni dio ključa i njegove identifikatore
  • DS (potpisnik delegacije) - sadrži hash imena domene nasljednika i njegov ključ KSK
  • NSEC (Next Secure) i NSEC3 (Next Secure 3) - koriste se za pouzdanu zaštitu od napada podmetanja

Nakon potpisivanja zone javni ključ spremit će se u datoteku% windir% \ system32 \ dns \ keyset-dnssec.

U DNS uvozimo javni ključ zone (isto sidro povjerenja) tako što idemo na odjeljak Trust Point na DNS konzoli, odaberemo uvoz -> DNSKEY i odredimo put do datoteke keyset-dnssec.

primjedba. Ovaj se ključ mora distribuirati na sve DNS poslužitelje koji će sudjelovati u sigurnom predmemoriranju podataka potpisane zone.

Kao rezultat uvoza ključa, u odjeljku Povjerljive točke -> dnssec, pojavit će se dvije DNSKEY tipke (jedna je aktivna, druga je u stanju čekanja).

U sustavu Windows Server 2012 moguće je automatski kopirati ključeve Trust Anchors na sve kontrolere domena u šumi koja služi ovoj DNS zoni. Da biste to učinili, u svojstvima željene zone (dnssec) na kartici Pouzdajte se sidro opcija Omogućite distribuciju sidrenih pouzdanja za ovu zonu i spremite promjene.

Pokušajmo još jednom ispitati ovu zonu od klijenta.

Kao što vidimo, u odgovoru DNS poslužitelja nalaze se informacije o RRSIG zapisu i digitalnom potpisu.

Konfiguriranje WIndows klijenata za korištenje DNSSEC

Da bi se Windows OS klijenti prisilili na samo "sigurne" (DNSSEC) zahtjeve, tj. prihvaćaju DNS podatke samo ako je njihov digitalni potpis točan, potrebno je upotrijebiti NRPT (tablicu pravila o nazivima razlučivosti) pomoću GPO-a.

Da biste to učinili, u odjeljku GPO Konfiguracija računala -> Polices -> Windows Settings -> Policy Resolution Policy na kartici DNSSEC omogućiti opcije:

  • Omogućite DNSSEC u ovom pravilu
  • Zahtijevajte DNS klijente da provjere jesu li podaci i imena adresa potvrdili na DNS poslužitelju

Ostaje dodijeliti politiku željenom OU-u. Nakon primjene pravila, provjerite je li klijent konfiguriran za upotrebu "sigurnog" DNS-a:

Get-DnsClientNrptPolicy

vrijednost DNSSecValidationRequired = Točno, odnosno klijent zahtijeva potvrđene DNS odgovore.

U slučaju da odgovor primljen od DNS poslužitelja nije potpisan ili su potvrde nepravilno potpisane, naredba će vratiti pogrešku Nezaštićen DNS paket.

DNSSEC za vanjska područja

Da bi DNS poslužitelj zahtijeva obaveznu DNSSEC provjeru za vanjske zone, morate to imati na njegovim svojstvima na kartici napredan opcija Omogući provjeru DNSSEC-a za udaljene odgovore.

Sidra za pouzdanost korijenske zone možete uvesti ručno (opisano gore) ili pomoću naredbe:

dnscmd / RetrieveRootTrustAnchors
vijeće. Da bi DNSSEC ispravno radio, morate izvršiti brojne izmjene vatrozida:

  1. Otvorite priključak 53 s obje strane TCP i UDP protokola
  2. jer veličina podataka u paketu DNSSec prelazi 512 bajta, potrebno je omogućiti prolazak DNS paketa veće od 512 bajta preko UDP i TCP