Nuwe SAD DNS-aanval om valse data in die DNS-kas in te voeg

'n Span navorsers van die Universiteit van Kalifornië, Riverside het 'n nuwe variant van die SAD DNS-aanval (CVE-2021-20322) gepubliseer wat werk ondanks beskermings wat verlede jaar bygevoeg is om die CVE-2020-25705-kwesbaarheid te blokkeer. Die nuwe metode is oor die algemeen soortgelyk aan verlede jaar se kwesbaarheid en verskil slegs in die gebruik van 'n ander tipe ICMP-pakkies om aktiewe UDP-poorte na te gaan. Die voorgestelde aanval maak voorsiening vir die vervanging van fiktiewe data in die DNS-bedienerkas, wat gebruik kan word om die IP-adres van 'n arbitrêre domein in die kas te vervang en versoeke na die domein na die aanvaller se bediener te herlei.

Die voorgestelde metode werk slegs in die Linux-netwerkstapel as gevolg van sy verbinding met die eienaardighede van die ICMP-pakkieverwerkingsmeganisme in Linux, wat dien as 'n bron van datalekkasie wat die bepaling van die UDP-poortnommer wat deur die bediener gebruik word om 'n eksterne versoek. Veranderinge wat inligtinglek blokkeer, is aan die einde van Augustus in die Linux-kern aangeneem (die regstelling is ingesluit in kern 5.15 en September-opdaterings aan die LTS-takke van die kern). Die oplossing kom daarop neer om oor te skakel na die gebruik van die SipHash hashing-algoritme in netwerkkas in plaas van Jenkins Hash. Die status van die regstelling van die kwesbaarheid in verspreidings kan op hierdie bladsye beoordeel word: Debian, RHEL, Fedora, SUSE, Ubuntu.

Volgens die navorsers wat die probleem geïdentifiseer het, is ongeveer 38% van oop resolvers op die netwerk kwesbaar, insluitend gewilde DNS-dienste soos OpenDNS en Quad9 (9.9.9.9). Wat bedienersagteware betref, kan 'n aanval uitgevoer word deur pakkette soos BIND, Unbound en dnsmasq op 'n Linux-bediener te gebruik. Die probleem verskyn nie op DNS-bedieners wat op Windows- en BSD-stelsels loop nie. Om 'n aanval suksesvol uit te voer, is dit nodig om IP-spoofing te gebruik, d.w.s. dit word vereis dat die aanvaller se ISP nie pakkies met 'n vals bron IP-adres blokkeer nie.

Ter herinnering, die SAD DNS-aanval omseil die beskerming wat by DNS-bedieners gevoeg is om die klassieke DNS-kasvergiftigingsmetode te blokkeer wat in 2008 deur Dan Kaminsky voorgestel is. Kaminsky se metode manipuleer die klein grootte van die DNS-navraag-ID-veld, wat slegs 16 bisse is. Om die korrekte DNS-transaksie-identifiseerder te kies wat nodig is vir die bedrog van gasheernaam, is dit genoeg om ongeveer 7000 140 versoeke te stuur en ongeveer 1 duisend fiktiewe antwoorde te simuleer. Die aanval kom daarop neer dat 'n groot aantal pakkies met 'n fiktiewe IP-binding en met verskillende DNS-transaksie-identifiseerders na die DNS-oplosser gestuur word. Om te verhoed dat die eerste reaksie in die kas geberg word, bevat elke dummy-antwoord 'n effens gewysigde domeinnaam (2.example.com, 3.example.com, XNUMX.example.com, ens.).

Om teen hierdie tipe aanval te beskerm, het DNS-bedienervervaardigers 'n ewekansige verspreiding van getalle bronnetwerkpoorte geïmplementeer waarvandaan resolusieversoeke gestuur word, wat vergoed het vir die onvoldoende groot grootte van die identifiseerder. Na die implementering van beskerming vir die stuur van 'n fiktiewe antwoord, het dit, benewens die keuse van 'n 16-bis identifiseerder, nodig geword om een ​​van 64 duisend poorte te kies, wat die aantal opsies vir seleksie tot 2^32 verhoog het.

Die SAD DNS-metode laat jou toe om die bepaling van die netwerkpoortnommer radikaal te vereenvoudig en die aanval na die klassieke Kaminsky-metode te verminder. 'n Aanvaller kan toegang tot ongebruikte en aktiewe UDP-poorte opspoor deur voordeel te trek uit uitgelekte inligting oor die aktiwiteit van netwerkpoorte wanneer ICMP-reaksiepakkies verwerk word. Die metode stel ons in staat om die aantal soekopsies met 4 grootteordes te verminder - 2^16+2^16 in plaas van 2^32 (131_072 in plaas van 4_294_967_296). Die lek van inligting waarmee jy vinnig aktiewe UDP-poorte kan bepaal, word veroorsaak deur 'n fout in die kode vir die verwerking van ICMP-pakkies met fragmentasieversoeke (ICMP Fragmentation Needed flag) of herleiding (ICMP Redirect-vlag). Die stuur van sulke pakkies verander die toestand van die kas in die netwerkstapel, wat dit moontlik maak om, gebaseer op die bediener se reaksie, te bepaal watter UDP-poort aktief is en watter nie.

Aanvalscenario: Wanneer 'n DNS-oplosser probeer om 'n domeinnaam op te los, stuur dit 'n UDP-navraag na die DNS-bediener wat die domein bedien. Terwyl die oplosser op 'n antwoord wag, kan 'n aanvaller vinnig die bronpoortnommer bepaal wat gebruik is om die versoek te stuur en 'n vals antwoord daarop stuur, wat die DNS-bediener naboots wat die domein bedien met IP-adres-spoofing. Die DNS-oplosser sal die data wat in die vals antwoord gestuur is, in die kas kas en sal vir 'n geruime tyd die IP-adres terugstuur wat deur die aanvaller vervang is vir alle ander DNS-versoeke vir die domeinnaam.

Bron: opennet.ru

Voeg 'n opmerking