Knowledge Base

Apache ActiveMQ открыт публично

Apache ActiveMQ открыт публично — Collapse Point

Категория: Server Hardening · Риск: critical

Apache ActiveMQ открыт публично — Collapse Point

Критическая угроза

Apache ActiveMQ — брокер сообщений, через который часто проходят события заказов, платежей, уведомлений, очереди фоновых задач и интеграции между сервисами.

Публичная административная консоль ActiveMQ опасна не только как “ещё одна панель”. Это точка, через которую можно повлиять на бизнес-процессы: остановить очереди, удалить сообщения, подменить маршрутизацию или получить доступ к чувствительным данным в сообщениях.

Почему это фундаментальная уязвимость

ActiveMQ exposed -> message broker control -> business process disruption -> infrastructure compromise

Безопасная проверка

Проверка должна быть read-only: только TCP-connect и HTTP-запрос главной страницы/консоли без авторизации, без payload, без перебора паролей.

curl -I --max-time 5 http://example.com:8161/
curl -I --max-time 5 http://example.com:8161/admin/

Если порт отвечает из интернета и страница содержит признаки ActiveMQ, это уже высокий или критический риск. Не проверяйте дефолтные пароли на чужих системах.

Немедленное исправление

1. Закрыть порт 8161 на внешнем интерфейсе

ufw deny 8161/tcp
ufw reload

Для nftables:

nft add rule inet filter input tcp dport 8161 ip saddr != 10.0.0.0/8 drop

2. Привязать web console к localhost или private network

Проверьте конфигурацию Jetty/Web Console и не публикуйте консоль на `0.0.0.0`.

<!-- jetty.xml / web console listener: пример принципа -->
<property name="host" value="127.0.0.1" />

Если консоль нужна администраторам, открывайте её через VPN/private network: WireGuard, Tailscale или закрытый bastion.

3. Обновить ActiveMQ

Используйте актуальную поддерживаемую версию ActiveMQ. Для веток, затронутых CVE-2023-46604, обновление обязательно.

activemq --version

4. Усилить аутентификацию

Проверка после исправления

Из интернета порт должен быть закрыт:

nc -vz example.com 8161
curl -I --max-time 5 http://example.com:8161/admin/

Ожидаемо:

Connection timed out
Connection refused

Из VPN/private network консоль может оставаться доступной только авторизованным администраторам.

Do not do

Связанные статьи