# AWS - MQ Enum {{#include ../../../banners/hacktricks-training.md}} ## Amazon MQ ### संदेश ब्रोकरों का परिचय **संदेश ब्रोकर** विभिन्न सॉफ़्टवेयर सिस्टमों के बीच संचार को सुविधाजनक बनाने वाले मध्यस्थ के रूप में कार्य करते हैं, जो विभिन्न प्लेटफार्मों पर बनाए जा सकते हैं और विभिन्न भाषाओं में प्रोग्राम किए जा सकते हैं। **Amazon MQ** AWS पर संदेश ब्रोकरों की तैनाती, संचालन और रखरखाव को सरल बनाता है। यह **Apache ActiveMQ** और **RabbitMQ** के लिए प्रबंधित सेवाएँ प्रदान करता है, जो निर्बाध प्रावधान और स्वचालित सॉफ़्टवेयर संस्करण अपडेट सुनिश्चित करता है। ### AWS - RabbitMQ RabbitMQ एक प्रमुख **संदेश- कतार सॉफ़्टवेयर** है, जिसे _संदेश ब्रोकर_ या _कतार प्रबंधक_ के रूप में भी जाना जाता है। यह मूल रूप से एक प्रणाली है जहाँ कतारें कॉन्फ़िगर की जाती हैं। अनुप्रयोग इन कतारों के साथ **संदेश भेजने और प्राप्त करने** के लिए इंटरफ़ेस करते हैं। इस संदर्भ में संदेश विभिन्न प्रकार की जानकारी ले जा सकते हैं, जैसे कि अन्य अनुप्रयोगों (संभवतः विभिन्न सर्वरों पर) पर प्रक्रियाएँ आरंभ करने के लिए आदेश से लेकर साधारण पाठ संदेश तक। संदेश कतार-प्रबंधक सॉफ़्टवेयर द्वारा तब तक रखे जाते हैं जब तक कि उन्हें प्राप्त करने वाले अनुप्रयोग द्वारा पुनः प्राप्त और संसाधित नहीं किया जाता। AWS RabbitMQ सर्वरों को होस्ट और प्रबंधित करने के लिए एक उपयोग में आसान समाधान प्रदान करता है। ### AWS - ActiveMQ Apache ActiveMQ® एक प्रमुख ओपन-सोर्स, जावा-आधारित **संदेश ब्रोकर** है जो अपनी बहुपरकारीता के लिए जाना जाता है। यह कई उद्योग-मानक प्रोटोकॉल का समर्थन करता है, जो विभिन्न भाषाओं और प्लेटफार्मों में व्यापक ग्राहक संगतता प्रदान करता है। उपयोगकर्ता कर सकते हैं: - JavaScript, C, C++, Python, .Net, और अधिक में लिखे गए ग्राहकों के साथ कनेक्ट करें। - विभिन्न प्लेटफार्मों से अनुप्रयोगों को एकीकृत करने के लिए **AMQP** प्रोटोकॉल का लाभ उठाएँ। - वेब अनुप्रयोग संदेश विनिमय के लिए वेब सॉकेट्स पर **STOMP** का उपयोग करें। - **MQTT** के साथ IoT उपकरणों का प्रबंधन करें। - मौजूदा **JMS** अवसंरचना को बनाए रखें और इसकी क्षमताओं का विस्तार करें। ActiveMQ की मजबूती और लचीलापन इसे कई प्रकार की संदेश आवश्यकताओं के लिए उपयुक्त बनाते हैं। ## गणना ```bash # List brokers aws mq list-brokers # Get broker info aws mq describe-broker --broker-id ## Find endpoints in .BrokerInstances ## Find if public accessible in .PubliclyAccessible # List usernames (only for ActiveMQ) aws mq list-users --broker-id # Get user info (PASSWORD NOT INCLUDED) aws mq describe-user --broker-id --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 --password --username --console-access ``` > [!WARNING] > TODO: यह बताएं कि RabbitMQ और ActiveMQ को आंतरिक रूप से कैसे सूचीबद्ध करें और सभी कतारों में सुनने और डेटा भेजने का तरीका (यदि आप जानते हैं कि इसे कैसे करना है तो PR भेजें) ## Privesc {{#ref}} ../aws-privilege-escalation/aws-mq-privesc/README.md {{#endref}} ## Unauthenticated Access {{#ref}} ../aws-unauthenticated-enum-access/aws-mq-unauthenticated-enum/README.md {{#endref}} ## Persistence यदि आप RabbitMQ वेब कंसोल तक पहुँचने के लिए क्रेडेंशियल्स जानते हैं, तो आप प्रशासनिक विशेषाधिकारों के साथ एक नया उपयोगकर्ता बना सकते हैं। ## References - [https://www.cloudamqp.com/blog/part1-rabbitmq-for-beginners-what-is-rabbitmq.html](https://www.cloudamqp.com/blog/part1-rabbitmq-for-beginners-what-is-rabbitmq.html) - [https://activemq.apache.org/](https://activemq.apache.org/) {{#include ../../../banners/hacktricks-training.md}}