Уязвимости в уеб интерфейса на мрежови устройства Juniper, доставени с JunOS

Бяха идентифицирани няколко уязвимости в уеб интерфейса J-Web, който се използва в мрежовите устройства на Juniper, оборудвани с операционната система JunOS, най-опасната от които (CVE-2022-22241) ви позволява дистанционно да изпълнявате своя код в системата без удостоверяване чрез изпращане на специално проектирана HTTP заявка. Потребителите на оборудване Juniper се съветват да инсталират актуализации на фърмуера и ако това не е възможно, уверете се, че достъпът до уеб интерфейса е блокиран от външни мрежи и ограничен само до доверени хостове.

Същността на уязвимостта е, че предаденият от потребителя път на файла се обработва в скрипта /jsdm/ajax/logging_browse.php без филтриране на префикса с типа съдържание на етапа преди проверката за удостоверяване. Нападателят може да предаде злонамерен phar файл под прикритието на изображение и да постигне изпълнение на PHP кода, намиращ се в phar архива, като използва метода за атака „Phar десериализация“ (например, указвайки „filepath=phar:/path/pharfile.jpg ” в заявката).

Проблемът е, че при проверка на качен файл с помощта на PHP функцията is_dir(), тази функция автоматично десериализира метаданните от архива на Phar, когато обработва пътища, започващи с „phar://“. Подобен ефект се наблюдава при обработката на предоставени от потребителя файлови пътища във функциите file_get_contents(), fopen(), file(), file_exists(), md5_file(), filemtime() и filesize().

Атаката се усложнява от факта, че в допълнение към инициирането на изпълнението на phar архива, атакуващият трябва да намери начин да го изтегли на устройството (чрез достъп до /jsdm/ajax/logging_browse.php можете само да посочите пътя до изпълни вече съществуващ файл). Възможните сценарии за попадане на файлове в устройството включват изтегляне на phar файл, маскиран като изображение, чрез услуга за прехвърляне на изображения и заместване на файла в кеша на уеб съдържанието.

Други уязвимости:

  • CVE-2022-22242 – заместване на нефилтрирани външни параметри в изхода на скрипта error.php, което позволява междусайтови скриптове и изпълнение на произволен JavaScript код в браузъра на потребителя при следване на връзка (например „https:// JUNOS_IP/error.php?SERVER_NAME= alert(0) " Уязвимостта може да се използва за прихващане на параметри на администраторска сесия, ако нападателите успеят да накарат администратора да отвори специално проектирана връзка.
  • CVE-2022-22243, CVE-2022-22244 Заместването на XPATH израз чрез скриптове jsdm/ajax/wizards/setup/setup.php и /modules/monitor/interfaces/interface.php позволява на непривилегирован удостоверен потребител да манипулира администраторски сесии.
  • CVE-2022-22245 Липсата на правилно дезинфекция на последователността „..“ в пътищата, обработени в скрипта Upload.php, позволява на удостоверен потребител да качи своя PHP файл в директория, която позволява изпълнението на PHP скриптове (например чрез предаване пътят "fileName=\. .\..\..\..\www\dir\new\shell.php").
  • CVE-2022-22246 - Възможност за произволно изпълнение на локален PHP файл чрез манипулиране от удостоверен потребител на скрипта jrest.php, в който се използват външни параметри за формиране на името на файла, зареден от функцията "require_once()" (за например, "/jrest.php?payload =alol/lol/any\..\..\..\..\any\file")

Източник: opennet.ru

Добавяне на нов коментар