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

Një grup kërkuesish nga disa universitete amerikane dhe kompanitë Cloudflare dhe Microsoft shpikën një teknikë të re sulmi ndaj protokollit RADIUS, i përdorur nga operatorët e komunikimit, shërbimet cloud dhe ofruesit e VPN për autentifikimin, autorizimin dhe llogaritjen e përdoruesve. Sulmi, i njohur me emrin Blast-RADIUS, mundëson falsifikimin e përgjigjes së serverit RADIUS gjatë autentifikimit dhe organizimin e lidhjes së abonentit pa e ditur fjalëkalimin.

Për të shfrytëzuar këtë dobësi (CVE-2024-3596), sulmuesi duhet të ketë mundësinë e kapjes së trafik transit dhe kryerjen e një sulmi të plotë MITM, i cili lejon të lexojë, kapë, bllokojë dhe modifikojë paketat UDP që vijnë dhe dalin, të dërguara nga piketat e qasjes për të kërkuar autentifikimin e klientëve (Access-Request) dhe të kthehen nga serveri RADIUS me konfirmimin apo refuzimin e operacionit. Pasi të kapë kërkesën e autentifikimit, sulmuesi mund të dërgojë një përgjigje false, duke treguar në këtë përgjigje një tip tjetër rezultati (p.sh., Access-Accept në vend të Access-Reject). Sulmuesi gjithashtu potencialisht mund të kapë përgjigjen Access-Challenge, e cila përdoret gjatë autentifikimit me dy faktorë, dhe ta zëvendësojë atë me përgjigjen Access-Accept për të anashkaluar kalimin e hapit të dëshmisë shtesë.

Dobësi 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 përmes algoritmit MD5. Për verifikimin e mesazheve, të dërguara midis server aksesit dhe serverit RADIUS, aplikohet një çelës sekret, i njohur nga pika e qasjes dhe serveri RADIUS, por i panjohur për sulmuesin. Në përgjigje të kërkesës për autentifikim, serveri RADIUS gjeneron një hash MD5, me anë të të cilit serveri i aksesit mund të verifikojë se mesazhi është dërguar nga një server i autorizuar. Hash-i 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 rastësor të dërguar në kërkesë, dhe gjithashtu mund të parashikojë kodin e operacionit, madhësinë dhe atributet. Detyra përfundon në formimin e një hash verifikues korrekt, i cili do të përputhet me rezultatin e ndërruar të operacionit dhe do të kalojë verifikimin përmes hash-it me përdorimin e çelësit sekret. Algoritmi MD5 nuk është i qëndrushëm ndaj gjetjes së kolizionit, çka i lejon sulmuesit, duke manipuluar me mbushjen plotësuese pa rëndësi, të gjejë një kombinim të të dhënave me parametrat e nevojshëm, hash-i MD5 i të cilit do të përputhet me hash-in MD5 të përgjigjes fillestare, dhe të dërgojë një përgjigje të rreme me kodin e pranimit të suksesit të autentikimit (Access-Accept) në vend të mesazhit me informacion mbi gabimin.

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

Duke qenë se gjatë përpunimit të paketave me kërkesë akses (Access-Request) nuk aplikohet autentikimi dhe verifikimi i integritetit, gjatë sulmit në kërkesën origjinale nga serverë aksesit, sulmuesi mund të fusë atributin shtesë 'Proxy-State', i cili do të reflektohet nga serveri RADIUS në përgjigjen e tij. Përmbajtja e 'Proxy-State' përcaktohet duke marrë parasysh kolizionin në mënyrë që vlera e hash-it verifikues MD5 në përgjigjet reale dhe të rreme të jetë identike. Gjatë eksperimenti, gjetja e kolizionit në MD5 për të kryer sulmin zgjati 3-6 minuta, që është më e gjatë se koha tipike e pritjes prej 30-60 sekondash, por koha e gjetjes së kolizionit mund të reduktohet duke përdorur pajisje më të fuqishme, përfshirjen e GPU-ve dhe paralelizimin e operacioneve.

Si masë kryesore për mbrojtjen nga kësaj dobësie, rekomandohet përdorimi i protokollit EAP (Extensible Authentication Protocol, RFC 3579), në të cilin për verifikimin shtesë të mesazheve përdoret atributi Message-Authenticator. Për mbrojtje nga sulmi gjithashtu mund të përdoren zgjerime të protokollit (RadSec), që përfshijnë transmetimin e mesazheve RADIUS përmes kanaleve të enkriptuara mbi TLS ose DTLS. Për më tepër, mund të minimizohen vlerat e kohës së pritjes për marrjen e përgjigjeve dhe të bllokohen përgjigjet me atributin Proxy-State. Transmetimi i mesazheve RADIUS mbi TCP e komplikon sulmin, por nuk përjashton mundësinë e kryerjes së tij.

Kodi për kryerjen e sulmit nuk është publikuar ende në akses të hapur, por projekti hashclash ka marrë ndryshime që përmirësojnë gjetjen e kolizioneve në MD5 duke marrë parasysh specifikën e sulmit. Në serverin RADIUS FreeRADIUS, problemi është zgjidhur në versionet 3.0.27 dhe 3.2.5 duke përfshirë detyrimin e përdorimit të atributeve Message-Authenticator dhe duke shtuar një konfigurim për të kufizuar përpunimin e pacaketes me atributin Proxy-State.

Burimi: opennet.ru

Blini hosting të besueshëm për faqe interneti me mbrojtje nga DDoS, serverë VPS VDS 🔥 Blini hosting të besueshëm për faqe interneti me mbrojtje nga DDoS, serverë VPS VDS | ProHoster