Dobësi në protokollin RADIUS që lejon falsifikimin e një përgjigje vërtetimi

Një grup studiuesish nga disa universitete amerikane dhe kompanitë Cloudflare dhe Microsoft kanë zhvilluar një teknikë të re sulmi në protokollin RADIUS të përdorur nga operatorët e telekomit, shërbimet cloud dhe ofruesit VPN për vërtetimin, autorizimin dhe llogaritjen e përdoruesve. Sulmi, i koduar me emrin Blast-RADIUS, bën të mundur krijimin e një përgjigjeje të serverit RADIUS gjatë vërtetimit dhe organizimin e një lidhjeje abonenti pa e ditur fjalëkalimin e hyrjes.

Për të shfrytëzuar cenueshmërinë (CVE-2024-3596), një sulmues duhet të jetë në gjendje të përgjojë trafikun tranzit dhe të kryejë një sulm të plotë MITM që i lejon ata të lexojnë, përgjojnë, bllokojnë dhe modifikojnë paketat UDP transit hyrëse dhe dalëse të dërguara nga aksesi pikat për të kërkuar vërtetimin e klientit (Access-Request) dhe kthehen nga serveri RADIUS duke konfirmuar ose refuzuar operacionin. Pasi ka përgjuar kërkesën e vërtetimit, sulmuesi mund të dërgojë një përgjigje fiktive, duke treguar në këtë përgjigje një lloj tjetër rezultati (për shembull, Access-Prano në vend të Access-Refuzoj). Një sulmues mund të përgjojë gjithashtu përgjigjen Access-Challenge të përdorur për vërtetimin me dy faktorë dhe ta zëvendësojë atë me një përgjigje Access-Prano për të anashkaluar hapin shtesë të verifikimit.

Dobësi në protokollin RADIUS që lejon falsifikimin e një përgjigje vërtetimi

Sulmi bazohet në faktin se protokolli RADIUS përdor UDP si transport dhe verifikon integritetin e mesazheve të transmetuara duke përdorur algoritmin MD5. Për të verifikuar mesazhet e transmetuara midis server Kur kryhet vërtetimi midis pikës së aksesit dhe serverit RADIUS, përdoret një çelës sekret që është i njohur për pikën e aksesit dhe serverin RADIUS, por i panjohur për sulmuesin. Në përgjigje të kërkesës së vërtetimit, serveri RADIUS gjeneron një hash MD5, të cilin serveri i aksesit e përdor për të verifikuar nëse mesazhi është dërguar nga një server i autorizuar. Hashi MD5 përfshin vlerën e rastësishme të dërguar në kërkesë, identifikuesin e kërkesës, atributet e kthyera dhe çelësin sekret.

Një sulmues në një sulm MITM mund të përgjojë identifikuesin dhe vlerën e rastësishme të dërguar në kërkesë, dhe gjithashtu mund të parashikojë kodin optik, madhësinë dhe atributet. Detyra zbret në gjenerimin e një hash të saktë verifikimi që do të korrespondonte me rezultatin e ndryshuar të operacionit dhe do të verifikohej përmes hashimit duke përdorur një çelës sekret. Algoritmi MD5 nuk është rezistent ndaj zgjedhjes së përplasjes, gjë që lejon një sulmues, duke manipuluar një mbushje të parëndësishme, të zgjedhë një kombinim të dhënash me parametrat e kërkuar, hash-i MD5 i të cilit do të përkojë me hash-in MD5 të përgjigjes origjinale dhe të dërgojë një përgjigje fiktive me një kod vërtetimi të suksesshëm (Access-Accept) në vend të një mesazhi gabimi.

Dobësi në protokollin RADIUS që lejon falsifikimin e një përgjigje vërtetimi

Meqenëse autentifikimi dhe kontrolli i integritetit nuk aplikohen gjatë përpunimit të paketave të Kërkesës për Qasje, gjatë sulmit kërkesa origjinale nga server Për të fituar akses, një sulmues mund të fusë një atribut shtesë "Proxy-State", i cili do të pasqyrohet nga serveri RADIUS në përgjigjen e tij. Përmbajtja "Proxy-State" zgjidhet duke pasur parasysh përplasjet, në mënyrë që vlera e verifikimit hash MD5 në përgjigjet reale dhe të falsifikuara të jetë identike. Gjatë eksperimentit, gjetja e një përplasjeje MD5 për të kryer sulmin zgjati 3-6 minuta, që është më shumë se koha tipike prej 30-60 sekondash. Megjithatë, koha e kërkimit të përplasjes mund të reduktohet duke përdorur harduer më të fuqishëm, duke përdorur GPU dhe duke paralelizuar operacionet.

Si masë kryesore për të mbrojtur kundër cenueshmërisë, propozohet përdorimi i protokollit EAP (Extensible Authentication Protocol, RFC 3579), i cili përdor atributin Message-Authenticator për verifikimin shtesë të mesazhit. Për t'u mbrojtur nga sulmet, mund të përdorni edhe shtesat e protokollit (RadSec), të cilat mundësojnë transmetimin e mesazheve RADIUS mbi kanale të koduara bazuar në TLS ose DTLS. Përveç kësaj, ju mund të zvogëloni vlerat e skadimit të përgjigjes në minimum dhe të bllokoni përgjigjet me atributin Proxy-State. Transmetimi i mesazheve RADIUS përmes TCP e bën sulmin më të vështirë, por nuk e pengon atë të ndodhë.

Kodi për kryerjen e sulmit nuk është publikuar ende publikisht, por projekti hashclash ka marrë ndryshime që përmirësojnë përzgjedhjen e përplasjeve në MD5, duke marrë parasysh specifikat e sulmit. Serveri FreeRADIUS RADIUS e trajtoi problemin në versionet 3.0.27 dhe 3.2.5 duke e bërë të detyrueshëm atributin Message-Authenticator dhe duke shtuar një cilësim për të kufizuar përpunimin e paketave me atributin Proxy-State.

Burimi: opennet.ru

Bleni një host të besueshëm për faqet me mbrojtje DDoS, serverë VPS VDS 🔥 Bleni hosting të besueshëm të faqeve të internetit me mbrojtje DDoS, servera VPS VDS | ProHoster