Vulnerabilidades en la interfaz web de los dispositivos de red Juniper que se envían con JunOS

Se han identificado varias vulnerabilidades en la interfaz web J-Web, que se utiliza en los dispositivos de red de Juniper equipados con el sistema operativo JunOS. La más crítica (CVE-2022-22241) permite ejecutar código de forma remota sin autenticación mediante el envío de una solicitud HTTP especialmente formada. Se recomienda a los usuarios del equipo Juniper que instalen una actualización de firmware, y si esto no es posible, que se aseguren de que el acceso a la interfaz web esté bloqueado desde redes externas y que esté limitado a hosts de confianza.

La esencia de la vulnerabilidad radica en que la ruta de archivo proporcionada por el usuario se procesa en el script /jsdm/ajax/logging_browse.php sin filtrar el prefijo del tipo de contenido antes de la verificación de autenticación. Un atacante puede enviar un archivo phar malicioso haciéndose pasar por una imagen y lograr la ejecución de código PHP almacenado en el archivo phar utilizando el método de ataque 'Phar deserialization' (por ejemplo, especificando en la solicitud 'filepath=phar:/ruta/pharfile.jpg').

El problema es que, al verificar el archivo subido utilizando la función PHP is_dir(), esta función automáticamente deserializa los metadatos del archivo Phar (PHP Archive) al procesar rutas que comienzan con 'phar://'. Un efecto similar se observa al procesar las rutas de archivos proporcionadas por el usuario en las funciones file_get_contents(), fopen(), file(), file_exists(), md5_file(), filemtime() y filesize().

El ataque se complica porque, además de iniciar la ejecución del archivo phar, el atacante debe encontrar una forma de cargarlo en el dispositivo (a través de /jsdm/ajax/logging_browse.php sólo se puede especificar una ruta para ejecutar un archivo ya existente). Se mencionan entre los posibles escenarios de carga de archivos en el dispositivo el envío de un archivo phar haciéndose pasar por una imagen a través de un servicio de transferencia de imágenes y la inserción del archivo en la caché del contenido web.

Otras vulnerabilidades:

  • CVE-2022-22242 — inyección de parámetros externos no filtrados en la salida del script error.php, que permite llevar a cabo un ataque de scripting entre sitios y ejecutar código JavaScript arbitrario en el navegador del usuario al hacer clic en un enlace (por ejemplo, «https://JUNOS_IP/error.php?SERVER_NAME=». La vulnerabilidad puede ser utilizada para interceptar parámetros de sesión del administrador, si el atacante logra que el administrador abra un enlace especialmente diseñado.
  • CVE-2022-22243, CVE-2022-22244 — inyección de expresiones XPATH a través de scripts jsdm/ajax/wizards/setup/setup.php y /modules/monitor/interfaces/interface.php, permitiendo a un usuario autenticado no privilegiado manipular las sesiones del administrador.
  • CVE-2022-22245 — falta de limpieza adecuada de la secuencia «..» en las rutas procesadas en el script Upload.php, lo que permite a un usuario autenticado cargar su archivo PHP en un directorio que permite la ejecución de scripts PHP (por ejemplo, pasando la ruta «fileName=\..\..\..\..\www\dir\new\shell.php»).
  • CVE-2022-22246 — posibilidad de ejecutar un archivo PHP local arbitrario mediante manipulaciones de un usuario autenticado con el script jrest.php, donde los parámetros externos se utilizan para formar el nombre del archivo que se carga mediante la función «require_once()» (por ejemplo, «/jrest.php?payload=alol/lol/any\..\..\..\..\any\file»).

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster