En forskargrupp frÄn Tel Aviv-universitetet och det tvÀrvetenskapliga centret i Herzliya (Israel) en ny attackmetod (), som gör det möjligt att anvÀnda alla DNS-resolverare som trafikförstÀrkare och som möjliggör en förstÀrkningsgrad pÄ upp till 1621 gÄnger antalet paket (för varje begÀran som skickas till resolvern kan upp till 1621 begÀrningar sendas till offrets server)
Problemet Ă€r relaterat till protokollets arbetsmetod och pĂ„verkar alla DNS-servrar som stöder rekursiv begĂ€ran, inklusive (CVE-2020-8616), (CVE-2020-12667), (CVE-2020-10995), och (CVE-2020-12662), samt offentliga DNS-tjĂ€nster som Google, Cloudflare, Amazon, Quad9, ICANN och andra företag. Ă
tgÀrden mot problemet har koordinerats med utvecklarna av DNS-servrar, som samtidigt har slÀppt uppdateringar som ÄtgÀrdar sÄrbarheten i sina produkter. Skydd mot attacken har införts i versionerna
, , , .
Attacken baseras pÄ att angriparen anvÀnder begÀrningar som hÀnvisar till ett stort antal tidigare okÀnda fiktiva NS-poster, som ges befogenhet att definiera namnet men utan att ange glue-poster med information om NS-servernas IP-adresser. Till exempel skickar angriparen en begÀran om namnidentifiering sd1.attacker.com, kontrollerande DNS-servern som ansvarar för domÀnen attacker.com. Som svar pÄ resolverns begÀran till angriparens DNS-server ges ett svar som delegerar adressidentifieringen för sd1.attacker.com till offrets DNS-server genom att ange NS-poster utan detaljer om IP-adresserna för NS-servrarna. Eftersom den nÀmnda NS-servern tidigare inte har setts och dess IP-adress inte Àr angiven, försöker resolvern att identifiera IP-adressen för NS-servern genom att skicka en begÀran till offrets DNS-server, som hanterar mÄl-domen (victim.com).
Problemet Àr att angriparen kan skicka ett enormt antal unika NS-servrar med icke-existerande fiktiva domÀnnamn till offrets underdomÀner (fake-1.victim.com, fake-2.victim.com,⊠fake-1000.victim.com) i svaret. Resolvatorn kommer att försöka skicka en begÀran till offrets DNS-server, men kommer att fÄ ett svar om att domÀnen inte hittades, varefter den kommer att försöka identifiera nÀsta NS-server i listan och sÄ vidare, tills alla angivna NS-poster har gÄtts igenom. Följaktligen kommer en begÀran frÄn angriparen att leda till ett enormt antal begÀrningar för att faststÀlla NS-vÀrdar. Eftersom namnen pÄ NS-servrarna genereras slumpmÀssigt och hÀnvisar till icke-existerande underdomÀner, extraheras de inte frÄn cachen, och varje begÀran frÄn angriparen resulterar i en vÄg av begÀrningar till DNS-servern som hanterar offrets domÀn.
Forskare har undersökt hur utsatta offentliga DNS-resolvatorer Àr och har funnit att vid skickande av begÀrningar till CloudFlare-resolvatorn (1.1.1.1) kan de uppnÄ en paketförstÀrkningsfaktor (PAF, Packet Amplification Factor) pÄ 48 gÄnger, Google (8.8.8.8) - 30 gÄnger, FreeDNS (37.235.1.174) - 50 gÄnger, OpenDNS (208.67.222.222) - 32 gÄnger. Mer framtrÀdande siffror observeras för
Level3 (209.244.0.3) - 273 gÄnger, Quad9 (9.9.9.9) - 415 gÄnger
SafeDNS (195.46.39.39) - 274 gÄnger, Verisign (64.6.64.6) - 202 gÄnger,
Ultra (156.154.71.1) - 405 gÄnger, Comodo Secure (8.26.56.26) - 435 gÄnger, DNS.Watch (84.200.69.80) - 486 gÄnger, och Norton ConnectSafe (199.85.126.10) - 569 gÄnger. För servrar baserade pÄ BIND 9.12.3 kan förstÀrkningsnivÄn, genom att hantera begÀrningarna parallellt, nÄ upp till 1000. I Knot Resolver 5.1.0 Àr förstÀrkningsnivÄn cirka nÄgra tiotal gÄnger (24-48), eftersom identifieringen av NS-namn görs sekventiellt och möter en inre begrÀnsning pÄ antalet namnuppslagningssteg som Àr tillÄtna för en begÀran.
TvÄ huvudstrategier för skydd framhÀvs. För system med DNSSEC anvÀnda för att förhindra DNS-cache-omgÄngar, eftersom begÀrningar skickas med slumpmÀssiga namn. Metoden innebÀr att generera negativa svar utan att behöva kontakta auktoritativa DNS-servrar, genom att anvÀnda intervallkontroll via DNSSEC. Ett enklare sÀtt Àr att begrÀnsa antalet namn som kan identifieras vid behandling av en enda delegerad begÀran, men denna metod kan leda till problem med vissa befintliga konfigurationer, eftersom grÀnserna inte definieras i protokollet.
KĂ€lla: opennet.ru
