Уязвимости нулевого дня в межсетевом экране Palo Alto Networks, вызванные базовыми ошибками разработчиков

Man

Professional
Messages
2,965
Reaction score
488
Points
83
Злоумышленники используют цепочку из двух уязвимостей, чтобы обойти аутентификацию и повысить привилегии через веб-интерфейс управления PAN-OS, чтобы получить права root на межсетевых экранах Palo Alto Networks.

Palo Alto Networks выпустила исправления для двух активно эксплуатируемых уязвимостей, которые влияют на ее брандмауэры и виртуальные устройства безопасности. В совокупности эти недостатки позволяют злоумышленникам выполнять вредоносный код с максимально возможными привилегиями на базовой операционной системе PAN-OS, получая полный контроль над устройствами.
Ранее в этом месяце компания Palo Alto выпустила предупреждение, в котором предупредила клиентов о расследовании сообщений о потенциальной уязвимости удаленного выполнения кода (RCE) в веб-интерфейсе управления PAN-OS, и посоветовала им следовать рекомендуемым шагам для обеспечения безопасности доступа к этому интерфейсу .

В ходе расследования компания обнаружила, что атака RCE стала результатом не одной, а двух уязвимостей, обе из которых уже использовались в ограниченных атаках на устройства, интерфейс управления которых был открыт для доступа в Интернет.

Обход аутентификации и повышение привилегий​

Первая уязвимость (CVE-2024-0012) оценена как критическая с оценкой 9,3 из 10. Эксплуатируя эту проблему, злоумышленники могут обойти аутентификацию и получить административные привилегии в интерфейсе управления, что позволяет им выполнять административные действия и изменять конфигурации.

Хотя это и само по себе плохо, это не приведет напрямую к полной компрометации системы, если только эту функциональность нельзя использовать для выполнения вредоносного кода в базовой операционной системе.
Оказывается, злоумышленники нашли такой способ с помощью второй уязвимости (CVE-2024-9474), которая позволяет любому человеку с правами администратора в веб-интерфейсе выполнять код в ОС на базе Linux от имени пользователя root — это самые высокие возможные привилегии.

Обе уязвимости затрагивают PAN-OS 10.2, PAN-OS 11.0, PAN-OS 11.1 и PAN-OS 11.2, все из которых уже получили исправления.

Недостатки были незначительными.​

Исследователи из компании по безопасности watchTowr провели обратную разработку исправлений Palo Alto, чтобы проанализировать обе уязвимости, и пришли к выводу, что недостатки были результатом элементарных ошибок в процессе разработки.

Чтобы проверить, требуется ли аутентификация для доступа пользователя к странице, интерфейс управления PAN OS проверяет, включен или выключен заголовок запроса X-Pan-Authcheck. Прокси-сервер Nginx, который пересылает запросы на сервер Apache, на котором размещено веб-приложение, автоматически включает X-Pan-Authcheck на основе маршрута запроса. В некоторых случаях X-Pan-Authcheck выключен, поскольку местоположение — например, каталог /unauth/ — должно быть доступно без аутентификации, но почти все, кроме /unauth/, должно иметь включенный заголовок, что должно привести к перенаправлению пользователя на страницу входа.

Однако исследователи watchTowr обнаружили, что скрипт перенаправления под названием uiEnvSetup.php ожидает, что значение HTTP_X_PAN_AUTHCHECK будет отключено, и если это указано в запросе, сервер просто примет его.

«Мы просто... поставляем значение off в заголовок HTTP-запроса X-PAN-AUTHCHECK, и сервер услужливо отключает аутентификацию?!» — написали исследователи в своем отчете. «И в этот момент, почему кто-то удивляется?»
Вторая ошибка также тривиальна, поскольку представляет собой уязвимость внедрения команд, которая позволяет передавать команды оболочки в качестве имени пользователя в функцию AuditLog.write(), которая затем передает внедренную команду в pexecute(). Но передача полезной нагрузки в эту функцию регистрации на самом деле является результатом другой функциональности, которая сама по себе довольно пугающая, по словам исследователей.

Эта функция позволяет устройствам Palo Alto Panorama указывать пользователя и роль пользователя, от имени которого они хотят действовать, а затем получать для него полностью аутентифицированный идентификатор сеанса PHP без необходимости предоставления пароля или прохождения двухфакторной аутентификации.

В целом, благодаря такой конструкции программного обеспечения, злоумышленник может передать полезную нагрузку оболочки как часть поля имени пользователя, чтобы выдать себя за определенного пользователя и роль, которая затем будет передана в AuditLog.write(), а затем в pexecute(), что приведет к ее выполнению в базовой ОС.

«Удивительно, что эти две ошибки проникли в производственное устройство, что удивительно допустилось благодаря хакерской массе вызовов сценариев оболочки, которые скрываются под капотом устройства Palo Alto», — написали они в своем анализе.

Смягчение​

Помимо обновления затронутых брандмауэров до новых версий, администраторы должны ограничить доступ к интерфейсу управления только доверенными внутренними IP-адресами. Интерфейс управления также может быть изолирован на выделенной VLAN управления или может быть настроен для доступа через так называемые серверы перехода, которые сначала требуют отдельной аутентификации.

Оставлять интерфейсы управления PAN-OS открытыми для Интернета крайне рискованно, поскольку это не первая и, вероятно, не последняя уязвимость RCE, обнаруженная в таких устройствах. Ранее в этом году Palo Alto Networks исправила уязвимость RCE нулевого дня (CVE-2024-3400) в PAN-OS, которая была использована субъектом угроз национального уровня.

Команда по поиску угроз Palo Alto Networks отслеживает активность эксплуатации уязвимостей CVE-2024-0012 и CVE-2024-9474 под названием Operation Lunar Peak и опубликовала индикаторы компрометации, связанные с ними.

«Эта активность в основном исходила от IP-адресов, известных как прокси-/туннельный трафик для анонимных VPN-сервисов», — заявила команда. «Наблюдаемая послеэксплуатационная активность включает интерактивное выполнение команд и установку вредоносного ПО, такого как веб-шеллы, на брандмауэр».

Источник
 
Top