AWS - MQ Enum

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 over websocketsを使用する。

  • MQTTを使用してIoTデバイスを管理する。

  • 既存のJMSインフラストラクチャを維持し、その機能を拡張する。

ActiveMQの堅牢さと柔軟性は、さまざまなメッセージング要件に適しています。

列挙

# 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

TODO: RabbitMQとActiveMQを内部で列挙し、すべてのキューを監視してデータを送信する方法を示してください(これを行う方法を知っている場合はPRを送信してください)

Privesc

AWS - MQ Privesc

認証なしアクセス

AWS - MQ Unauthenticated Enum

永続性

RabbitMQのWebコンソールにアクセスする資格情報を知っている場合、管理者権限を持つ新しいユーザーを作成できます。

参考文献

HackTricksのサポート

Last updated