AWS - EventBridge Scheduler Privesc
Last updated
Last updated
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
EventBridge Scheduler kann zur Privilegieneskalation verwendet werden, indem Anrufe an verschiedene AWS-Dienste geplant werden. Durch die Nutzung der Fähigkeit, Dienste planmäßig aufzurufen, können Benutzer mit ausreichenden Berechtigungen Privilegien eskalieren. Hier sind einige der wichtigsten Aktionen, die EventBridge Scheduler mit vorgefertigten Zielen auslösen kann:
Lambda: lambda:InvokeFunction - Lambda-Funktionen nach einem Zeitplan aufrufen.
CodeBuild: codebuild:StartBuild - AWS CodeBuild-Projekte starten.
CodePipeline: codepipeline:StartPipelineExecution - AWS CodePipeline-Ausführungen auslösen.
ECS: ecs:RunTask - ECS-Aufgaben ausführen.
EventBridge: events:PutEvents - Ereignisse in EventBridge einfügen.
Inspector: inspector:StartAssessmentRun - Amazon Inspector-Bewertungen starten.
Kinesis: kinesis:PutRecord - Datensätze in Kinesis-Streams einfügen.
Firehose: firehose:PutRecord - Datensätze in Firehose-Lieferstreams einfügen.
SageMaker: sagemaker:StartPipelineExecution - SageMaker-Pipeline-Ausführungen starten.
SNS: sns:Publish - Nachrichten an SNS-Themen veröffentlichen.
SQS: sqs:SendMessage - Nachrichten an SQS-Warteschlangen senden.
Step Functions: states:StartExecution - Ausführungen von AWS Step Functions starten.
Dies sind nur einige der vorgefertigten Aktionen, die EventBridge Scheduler ausführen kann. Durch die Verwendung universeller Ziele können jedoch viele andere Aktionen über AWS-Dienste hinweg aufgerufen werden. Universelle Ziele ermöglichen umfangreichere API-Operationen über die vorgefertigte Liste hinaus.
Weitere Informationen zu EventBridge Scheduler finden Sie in:
iam:PassRole
, (scheduler:CreateSchedule
| scheduler:UpdateSchedule
)Benutzer mit sts:AssumeRole
, iam:PassRole
und scheduler:CreateSchedule oder scheduler:UpdateSchedule
Berechtigungen können Privilegien eskalieren, indem sie den EventBridge Scheduler nutzen, um Dienste mit einer Rolle mit höheren Berechtigungen aufzurufen.
Mit diesen Berechtigungen kann ein Angreifer eine Rolle mit erhöhten Berechtigungen annehmen und diese Rolle an den EventBridge Scheduler übergeben, wenn er einen Zeitplan erstellt oder aktualisiert. Der Zeitplan kann so konfiguriert werden, dass er eine der zuvor aufgeführten Aktionen ausführt, wie z. B. das Aufrufen von Lambda-Funktionen, das Starten von ECS-Aufgaben, das Auslösen von CodePipeline-Ausführungen oder jede Operation der 270 AWS-Dienste, die vom EventBridge Scheduler unterstützt werden. Durch die Planung dieser Aktionen könnte ein Angreifer höhere Berechtigungen missbrauchen, um unbefugte Operationen über AWS-Dienste hinweg durchzuführen. \
Zum Beispiel könnten sie den Zeitplan so konfigurieren, dass er eine Lambda-Funktion aufruft, die eine vorgefertigte Aktion ist:
Zusätzlich zu den vorgefertigten Dienstaktionen können Sie universelle Ziele im EventBridge Scheduler verwenden, um eine Vielzahl von API-Operationen für viele AWS-Dienste aufzurufen. Universelle Ziele bieten die Flexibilität, fast jede API aufzurufen. Ein Beispiel könnte die Verwendung universeller Ziele sein, um "AdminAccessPolicy" hinzuzufügen, indem eine Rolle verwendet wird, die die "putRolePolicy"-Berechtigung hat:
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)