mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-26 14:40:37 +00:00
91 lines
8.2 KiB
Markdown
91 lines
8.2 KiB
Markdown
# 5671,5672 - Pentesting AMQP
|
|
|
|
<details>
|
|
|
|
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
|
|
|
* Vous travaillez dans une **entreprise de cybersécurité** ? Vous voulez voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous accéder à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)!
|
|
* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs**](https://opensea.io/collection/the-peass-family) exclusifs
|
|
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez**-moi sur **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Partagez vos astuces de hacking en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
## Informations de base
|
|
|
|
**RabbitMQ** est un **logiciel de mise en file d'attente de messages** également connu sous le nom de _courtier de messages_ ou _gestionnaire de file d'attente_. En termes simples, c'est un logiciel où des files d'attente sont définies, auxquelles les applications se connectent afin de transférer un message ou des messages.\
|
|
Un **message peut inclure tout type d'information**. Il pourrait, par exemple, contenir des informations sur un processus ou une tâche qui devrait démarrer sur une autre application (qui pourrait même être sur un autre serveur), ou cela pourrait être juste un simple message texte. Le logiciel gestionnaire de file d'attente stocke les messages jusqu'à ce qu'une application réceptrice se connecte et retire un message de la file d'attente. L'application réceptrice traite ensuite le message.\
|
|
Définition tirée de [ici](https://www.cloudamqp.com/blog/2015-05-18-part1-rabbitmq-for-beginners-what-is-rabbitmq.html).
|
|
|
|
**Port par défaut** : 5672,5671
|
|
```
|
|
PORT STATE SERVICE VERSION
|
|
5672/tcp open amqp RabbitMQ 3.1.5 (0-9)
|
|
```
|
|
## Énumération
|
|
|
|
### Manuel
|
|
```python
|
|
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)
|
|
```
|
|
### Automatique
|
|
```bash
|
|
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
|
|
|
|
* [**Brute-Force du protocole AMQP**](../generic-methodologies-and-resources/brute-force.md#amqp-activemq-rabbitmq-qpid-joram-and-solace)
|
|
* [**Brute-Force du protocole STOMP**](../generic-methodologies-and-resources/brute-force.md#stomp-activemq-rabbitmq-hornetq-and-openmq)
|
|
|
|
## Autres ports RabbitMQ
|
|
|
|
D'après [https://www.rabbitmq.com/networking.html](https://www.rabbitmq.com/networking.html), **rabbitmq utilise plusieurs ports** :
|
|
|
|
* **1883, 8883** : (clients [MQTT](http://mqtt.org) sans et avec TLS, si le [plugin MQTT](https://www.rabbitmq.com/mqtt.html) est activé. [**En savoir plus sur comment réaliser un pentest MQTT ici**](1883-pentesting-mqtt-mosquitto.md).
|
|
* **4369 : epmd**, un service de découverte de pairs utilisé par les nœuds RabbitMQ et les outils CLI. [**En savoir plus sur comment réaliser un pentest de ce service ici**](4369-pentesting-erlang-port-mapper-daemon-epmd.md).
|
|
* **5672, 5671** : utilisés par les clients AMQP 0-9-1 et 1.0 sans et avec TLS
|
|
* **15672** : clients [API HTTP](https://www.rabbitmq.com/management.html), [interface de gestion](https://www.rabbitmq.com/management.html) et [rabbitmqadmin](https://www.rabbitmq.com/management-cli.html) (uniquement si le [plugin de gestion](https://www.rabbitmq.com/management.html) est activé). [**En savoir plus sur comment réaliser un pentest de ce service ici**](15672-pentesting-rabbitmq-management.md).
|
|
* 15674 : clients STOMP-over-WebSockets (uniquement si le [plugin Web STOMP](https://www.rabbitmq.com/web-stomp.html) est activé)
|
|
* 15675 : clients MQTT-over-WebSockets (uniquement si le [plugin Web MQTT](https://www.rabbitmq.com/web-mqtt.html) est activé)
|
|
* 15692 : métriques Prometheus (uniquement si le [plugin Prometheus](https://www.rabbitmq.com/prometheus.html) est activé)
|
|
* 25672 : utilisé pour la communication inter-nœuds et les outils CLI (port du serveur de distribution Erlang) et est alloué à partir d'une plage dynamique (limité à un seul port par défaut, calculé comme port AMQP + 20000). À moins que des connexions externes sur ces ports soient vraiment nécessaires (par exemple, le cluster utilise la [fédération](https://www.rabbitmq.com/federation.html) ou des outils CLI sont utilisés sur des machines hors du sous-réseau), ces ports ne devraient pas être exposés publiquement. Voir le [guide de réseau](https://www.rabbitmq.com/networking.html) pour plus de détails. **Seulement 9 de ces ports ouverts sur internet**.
|
|
* 35672-35682 : utilisés par les outils CLI (ports clients de distribution Erlang) pour la communication avec les nœuds et sont alloués à partir d'une plage dynamique (calculée comme port de distribution du serveur + 10000 à port de distribution du serveur + 10010). Voir le [guide de réseau](https://www.rabbitmq.com/networking.html) pour plus de détails.
|
|
* 61613, 61614 : clients [STOMP](https://stomp.github.io/stomp-specification-1.2.html) sans et avec TLS (uniquement si le [plugin STOMP](https://www.rabbitmq.com/stomp.html) est activé). Moins de 10 appareils avec ce port ouvert et principalement UDP pour les nœuds DHT.
|
|
|
|
## Shodan
|
|
|
|
* `AMQP`
|
|
|
|
<details>
|
|
|
|
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
|
|
|
* Vous travaillez dans une **entreprise de cybersécurité** ? Vous voulez voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous accéder à la **dernière version du PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop)!
|
|
* Découvrez [**La Famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection d'[**NFTs exclusifs**](https://opensea.io/collection/the-peass-family)
|
|
* Obtenez le [**merchandising officiel PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Partagez vos astuces de hacking en soumettant des PR au** [**dépôt hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**dépôt hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|