AWS - EventBridge Scheduler Privesc
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
EventBridge Scheduler może być używany do eskalacji uprawnień poprzez planowanie wywołań do różnych usług AWS. Wykorzystując zdolność do wywoływania usług na podstawie harmonogramu, użytkownicy z wystarczającymi uprawnieniami mogą eskalować uprawnienia. Oto niektóre z kluczowych działań, które EventBridge Scheduler może wywołać, używając szablonowych celów:
Lambda: lambda:InvokeFunction - Wywołaj funkcje Lambda zgodnie z harmonogramem.
CodeBuild: codebuild:StartBuild - Rozpocznij projekty AWS CodeBuild.
CodePipeline: codepipeline:StartPipelineExecution - Wyzwól wykonania AWS CodePipeline.
ECS: ecs:RunTask - Uruchom zadania ECS.
EventBridge: events:PutEvents - Umieść zdarzenia w EventBridge.
Inspector: inspector:StartAssessmentRun - Rozpocznij oceny Amazon Inspector.
Kinesis: kinesis:PutRecord - Umieść rekordy w strumieniach Kinesis.
Firehose: firehose:PutRecord - Umieść rekordy w strumieniach dostarczania Firehose.
SageMaker: sagemaker:StartPipelineExecution - Rozpocznij wykonania potoków SageMaker.
SNS: sns:Publish - Publikuj wiadomości w tematach SNS.
SQS: sqs:SendMessage - Wyślij wiadomości do kolejek SQS.
Step Functions: states:StartExecution - Rozpocznij wykonania AWS Step Functions.
To tylko niektóre z szablonowych działań, które EventBridge Scheduler może wykonać. Jednakże, korzystając z uniwersalnych celów, można wywołać wiele innych działań w usługach AWS. Uniwersalne cele pozwalają na bardziej rozbudowane operacje API poza szablonową listą.
Więcej informacji o EventBridge Scheduler w:
iam:PassRole
, (scheduler:CreateSchedule
| scheduler:UpdateSchedule
)Użytkownicy z uprawnieniami sts:AssumeRole
, iam:PassRole
oraz scheduler:CreateSchedule lub scheduler:UpdateSchedule
mogą eskalować uprawnienia, wykorzystując EventBridge Scheduler do wywoływania usług przy użyciu roli z wyższymi uprawnieniami.
Dzięki tym uprawnieniom, atakujący może przyjąć rolę z podwyższonymi uprawnieniami i przekazać tę rolę do EventBridge Scheduler podczas tworzenia lub aktualizacji harmonogramu. Harmonogram można skonfigurować do wykonania dowolnych działań wymienionych wcześniej, takich jak wywoływanie funkcji Lambda, uruchamianie zadań ECS, wyzwalanie wykonania CodePipeline lub jakiejkolwiek operacji z 270 usług AWS wspieranych przez EventBridge Scheduler. Poprzez planowanie tych działań, atakujący mógłby nadużyć wyższych uprawnień do wykonywania nieautoryzowanych operacji w usługach AWS. \
Na przykład, mogliby skonfigurować harmonogram do wywołania funkcji Lambda, która jest szablonowym działaniem:
Oprócz ztemplatyzowanych działań serwisowych, możesz używać uniwersalnych celów w EventBridge Scheduler, aby wywołać szeroki zakres operacji API dla wielu usług AWS. Uniwersalne cele oferują elastyczność w wywoływaniu prawie każdego API. Jednym z przykładów może być użycie uniwersalnych celów dodających "AdminAccessPolicy", używając roli, która ma politykę "putRolePolicy":
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)