J-Web veebiliideses, mida kasutatakse Juniperi võrguseadmetes, mis on varustatud JunOS operatsioonisüsteemiga, on tuvastatud mitmeid haavatavusi, millest kõige ohtlikum (CVE-2022-22241) võimaldab kaugel autentimist läbimata süsteemis oma koodi käivitada, saates spetsiaalselt vormindatud HTTP-päringu. Juniperi seadmete kasutajatele soovitatakse paigaldada uusim püsivara värskendus ning kui see pole võimalik, tagada, et veebiliidese juurde pääs oleks välisest võrgust blokeeritud ja piiratud ainult usaldusväärsete hostidega.
Haavatavuse olemus seisneb selles, et kasutaja edastatud faili tee töödeldakse skriptis /jsdm/ajax/logging_browse.php ilma sisu tüübi prefiksi filtreerimiseta enne autentimise kontrolle. Ründaja võib edastada pahatahtliku phar-faili pildi nime all ja saavutada loodud phar-arkhi PHP-koodi täitmise, kasutades 'Phar deserialization' rünnakumeetodit (nt määrates päringus 'filepath=phar:/tee/pharfile.jpg').
Probleem on selles, et PHP-funktsiooni is_dir() abil laaditud faili kontrollimisel teostab see funktsioon automaatselt Phar (PHP Archive) arhiivist metainformatsiooni deserialiseerimise teele, mis algab 'phar://'. Sarnane efekt ilmneb ka kasutaja edastatud failiteede töötlemisel funktsioonides file_get_contents(), fopen(), file(), file_exists(), md5_file(), filemtime() ja filesize().
Rünnakut raskendab see, et lisaks phar-arhiivi teostamise algatamisele peab ründaja leidma viisi selle seadmele laadimiseks (faili teetöötlemiseks, mis juba olemas on, saab kasutada ainult /jsdm/ajax/logging_browse.php kaudu). Failide seadmele saamise võimalike stsenaariumide hulgas on nimetatud phar-faili üleslaadimist pildina pildiedastusteenuse kaudu ja faili asetamist veebisisu vahemällu.
Teised haavatavused:
- CVE-2022-22242 — filtreerimata välistä parameetrite sisestamine skripti error.php väljundisse võimaldab rünnata ja täita kasutaja brauseris juhuslikku JavaScripti koodi, kui klikitakse lingile (näiteks «https://JUNOS_IP/error.php?SERVER_NAME=». Selle haavatavuse abil saab ründaja omandada administraatori seansi parameetreid, kui talle õnnestub avada halduri poolt spetsiaalselt kujundatud link.
- CVE-2022-22243, CVE-2022-22244 — XPATH väljendite sisestamine skriptides jsdm/ajax/wizards/setup/setup.php ja /modules/monitor/interfaces/interface.php võimaldab privileegideta autentitud kasutajal manipuleerida administraatori seanssidega.
- CVE-2022-22245 — puudulik «..» järjestuse puhastamine mainitudes, mida töödeldakse skriptis Upload.php, võimaldab autentitud kasutajal laadida oma PHP faili katalooge, mis lubavad PHP skriptide käivitamist (näiteks edastades tee «fileName=\..\..\..\..\www\dir\new\shell.php»).
- CVE-2022-22246 — võimalus täita suvalist lokaalset PHP-faili autentitud kasutaja manipuleerimise kaudu skriptiga jrest.php, kus välised parameetrid kasutatakse faili nime genereerimiseks, mida laaditakse funktsiooni „require_once()” kaudu (näiteks „/jrest.php?payload=alol/lol/any\..\..\..\..\any\file”)
Allikas: opennet.ru
