5671,5672 - Pentesting AMQP
Reading time: 4 minutes
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Grundlegende Informationen
Von cloudamqp:
RabbitMQ ist eine Nachrichtenwarteschlangen-Software, die auch als Nachrichtenbroker oder Warteschlangenmanager bekannt ist. Einfach gesagt; es ist Software, in der Warteschlangen definiert sind, mit denen Anwendungen verbunden sind, um eine Nachricht oder Nachrichten zu übertragen.
Eine Nachricht kann jede Art von Informationen enthalten. Sie könnte beispielsweise Informationen über einen Prozess oder eine Aufgabe enthalten, die in einer anderen Anwendung (die sich sogar auf einem anderen Server befinden könnte) gestartet werden soll, oder es könnte sich einfach um eine einfache Textnachricht handeln. Die Warteschlangenmanager-Software speichert die Nachrichten, bis eine empfangende Anwendung sich verbindet und eine Nachricht von der Warteschlange abruft. Die empfangende Anwendung verarbeitet dann die Nachricht.
Definition von .
Standardport: 5672,5671
PORT STATE SERVICE VERSION
5672/tcp open amqp RabbitMQ 3.1.5 (0-9)
Aufzählung
Manuell
import amqp
#By default it uses default credentials "guest":"guest"
conn = amqp.connection.Connection(host="<IP>", port=5672, virtual_host="/")
conn.connect()
for k, v in conn.server_properties.items():
print(k, v)
Automatisch
nmap -sV -Pn -n -T4 -p 5672 --script amqp-info <IP>
PORT STATE SERVICE VERSION
5672/tcp open amqp RabbitMQ 3.1.5 (0-9)
| amqp-info:
| capabilities:
| publisher_confirms: YES
| exchange_exchange_bindings: YES
| basic.nack: YES
| consumer_cancel_notify: YES
| copyright: Copyright (C) 2007-2013 GoPivotal, Inc.
| information: Licensed under the MPL. See http://www.rabbitmq.com/
| platform: Erlang/OTP
| product: RabbitMQ
| version: 3.1.5
| mechanisms: PLAIN AMQPLAIN
|_ locales: en_US
Brute Force
Andere RabbitMQ-Ports
In https://www.rabbitmq.com/networking.html finden Sie, dass RabbitMQ mehrere Ports verwendet:
- 1883, 8883: (MQTT-Clients ohne und mit TLS, wenn das MQTT-Plugin aktiviert ist. Erfahren Sie hier mehr darüber, wie man MQTT pentestet.
- 4369: epmd, ein Peer-Discovery-Dienst, der von RabbitMQ-Knoten und CLI-Tools verwendet wird. Erfahren Sie hier mehr darüber, wie man diesen Dienst pentestet.
- 5672, 5671: verwendet von AMQP 0-9-1 und 1.0-Clients ohne und mit TLS
- 15672: HTTP-API Clients, Management-UI und rabbitmqadmin (nur wenn das Management-Plugin aktiviert ist). Erfahren Sie hier mehr darüber, wie man diesen Dienst pentestet.
- 15674: STOMP-über-WebSockets-Clients (nur wenn das Web STOMP-Plugin aktiviert ist)
- 15675: MQTT-über-WebSockets-Clients (nur wenn das Web MQTT-Plugin aktiviert ist)
- 15692: Prometheus-Metriken (nur wenn das Prometheus-Plugin aktiviert ist)
- 25672: verwendet für die Kommunikation zwischen Knoten und CLI-Tools (Erlang-Verteilungsserver-Port) und wird aus einem dynamischen Bereich zugewiesen (standardmäßig auf einen einzelnen Port beschränkt, berechnet als AMQP-Port + 20000). Es sei denn, externe Verbindungen auf diesen Ports sind wirklich notwendig (z. B. verwendet der Cluster Federation oder CLI-Tools werden auf Maschinen außerhalb des Subnetzes verwendet), sollten diese Ports nicht öffentlich zugänglich sein. Siehe Netzwerkanleitung für Details. Nur 9 dieser Ports sind im Internet geöffnet.
- 35672-35682: verwendet von CLI-Tools (Erlang-Verteilung-Client-Ports) zur Kommunikation mit Knoten und wird aus einem dynamischen Bereich zugewiesen (berechnet als Server-Verteilung-Port + 10000 bis Server-Verteilung-Port + 10010). Siehe Netzwerkanleitung für Details.
- 61613, 61614: STOMP-Clients ohne und mit TLS (nur wenn das STOMP-Plugin aktiviert ist). Weniger als 10 Geräte mit diesem Port geöffnet und hauptsächlich UDP für DHT-Knoten.
Shodan
AMQP
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.