U web sučelju J-Web, koje se koristi u mrežnim uređajima kompanije Juniper opremljenim operativnim sustavom JunOS, otkrivene su nekoliko ranjivosti, od kojih je najopasnija (CVE-2022-22241) koja omogućuje udaljeno izvršavanje vlastitog koda u sustavu bez autentifikacije slanjem posebno oblikovanog HTTP zahtjeva. Korisnicima Juniper opreme preporučuje se da instaliraju ažuriranje firmware-a, a ako to nije moguće, da osiguraju da pristup web sučelju bude blokiran iz vanjskih mreža i ograničen samo na pouzdane domaćine.
Bit ranjivosti je u tome što se korisnički put do datoteke obrađuje u skripti /jsdm/ajax/logging_browse.php bez filtriranja prefiksa s tipom sadržaja prije provjere autentifikacije. Napadač može poslati zlonamjerni phar-datoteku prikazanu kao sliku i postići izvršenje PHP koda smještenog u phar-arhivu koristeći metodu napada „Phar deserialization“ (na primjer, navodeći u zahtjevu „filepath=phar:/put/pharfile.jpg“).
Problem je u tome što prilikom provjere učitane datoteke pomoću PHP funkcije is_dir(), ta funkcija automatski izvršava deserialization metapodataka iz Phar arhiva (PHP Archive) tijekom obrade putanja koje počinju s „phar:///“. Sličan učinak se opaža prilikom obrade putanja datoteka koje korisnik proslijedi u funkcijama file_get_contents(), fopen(), file(), file_exists(), md5_file(), filemtime() i filesize().
Napad se dodatno komplicira time što osim iniciranja izvršenja phar-arhiva, napadač mora pronaći način da ga učita na uređaj (kroz pristup /jsdm/ajax/logging_browse.php samo se može navesti put za izvršenje već postojećeg datoteke). Među mogućim scenarijima za učitavanje datoteka na uređaj spominje se učitavanje phar datoteke pod pretpostavkom slike putem usluge prijenosa slika i umetanje datoteke u predmemoriju web sadržaja.
Ostale ranjivosti:
- CVE-2022-22242 — nefiltrirano umetanje vanjskih parametara u izlaz skripte error.php, što omogućava međusajtno skriptiranje i izvršavanje proizvoljnog JavaScript koda u korisničkom pregledniku prilikom posjeta linku (npr., „https://JUNOS_IP/error.php?SERVER_NAME=“). Ova ranjivost može biti iskorištena za presretanje sesijskih parametara administratora ako napadač uspije otvoriti posebno oblikovanu vezu od strane administratora.
- CVE-2022-22243, CVE-2022-22244 — umetanje XPATH izraza putem skripti jsdm/ajax/wizards/setup/setup.php i /modules/monitor/interfaces/interface.php, omogućuje neprivilegiranom autentificiranom korisniku manipulaciju sesijama administratora.
- CVE-2022-22245 — nedostatak pravilnog čišćenja sekvence „..“ u putanjama obrađenim u skripti Upload.php omogućuje autentificiranom korisniku da učita svoj PHP datoteku u direktorij koji dopušta izvršavanje PHP skripti (npr., proslijedivši putanju „fileName=\..\..\..\..\www\dir\new\shell.php“).
- CVE-2022-22246 — mogućnost izvršenja proizvoljne lokalne PHP datoteke manipulacijom autentificiranog korisnika sa skriptom jrest.php, u kojoj se vanjski parametri koriste za formiranje imena datoteke koja se učitava funkcijom „require_once()“ (npr., „/jrest.php?payload=alol/lol/any\..\..\..\..\any\file“).
Izvor: opennet.ru
