Vulnerabilitet në protokollin RADIUS që lejon falsifikimin e përgjigjes gjatë autentikimit

Një grup hulumtuesish nga disa universitete amerikane dhe kompanitë Cloudflare dhe Microsoft kanë zhvilluar një teknikë të re sulmi ndaj protokollit RADIUS, e cila përdoret nga operatorët e komunikimeve, shërbimet cloud dhe ofruesit e VPN për autentifikimin, autorizimin dhe llogaritjen e përdoruesve. Sulmi, i cili ka marrë emrin kodik Blast-RADIUS, mundëson falsifikimin e përgjigjes së serverit RADIUS gjatë autentifikimit dhe organizimin e lidhjes së abonentit pa njohuri për fjalëkalimin e aksesit.

Për të shfrytëzuar vulnerabilitetin (CVE-2024-3596), sulmuesi duhet të ketë mundësinë e kapjes së trafikut kalimtar dhe të kryejë një sulm të plotë MITM, duke lejuar leximin, kapjen, bllokimin dhe modifikimin e paketave UDP kalimtare në hyrje dhe në dalje, të dërguara nga pikat e qasjes për kërkesën e autentifikimit të klientëve (Access-Request) dhe kthyer nga serveri RADIUS me konfirmimin ose refuzimin e veprimit. Pasi të ketë kapur kërkesën e autentifikimit, sulmuesi mund të dërgojë një përgjigje të rreme, duke treguar në këtë përgjigje një lloj tjetër rezultati (p.sh., Access-Accept në vend të Access-Reject). Sulmuesi gjithashtu potencialisht mund të kapë përgjigjen Access-Challenge, të përdorur gjatë autentifikimit në dy etapa, dhe ta zëvendësojë atë me një përgjigje Access-Accept për të anashkaluar kalimin e etapës shtesë të verifikimit.

Vulnerabilitet në protokollin RADIUS që lejon falsifikimin e përgjigjes gjatë autentikimit

Sulmi bazohet në faktin se protokolli RADIUS përdor UDP si transport dhe verifikon integritetin e mesazheve të dërguara duke përdorur algoritmin MD5. Për verifikimin e mesazheve, të dërguara ndërmjet serverin për aksesin dhe serverin RADIUS, përdoret një çelës sekret, i njohur nga pika e aksesit dhe serveri RADIUS, por i panjohur për sulmuesin. Në përgjigje të kërkesës për autentikim, serveri RADIUS gjeneron një hash MD5, me ndihmën e të cilit serveri i aksesit mund të konfirmojë që mesazhi është dërguar nga një server i autorizuar. Hashi MD5 mbulon vlerën e rastësishme të dërguar në kërkesë, identifikuesin e kërkesës, atributet e kthyer, dhe çelësin sekret.

Një sulmues gjatë një sulmi MITM mund të kapë identifikuesin dhe vlerën e rastësishme të dërguara në kërkesë, si dhe mund të parashikojë kodin e operacionit, madhësinë dhe atributet. Detyra përfshin formimin e një hash verifikimi të saktë, i cili i përputhet rezultatit të ndryshuar të operacionit dhe kalon verifikimin përmes hash-it duke përdorur një çelës sekret. Algoritmi MD5 nuk është i qëndrueshëm ndaj gjetjes së kolizionit, duke lejuar sulmuesin, duke manipuluar me mbushjen e drejtpërdrejtë të pacaktuar, të gjejë një kombinim të dhënash me parametrat e nevojshëm, hash-i MD5 i të cilit do të përputhet me hash-in MD5 të përgjigjes origjinale, dhe të dërgojë një përgjigje fiktive me kodin e kalimit të suksesshëm të autentifikimit (Access-Accept) në vend të një mesazhi me informacion mbi gabimin.

Vulnerabilitet në protokollin RADIUS që lejon falsifikimin e përgjigjes gjatë autentikimit

Duke pasur parasysh se nuk aplikohet autentifikimi dhe verifikimi i integritetit gjatë përpunimit të paketeve me kërkesën e qasjes (Access-Request), gjatë sulmit në kërkesën origjinale nga server Duke sul agresori mund të fusë një atribut të shtuar "Proxy-State", i cili do të reflektuar nga serveri RADIUS në përgjigjen e tij. Përmbajtja e "Proxy-State" përzgjidhet duke marrë parasysh kolizionin, në mënyrë që vlera e hash-it MD5 të verifikimit në përgjigjet reale dhe fallco të jetë identike. Gjatë eksperimentit, kërkimi i kolizionit në MD5 për të kryer sulmin zuri 3-6 minuta, çka është më shumë se koha tipike e skadimit prej 30-60 sekondash, por koha e kërkimit të kolizionit mund të përmirësohet duke përdorur pajisje më të fuqishme, duke angazhuar GPU dhe duke paralelizuar operacionet.

Si një masë kryesore për mbrojtjen nga kjo dobësi, është e rekomanduar të përdoret protokolli EAP (Extensible Authentication Protocol, RFC 3579), në të cilin për verifikimin shtesë të mesazheve përdoret atributi Message-Authenticator. Për të mbrojtur nga sulmi, gjithashtu mund të përdoren zgjerime të protokollit (RadSec), të cilat përfshijnë dërgimin e mesazheve RADIUS përmes kanaleve të kriptuara të bazuara në TLS ose DTLS. Për më tepër, mund të minimizohen vlerat e skadimeve për marrjen e përgjigjjeve dhe të bllokohen përgjigjet me atributin Proxy-State. Dërgimi i mesazheve RADIUS mbi TCP e komplikon sulmin, por nuk e përjashton plotësisht.

Kodi për kryerjen e një sulmi ende nuk është publikuar në akses të hapur, por projekti hashclash ka marrë ndryshime që përmirësojnë përzgjedhjen e kolizionove në MD5 duke marrë parasysh specifikat e sulmit. Në serverin RADIUS FreeRADIUS, problemi është zgjidhur në versionet 3.0.27 dhe 3.2.5 përmes aktivizimit të mundësisë së aplikimit të detyrueshëm të atributit Message-Authenticator dhe shtimit të një cilësimi për të kufizuar përpunimin e paketave me atributin Proxy-State.

Burimi: opennet.ru

Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS 🔥 Bleni hostim të besueshëm për faqe me mbrojtje nga DDoS, serverë VPS VDS | ProHoster