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 se puede utilizar para la escalada de privilegios programando llamadas a varios servicios de AWS. Al aprovechar su capacidad para invocar servicios de manera programada, los usuarios con permisos suficientes pueden escalar privilegios. Aquí hay algunas de las acciones clave que EventBridge Scheduler puede activar utilizando objetivos plantillados:
Lambda: lambda:InvokeFunction - Invocar funciones Lambda en un horario.
CodeBuild: codebuild:StartBuild - Iniciar proyectos de AWS CodeBuild.
CodePipeline: codepipeline:StartPipelineExecution - Activar ejecuciones de AWS CodePipeline.
ECS: ecs:RunTask - Ejecutar tareas de ECS.
EventBridge: events:PutEvents - Colocar eventos en EventBridge.
Inspector: inspector:StartAssessmentRun - Iniciar evaluaciones de Amazon Inspector.
Kinesis: kinesis:PutRecord - Colocar registros en flujos de Kinesis.
Firehose: firehose:PutRecord - Colocar registros en flujos de entrega de Firehose.
SageMaker: sagemaker:StartPipelineExecution - Iniciar ejecuciones de pipeline de SageMaker.
SNS: sns:Publish - Publicar mensajes en temas de SNS.
SQS: sqs:SendMessage - Enviar mensajes a colas de SQS.
Step Functions: states:StartExecution - Iniciar ejecuciones de AWS Step Functions.
Estas son solo algunas de las acciones plantilladas que EventBridge Scheduler puede realizar. Sin embargo, al usar objetivos universales, se pueden invocar muchas otras acciones en los servicios de AWS. Los objetivos universales permiten operaciones API más extensas más allá de la lista plantillada.
Más información sobre EventBridge Scheduler en:
AWS - EventBridge Scheduler Enumiam:PassRole
, (scheduler:CreateSchedule
| scheduler:UpdateSchedule
)Los usuarios con permisos sts:AssumeRole
, iam:PassRole
y scheduler:CreateSchedule o scheduler:UpdateSchedule
pueden escalar privilegios aprovechando el EventBridge Scheduler para invocar servicios utilizando un rol con privilegios más altos.
Con estos permisos, un atacante puede asumir un rol con privilegios elevados y pasar ese rol a EventBridge Scheduler al crear o actualizar un horario. El horario se puede configurar para realizar cualquiera de las acciones listadas anteriormente, como invocar funciones Lambda, iniciar tareas de ECS, activar ejecuciones de CodePipeline, o cualquier operación de los 270 servicios de AWS soportados por EventBridge Scheduler. Al programar estas acciones, un atacante podría abusar de privilegios más altos para realizar operaciones no autorizadas en los servicios de AWS. \
Por ejemplo, podrían configurar el horario para invocar una función Lambda que es una acción plantillada:
Además de las acciones de servicio en plantilla, puedes usar objetivos universales en EventBridge Scheduler para invocar una amplia gama de operaciones API para muchos servicios de AWS. Los objetivos universales ofrecen flexibilidad para invocar casi cualquier API. Un ejemplo puede ser usar objetivos universales añadiendo "AdminAccessPolicy", utilizando un rol que tiene la política "putRolePolicy":
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)