Sicherheitslücken im Webinterface von Juniper-Netzwerkgeräten, die mit JunOS geliefert werden

In der J-Web-Webschnittstelle, die in Juniper-Netzwerkgeräten verwendet wird, die mit dem JunOS-Betriebssystem ausgestattet sind, wurden mehrere Schwachstellen identifiziert. Die gefährlichste davon (CVE-2022-22241) ermöglicht es Ihnen, Ihren Code aus der Ferne im System auszuführen, ohne dies zu tun Authentifizierung durch Senden einer speziell entwickelten HTTP-Anfrage. Benutzern von Juniper-Geräten wird empfohlen, Firmware-Updates zu installieren. Wenn dies nicht möglich ist, stellen Sie sicher, dass der Zugriff auf die Webschnittstelle von externen Netzwerken blockiert und nur auf vertrauenswürdige Hosts beschränkt wird.

Der Kern der Sicherheitslücke besteht darin, dass der vom Benutzer übergebene Dateipfad im Skript /jsdm/ajax/logging_browse.php verarbeitet wird, ohne dass das Präfix mit dem Inhaltstyp in der Phase vor der Authentifizierungsprüfung gefiltert wird. Ein Angreifer kann eine bösartige Phar-Datei unter dem Deckmantel eines Bildes übertragen und mithilfe der Angriffsmethode „Phar-Deserialisierung“ (z. B. durch Angabe von „filepath=phar:/path/pharfile.jpg“) die Ausführung des im Phar-Archiv befindlichen PHP-Codes erreichen “ in der Anfrage).

Das Problem besteht darin, dass beim Überprüfen einer hochgeladenen Datei mit der PHP-Funktion is_dir() diese Funktion automatisch die Metadaten aus dem Phar-Archiv deserialisiert, wenn Pfade verarbeitet werden, die mit „phar://“ beginnen. Ein ähnlicher Effekt wird beobachtet, wenn vom Benutzer bereitgestellte Dateipfade in den Funktionen file_get_contents(), fopen(), file(), file_exists(), md5_file(), filemtime() und filesize() verarbeitet werden.

Der Angriff wird durch die Tatsache erschwert, dass der Angreifer nicht nur die Ausführung des Phar-Archivs initiieren muss, sondern auch einen Weg finden muss, es auf das Gerät herunterzuladen (durch Zugriff auf /jsdm/ajax/logging_browse.php können Sie nur den Pfad angeben). eine bereits vorhandene Datei ausführen). Zu den möglichen Szenarien, in denen Dateien auf das Gerät gelangen, gehören das Herunterladen einer als Bild getarnten Phar-Datei über einen Bildübertragungsdienst und das Ersetzen der Datei im Web-Content-Cache.

Weitere Schwachstellen:

  • CVE-2022-22242 – Ersetzung ungefilterter externer Parameter in der Ausgabe des error.php-Skripts, das Cross-Site-Scripting und die Ausführung von beliebigem JavaScript-Code im Browser des Benutzers ermöglicht, wenn er einem Link folgt (z. B. „https:// JUNOS_IP/error.php?SERVER_NAME= alert(0) " Die Schwachstelle könnte genutzt werden, um Administrator-Sitzungsparameter abzufangen, wenn es Angreifern gelingt, den Administrator dazu zu bringen, einen speziell gestalteten Link zu öffnen.
  • CVE-2022-22243, CVE-2022-22244 XPATH-Ausdrucksersetzung über die Skripte jsdm/ajax/wizards/setup/setup.php und /modules/monitor/interfaces/interface.php ermöglicht es einem nicht privilegierten authentifizierten Benutzer, Administratorsitzungen zu manipulieren.
  • CVE-2022-22245 Mangelnde ordnungsgemäße Bereinigung der „..“-Sequenz in Pfaden, die im Upload.php-Skript verarbeitet werden, ermöglicht es einem authentifizierten Benutzer, seine PHP-Datei in ein Verzeichnis hochzuladen, das die Ausführung von PHP-Skripten ermöglicht (z. B. durch Übergeben von der Pfad „fileName=\. .\..\..\..\www\dir\new\shell.php“).
  • CVE-2022-22246 – Möglichkeit der willkürlichen lokalen PHP-Dateiausführung durch Manipulation des jrest.php-Skripts durch einen authentifizierten Benutzer, bei dem externe Parameter verwendet werden, um den Namen der von der Funktion „require_once()“ geladenen Datei zu bilden (z Beispiel: „/jrest.php?payload =alol/lol/any\..\..\..\..\any\file“)

Source: opennet.ru

Kommentar hinzufügen