Vranljivosti v tehnologiji zaščite brezžičnih omrežij WPA3 in v EAP-pwd

Mathy Vanhoef, avtor napada KRACK na brezžične omrežne WPA2, in Eyal Ronen, soustanovitelj nekaterih napadov na TLS, sta razkrila informacije o šestih ranljivostih (CVE-2019-9494 — CVE-2019-9499) v zaščitni tehnologiji za brezžična omrežja WPA3, ki omogočajo obnovitev dostopne gesla in dostop do brezžičnega omrežja brez poznavanja gesla. Ranljivosti so združene pod kodnim imenom Dragonblood in omogočajo kompromitacijo metode usklajevanja povezav Dragonfly, ki zagotavlja zaščito pred ugotavljanjem gesel v offline načinu. Poleg WPA3 se metoda Dragonfly uporablja tudi za zaščito pred napadi z besednimi seznami v protokolu EAP-pwd, ki se uporablja v Androidu, RADIUS strežnikih in v hostapd/wpa_supplicant.

Med raziskavo so bili identificirani dve glavni vrsti arhitekturnih težav v WPA3. Obe vrsti težav lahko na koncu uporabita napadalca za obnovitev dostopa do gesla. Prva vrsta omogoča povratno preusmeritev na nezanesljive kriptografske metode (downgrade attack): sredstva za zagotavljanje združljivosti z WPA2 (prehodni način, ki omogoča uporabo WPA2 in WPA3) napadalcu omogočajo, da prisili stranko, da izvede štiri korake usklajevanja povezav WPA2, kar kasneje omogoča uporabo klasičnih napadov za ugotavljanje gesel, primerne za WPA2. Poleg tega so tudi odkrili možnost izvedbe downgrade napada neposredno na metodo usklajevanja povezav Dragonfly, kar omogoča povratno preusmeritev na manj zaščitene vrste eliptičnih krivulj.

Druga vrsta težav povzroča uhajanje informacij o značilnostih gesla po stranskih kanalih in temelji na pomanjkljivostih metode kodiranja gesla v Dragonfly, ki omogoča, da se na podlagi posrednih podatkov, kot so spremembe zakasnitve pri izvajanju operacij, obnovi izvorno geslo. Algoritem pretvorbe hasha v eliptično krivuljo (hash-to-curve), ki se uporablja v Dragonfly, je ranljiv na napade s sledenjem uhajanja informacij v procesorskem predpomnilniku (cache attack), medtem ko je algoritem pretvorbe hasha v skupino (hash-to-group) ranljiv na napade preko merjenja časa izvajanja operacij (timing attack).

Za izvedbo napadov preko analize predpomnilnika mora napadalec imeti možnost izvajanja neprivilegiranega kode na sistemu uporabnika, ki se povezuje na brezžično omrežje. Obe metodi omogočata pridobitev informacij, potrebnih za natančno izbiro delov gesla med procesom njegovega ugibanja. Učinkovitost napada je dovolj visoka in omogoča ugibanje 8-mestnega gesla, ki vključuje spodnje črke, ob ujetju le 40 sej dogovarjanja povezave (handshake) in porabi virov, enakih najemu moči Amazon EC2 v vrednosti 125 dolarjev.

Na podlagi ugotovljenih ranljivosti je bilo predlaganih več napadalnih scenarijev:

  • Napad z vračanjem na WPA2 z možnostjo izvedbe napada z besedno zvezo. V pogojih, ko klient in dostopna točka podpirata tako WPA3 kot WPA2, lahko napadalec postavi svojo podtaknjeno dostopno točko z enakim imenom omrežja, ki podpira samo WPA2. V takšni situaciji bo klient uporabil postopek dogovarjanja povezave, značilen za WPA2, med katerim bo ugotovljena neprimernost takega vračanja, vendar bo to storjeno v fazi, ko so sporočila o dogovarjanju kanala že poslana in vse potrebne informacije za napad z besedno zvezo že uhajajo. Podoben način je uporaben tudi za vračanje na problematične različice eliptičnih krivulj v SAE.

    Poleg tega je bilo ugotovljeno, da je demon iwd, ki ga razvija podjetje Intel kot alternativo wpa_supplicant, in brezžični sistem Samsung Galaxy S10 dovzeten za napade z vračanjem celo v omrežjih, ki uporabljajo samo WPA3 — če so se ti napravi prej povezali z WPA3 omrežjem, se bodo poskušali povezati z podtaknjeno WPA2 omrežjem z enakim imenom.

  • Napad preko stranskih kanala za ekstrakciju informacija iz procesorskog keša. Algoritam za kodiranje lozinki u Dragonfly sadrži uslovno grananje, a napadač, imajući mogućnost izvršavanja koda u sistemu korisničke bežične mreže, može, analizirajući ponašanje keša, odrediti koji blok izraza if-then-else je odabran. Dobijene informacije mogu se koristiti za izvođenje postupnog pokušaja lozinke, koristeći metode slične offline napadima rečnikom za WPA2 lozinke. Predlaže se prelazak na operacije sa konstantnim vremenom izvršenja, nezavisnim od vrste obrađenih podataka;
  • Napad preko stranskih kanala s procenom vremena izvršenja operacija. U kodu Dragonfly prilikom kodiranja lozinki koristi se nekoliko multiplikativnih grupa (MODP) i promenljiv broj iteracija, čiji broj zavisi od korišćene lozinke i MAC adrese pristupne tačke ili klijenta. Udaljeni napadač može odrediti koliko je iteracija izvršeno tokom kodiranja lozinke i koristiti ih kao pokazatelj prilikom postupnog pokušaja lozinke.
  • Napad na uslugu (DoS). Napadač može blokirati rad određenih funkcija pristupne tačke zbog isključivanja dostupnih resursa slanjem velikog broja zahteva za uspostavljanje veze. Da bi zaobišao zaštitu od poplave predviđenu u WPA3, dovoljno je slati zahteve sa fiktivnih, jedinstvenih MAC adresa.
  • Prebacivanje na manje zaštićene kriptografske grupe koje se koriste u procesu usklađivanja veza u WPA3. Na primer, ako klijent podržava eliptične krive P-521 i P-256 te koristi P-521 kao prioritetnu opciju, napadač, bez obzira na podršku
    P-521 na strani pristupne tačke, može primorati klijenta da koristi P-256. Napad se sprovodi otsecanjem nekih poruka tokom usklađivanja veze i slanjem lažnih poruka sa informacijama o nedostatku podrške za određene tipove eliptičnih krivih.

Pripremljeno je nekoliko skripti sa primerima napada za proveru uređaja na prisustvo ranjivosti:

  • Dragonslayer — implementacija napada na EAP-pwd;
  • Dragondrain — orodje za preverjanje ranljivosti točk dostopa v implementaciji metode sočasne avtorizacije SAE (Simultaneous Authentication of Equals), ki se lahko uporablja za sprožitev napada zavrnitve storitve;
  • Dragontime — skript za izvajanje napadov preko stranskih kanalov na SAE, ki upošteva razliko v časih obdelave operacij pri uporabi skupin MODP 22, 23 in 24;
  • Dragonforce — orodje za obnovo informacij (poskus ugibanja gesel) na osnovi podatkov o različnem času obdelave operacij ali določanju zadrževanja podatkov v predpomnilniku.

Združenje Wi-Fi Alliance, ki razvija standarde za brezžične mreže, je sporočilo, da se težava nanaša na omejeno število zgodnjih implementacij WPA3-Personal in jo je mogoče odpraviti z nadgradnjo programske opreme in vdelane programske opreme. Do sedaj ni bilo zabeleženih primerov zlorabe ranljivosti za izvajanje škodljivih dejanj. Za okrepitev zaščite je Wi-Fi Alliance dodal dodatne teste v svoj certifikacijski program za brezžične naprave, prav tako pa je stopil v stik z proizvajalci naprav za usklajevanje odprave ugotovljenih težav. Popravki za odpravo težav so že bili izdani za hostap/wpa_supplicant. Nadgradnje paketov so na voljo za Ubuntu. V Debianu, RHEL, SUSE/openSUSE, Arch, Fedora in FreeBSD težave zaenkrat ostajajo odprte.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster