NXNSAttack napad koji utječe na sve DNS rezolvere

Skupina istraživača sa Sveučilišta Tel Aviv i Interdisciplinarnog centra u Herzliyi (Izrael) se razvio nova metoda napada NXNSNapad (PDF), što vam omogućuje korištenje bilo kojeg DNS razlučivača kao pojačivača prometa, pružajući brzinu pojačanja do 1621 puta u smislu broja paketa (za svaki zahtjev poslan razlučivaču možete postići 1621 zahtjev koji se šalje poslužitelju žrtve) a po prometu do 163 puta.

Problem je povezan s osobitostima protokola i utječe na sve DNS poslužitelje koji podržavaju rekurzivnu obradu upita, uključujući VEZATI (CVE-2020-8616) Čvor (CVE-2020-12667) PowerDNS (CVE-2020-10995) Windows DNS poslužitelj и nevezan (CVE-2020-12662), kao i javne DNS usluge Google, Cloudflare, Amazon, Quad9, ICANN i drugih tvrtki. Popravak je usklađen s programerima DNS poslužitelja, koji su istovremeno objavili ažuriranja za popravak ranjivosti u svojim proizvodima. Zaštita od napada implementirana u izdanjima
Nevezano 1.10.1, Razrješavač čvorova 5.1.1, PowerDNS Recursor 4.3.1, 4.2.2, 4.1.16, VEZATI 9.11.19, 9.14.12, 9.16.3.

Napad se temelji na tome da napadač koristi zahtjeve koji se odnose na veliki broj dosad neviđenih fiktivnih NS zapisa, na koje je delegirano određivanje imena, ali bez navođenja glue zapisa s informacijama o IP adresama NS poslužitelja u odgovoru. Na primjer, napadač šalje upit za rješavanje imena sd1.attacker.com kontrolirajući DNS poslužitelj odgovoran za napadačku domenu.com. Kao odgovor na zahtjev razrjeđivača prema napadačevom DNS poslužitelju, izdaje se odgovor koji delegira određivanje adrese sd1.attacker.com žrtvinom DNS poslužitelju navodeći NS zapise u odgovoru bez pojedinosti o IP NS poslužiteljima. Budući da spomenuti NS poslužitelj nije ranije viđen i njegova IP adresa nije specificirana, rezolver pokušava odrediti IP adresu NS poslužitelja slanjem upita DNS poslužitelju žrtve koji opslužuje ciljnu domenu (victim.com).

NXNSAttack napad koji utječe na sve DNS rezolvere

Problem je što napadač može odgovoriti ogromnom listom NS poslužitelja koji se ne ponavljaju s nepostojećim fiktivnim imenima poddomena žrtve (fake-1.victim.com, fake-2.victim.com,... fake-1000. žrtva.com). Razrešivač će pokušati poslati zahtjev DNS poslužitelju žrtve, ali će dobiti odgovor da domena nije pronađena, nakon čega će pokušati odrediti sljedeći NS poslužitelj na listi i tako dalje dok ne isproba sve NS zapisi navedeni od strane napadača. Sukladno tome, za jedan zahtjev napadača, rezolver će poslati veliki broj zahtjeva za određivanje NS hostova. Budući da se nazivi NS poslužitelja generiraju nasumično i odnose se na nepostojeće poddomene, oni se ne dohvaćaju iz predmemorije i svaki zahtjev od napadača rezultira naletom zahtjeva prema DNS poslužitelju koji opslužuje žrtvinu domenu.

NXNSAttack napad koji utječe na sve DNS rezolvere

Istraživači su proučavali stupanj ranjivosti javnih DNS rezolvera na problem i utvrdili da je prilikom slanja upita CloudFlare rezolveru (1.1.1.1) moguće povećati broj paketa (PAF, Packet Amplification Factor) za 48 puta, Google (8.8.8.8) - 30 puta, FreeDNS (37.235.1.174) - 50 puta, OpenDNS (208.67.222.222) - 32 puta. Primjećeni su pokazatelji za
Razina 3 (209.244.0.3) - 273 puta, Quad9 (9.9.9.9) - 415 puta
SafeDNS (195.46.39.39) - 274 puta, Verisign (64.6.64.6) - 202 puta,
Ultra (156.154.71.1) - 405 puta, Comodo Secure (8.26.56.26) - 435 puta, DNS.Watch (84.200.69.80) - 486 puta i Norton ConnectSafe (199.85.126.10) - 569 puta. Za poslužitelje koji se temelje na BIND 9.12.3, zbog paralelizacije zahtjeva, razina dobitka može doseći i do 1000. U Knot Resolveru 5.1.0, razina dobitka je otprilike nekoliko desetaka puta (24-48), od određivanja NS imena izvodi se sekvencijalno i oslanja se na interno ograničenje broja dopuštenih koraka rješavanja imena za jedan zahtjev.

Dvije su glavne obrambene strategije. Za sustave s DNSSEC-om zaprosio za korištenje RFC-8198 kako biste spriječili zaobilaženje DNS predmemorije jer se zahtjevi šalju s nasumičnim imenima. Bit metode je generiranje negativnih odgovora bez kontaktiranja autoritativnih DNS poslužitelja, korištenjem provjere raspona putem DNSSEC-a. Jednostavniji pristup je ograničiti broj imena koja se mogu definirati prilikom obrade jednog delegiranog zahtjeva, ali ova metoda može uzrokovati probleme s nekim postojećim konfiguracijama jer ograničenja nisu definirana u protokolu.

Izvor: opennet.ru

Dodajte komentar