Vulnerabilità nell'interfaccia web dei dispositivi di rete Juniper forniti con JunOS

Nel web interface J-Web, utilizzato nei dispositivi di rete dell'azienda Juniper dotati del sistema operativo JunOS, sono state rilevate diverse vulnerabilità, la più pericolosa delle quali (CVE-2022-22241) consente l'esecuzione remota di codice non autenticato nel sistema tramite l'invio di una richiesta HTTP appositamente formattata. Si raccomanda agli utenti dell'hardware Juniper di installare l'aggiornamento del firmware e, se ciò non è possibile, di garantire che l'accesso al web interface sia bloccato dalle reti esterne e limitato solo a host fidati.

La vulnerabilità consiste nel fatto che il percorso del file fornito dall'utente viene elaborato nello script /jsdm/ajax/logging_browse.php senza filtrare il prefisso del tipo di contenuto prima del controllo dell'autenticazione. L'attaccante può inviare un file phar dannoso spacciandolo per immagine e ottenere l'esecuzione del codice PHP archiviato nel phar, sfruttando il metodo di attacco "Phar deserialization" (ad esempio, specificando nella richiesta "filepath=phar:/percorso/pharfile.jpg").

Il problema è che, durante il controllo del file caricato tramite la funzione PHP is_dir(), questa funzione esegue automaticamente la deserializzazione dei metadati dall'archivio Phar (PHP Archive) quando elabora i percorsi che iniziano con "phar://". Un effetto simile si osserva quando vengono elaborati i percorsi dei file forniti dall'utente nelle funzioni file_get_contents(), fopen(), file(), file_exists(), md5_file(), filemtime() e filesize().

L'attacco è complicato dal fatto che, oltre a innescare l'esecuzione dell'archivio phar, l'aggressore deve trovare un modo per caricarlo sul dispositivo (attraverso accessi a /jsdm/ajax/logging_browse.php si può solo specificare un percorso per eseguire un file già esistente). Tra gli scenari possibili per il caricamento dei file sul dispositivo sono menzionati il caricamento di un file phar spacciato per un'immagine tramite un servizio di trasferimento delle immagini e l'inserimento di un file nella cache dei contenuti web.

Altre vulnerabilità:

  • CVE-2022-22242 — l'inserimento di parametri esterni non filtrati nell'output dello script error.php, che consente di ottenere cross-site scripting ed eseguire un codice JavaScript arbitrario nel browser dell'utente seguendo un link (ad esempio, "https://JUNOS_IP/error.php?SERVER_NAME="). La vulnerabilità può essere utilizzata per intercettare i parametri della sessione dell'amministratore, se l'attaccante riesce a convincere l'amministratore ad aprire un link appositamente formattato.
  • CVE-2022-22243, CVE-2022-22244 — l'inserimento di espressioni XPATH tramite gli script jsdm/ajax/wizards/setup/setup.php e /modules/monitor/interfaces/interface.php consente a un utente autenticato non privilegiato di manipolare le sessioni dell'amministratore.
  • CVE-2022-22245 — la mancanza di una corretta pulizia della sequenza «..» nei percorsi elaborati nello script Upload.php consente a un utente autenticato di caricare il proprio file PHP in una directory che consente l'esecuzione di script PHP (ad esempio, passando il percorso «fileName=\..\..\..\..\www\dir\new\shell.php»).
  • CVE-2022-22246 — la possibilità di eseguire un file PHP locale arbitrario tramite la manipolazione da parte di un utente autenticato dello script jrest.php, in cui i parametri esterni vengono utilizzati per formare il nome del file caricato dalla funzione «require_once()» (ad esempio, «/jrest.php?payload=alol/lol/any\..\..\..\..\any\file»).

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster