Otkrili su novu varijantu SAD DNS-a za zamjenu lažnih podataka u DNS predmemoriji

Skupina istraživača sa Sveučilišta Kalifornije u Riversideu objavila je Prije nekoliko dana nova varijanta SAD DNS napada koji radi unatoč zaštiti dodanoj prošle godine za blokiranje ranjivost CVE-2020-25705.

Nova metoda je općenito slično prošlogodišnjoj ranjivosti i samo se razlikuje korištenjem druge vrste paketa ICMP za provjeru aktivnih UDP portova. Predloženi napad omogućuje zamjenu lažnih podataka u predmemoriji DNS poslužitelja, koji se može koristiti za lažiranje IP adrese proizvoljne domene u predmemoriji i preusmjeravanje poziva na domenu na poslužitelj napadača.

Predložena metoda je operativna samo na Linux mrežnom stogu Zbog svoje povezanosti s posebnostima mehanizma obrade ICMP paketa u Linuxu, djeluje kao izvor curenja podataka koji pojednostavljuje određivanje broja UDP porta koji poslužitelj koristi za slanje vanjskog zahtjeva.

Prema istraživačima koji su identificirali problem, ranjivost utječe na otprilike 38% otvorenih rješavatelja na mreži, uključujući popularne DNS usluge poput OpenDNS-a i Quad9 (9.9.9.9). Za poslužiteljski softver, napad se može izvesti pomoću paketa kao što su BIND, Unbound i dnsmasq na Linux poslužitelju. DNS poslužitelji koji rade na Windows i BSD sustavima ne pokazuju problem. IP lažiranje mora se koristiti za uspješno dovršenje napada. Potrebno je osigurati da napadačev ISP ne blokira pakete s lažnom izvornom IP adresom.

Podsjetimo, napad SAD DNS omogućuje zaobilaženje dodatne zaštite na DNS poslužiteljima kako bi se blokirala klasična metoda trovanja DNS predmemorije koju je 2008. predložio Dan Kaminsky.

Kaminskyjeva metoda manipulira zanemarivom veličinom ID polja DNS upita, koje iznosi samo 16 bita. Da biste pronašli ispravan identifikator DNS transakcije potreban za lažiranje imena hosta, samo pošaljite oko 7.000 140.000 zahtjeva i simulirajte oko XNUMX XNUMX lažnih odgovora. Napad se svodi na slanje velikog broja lažnih IP-vezanih paketa u sustav DNS razlučivanje s različitim identifikatorima DNS transakcija.

Za zaštitu od ove vrste napada, Proizvođači DNS poslužitelja implementirao slučajnu distribuciju brojeva mrežnih portova izvor iz kojeg se šalju zahtjevi za rješavanje, što je nadoknadilo nedovoljno veliku veličinu identifikatora. Nakon implementacije zaštite za slanje fiktivnog odgovora, osim odabira 16-bitnog identifikatora, postalo je potrebno odabrati jedan od 64 tisuće portova, što je povećalo broj opcija za odabir na 2 ^ 32.

Metoda SAD DNS vam omogućuje da radikalno pojednostavite određivanje broja mrežnog porta i smanjite napad klasičnoj metodi Kaminskog. Napadač može odrediti pristup neiskorištenim i aktivnim UDP portovima korištenjem prednosti procurjelih informacija o aktivnosti mrežnog porta prilikom obrade ICMP paketa odgovora.

Curenje informacija koje vam omogućuje brzu identifikaciju aktivnih UDP portova posljedica je greške u kodu za rukovanje ICMP paketima sa zahtjevima za fragmentaciju (zastava za ICMP fragmentaciju) ili preusmjeravanje (ICMP zastavica preusmjeravanja). Slanje takvih paketa mijenja stanje predmemorije na mrežnom stogu, što omogućuje da se na temelju odgovora poslužitelja odredi koji je UDP port aktivan, a koji nije.

Promjene koje blokiraju curenje informacija prihvaćene su u Linux kernel krajem kolovoza (Popravak je uključen u kernel 5.15 i rujanska ažuriranja LTS grana kernela.) Rješenje je prebaciti se na korištenje SipHash hash algoritma u mrežnim predmemorijama umjesto Jenkins Hasha.

Napokon, ako vas zanima više o tome, možete se obratiti pojedinosti na sljedećem linku.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.