AWS - MQ Enum

Reading time: 4 minutes

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримка HackTricks

Amazon MQ

Вступ до брокерів повідомлень

Брокери повідомлень слугують посередниками, полегшуючи комунікацію між різними програмними системами, які можуть бути побудовані на різних платформах і програмовані на різних мовах. Amazon MQ спрощує розгортання, експлуатацію та обслуговування брокерів повідомлень на AWS. Він надає керовані послуги для Apache ActiveMQ та RabbitMQ, забезпечуючи безперебійне постачання та автоматичні оновлення версій програмного забезпечення.

AWS - RabbitMQ

RabbitMQ є відомим програмним забезпеченням для черг повідомлень, також відомим як брокер повідомлень або менеджер черг. Це, по суті, система, в якій налаштовуються черги. Додатки взаємодіють з цими чергами, щоб надсилати та отримувати повідомлення. Повідомлення в цьому контексті можуть містити різноманітну інформацію, починаючи від команд для ініціювання процесів в інших додатках (можливо, на різних серверах) до простих текстових повідомлень. Повідомлення зберігаються програмним забезпеченням менеджера черг, поки їх не отримають і не оброблять приймаючі додатки. AWS надає просте у використанні рішення для хостингу та управління серверами RabbitMQ.

AWS - ActiveMQ

Apache ActiveMQ® є провідним відкритим, заснованим на Java брокером повідомлень, відомим своєю універсальністю. Він підтримує кілька стандартних протоколів галузі, пропонуючи широку сумісність клієнтів на різноманітних мовах і платформах. Користувачі можуть:

  • Підключатися до клієнтів, написаних на JavaScript, C, C++, Python, .Net та інших.
  • Використовувати протокол AMQP для інтеграції додатків з різних платформ.
  • Використовувати STOMP через веб-сокети для обміну повідомленнями веб-додатків.
  • Керувати IoT-пристроями за допомогою MQTT.
  • Підтримувати існуючу інфраструктуру JMS та розширювати її можливості.

Надійність і гнучкість ActiveMQ роблять його придатним для безлічі вимог до обміну повідомленнями.

Перерахування

bash
# List brokers
aws mq list-brokers

# Get broker info
aws mq describe-broker --broker-id <broker-id>
## Find endpoints in .BrokerInstances
## Find if public accessible in .PubliclyAccessible

# List usernames (only for ActiveMQ)
aws mq list-users --broker-id <broker-id>

# Get user info (PASSWORD NOT INCLUDED)
aws mq describe-user --broker-id <broker-id> --username <username>

# Lits configurations (only for ActiveMQ)
aws mq list-configurations
## Here you can find if simple or LDAP authentication is used

# Creacte Active MQ user
aws mq create-user --broker-id <value> --password <value> --username <value> --console-access

warning

TODO: Вкажіть, як перерахувати RabbitMQ та ActiveMQ внутрішньо та як прослуховувати всі черги і надсилати дані (надішліть PR, якщо знаєте, як це зробити)

Privesc

AWS - MQ Privesc

Unauthenticated Access

AWS - MQ Unauthenticated Enum

Persistence

Якщо ви знаєте облікові дані для доступу до веб-консолі RabbitMQ, ви можете створити нового користувача з адміністративними привілеями.

References

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримка HackTricks