# AWS - EventBridge Scheduler Enum

{{#include ../../../banners/hacktricks-training.md}}

## EventBridge Scheduler

**Amazon EventBridge Scheduler** is 'n volledig bestuurde, **serverless skeduleerder wat ontwerp is om take te skep, te loop en te bestuur** op skaal. Dit stel jou in staat om miljoene take oor meer as 270 AWS-dienste en 6,000+ API-operasies te skeduleer, alles vanuit 'n sentrale diens. Met ingeboude betroubaarheid en geen infrastruktuur om te bestuur nie, vereenvoudig EventBridge Scheduler skedulering, verminder onderhoudskoste, en skaal outomaties om aan die vraag te voldoen. Jy kan cron of tariefuitdrukkings konfigureer vir herhalende skedules, eenmalige aanroepings instel, en buigsame afleweringsvensters met herhalingsopsies definieer, wat verseker dat take betroubaar afgelewer word gebaseer op die beskikbaarheid van afwaartse teikens.

Daar is 'n aanvanklike limiet van 1,000,000 skedules per streek per rekening. Selfs die amptelike kwotas bladsy stel voor, "Dit word aanbeveel om eenmalige skedules te verwyder sodra hulle voltooi is."

### Tipes Skedules

Tipes Skedules in EventBridge Scheduler:

1. **Eenmalige skedules** – Voer 'n taak uit op 'n spesifieke tyd, bv. 21 Desember om 7 VM UTC.
2. **Tariefgebaseerde skedules** – Stel herhalende take in op grond van 'n frekwensie, bv. elke 2 uur.
3. **Cron-gebaseerde skedules** – Stel herhalende take in met 'n cron-uitdrukking, bv. elke Vrydag om 4 NM.

Twee Meganismes vir die Hantering van Mislukte Gebeure:

1. **Herhalingsbeleid** – Definieer die aantal herhalingspogings vir 'n mislukte gebeurtenis en hoe lank om dit onverwerkt te hou voordat dit as 'n mislukking beskou word.
2. **Doodbriefmandjie (DLQ)** – 'n Standaard Amazon SQS-mandjie waar mislukte gebeurtenisse afgelewer word nadat herhalings uitgeput is. DLQ's help om probleme met jou skedule of sy afwaartse teiken op te los.

### Teikens

Daar is 2 tipes teikens vir 'n skeduleerder [**templatet (docs)**](https://docs.aws.amazon.com/scheduler/latest/UserGuide/managing-targets-templated.html), wat algemeen gebruik word en AWS het dit makliker gemaak om te konfigureer, en [**universel (docs)**](https://docs.aws.amazon.com/scheduler/latest/UserGuide/managing-targets-universal.html), wat gebruik kan word om enige AWS API aan te roep.

**Templated teikens** ondersteun die volgende dienste:

- CodeBuild – StartBuild
- CodePipeline – StartPipelineExecution
- Amazon ECS – RunTask
- Parameters: EcsParameters
- EventBridge – PutEvents
- Parameters: EventBridgeParameters
- Amazon Inspector – StartAssessmentRun
- Kinesis – PutRecord
- Parameters: KinesisParameters
- Firehose – PutRecord
- Lambda – Invoke
- SageMaker – StartPipelineExecution
- Parameters: SageMakerPipelineParameters
- Amazon SNS – Publish
- Amazon SQS – SendMessage
- Parameters: SqsParameters
- Step Functions – StartExecution

### Enumeration
```bash
# List all EventBridge Scheduler schedules
aws scheduler list-schedules

# List all EventBridge Scheduler schedule groups
aws scheduler list-schedule-groups

# Describe a specific schedule to retrieve more details
aws scheduler get-schedule --name <schedule_name>

# Describe a specific schedule group
aws scheduler get-schedule-group --name <group_name>

# List tags for a specific schedule (helpful in identifying any custom tags or permissions)
aws scheduler list-tags-for-resource --resource-arn <schedule_group_arn>
```
### Privesc

In die volgende bladsy kan jy kyk hoe om **eventbridge scheduler toestemming te misbruik om voorregte te verhoog**:

{{#ref}}
../aws-privilege-escalation/eventbridgescheduler-privesc/README.md
{{#endref}}

## References

- [https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html](https://docs.aws.amazon.com/scheduler/latest/UserGuide/what-is-scheduler.html)

{{#include ../../../banners/hacktricks-training.md}}
