AWS - Codepipeline Privesc
Reading time: 2 minutes
tip
Вивчайте та практикуйте AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
codepipeline
For more info about codepipeline check:
AWS - DataPipeline, CodePipeline & CodeCommit Enum
iam:PassRole, codepipeline:CreatePipeline, codebuild:CreateProject, codepipeline:StartPipelineExecution
При створенні code pipeline ви можете вказати codepipeline IAM Role to run, отже їх можна скомпрометувати.
Окрім попередніх дозволів вам потрібен також доступ до місця, де зберігається код (S3, ECR, github, bitbucket...)
Я перевіряв це, виконуючи процес у веб-інтерфейсі — дозволи, вказані раніше, це не ті List/Get дозволи, які потрібні для створення codepipeline, але для створення через веб вам також знадобляться: codebuild:ListCuratedEnvironmentImages, codebuild:ListProjects, codebuild:ListRepositories, codecommit:ListRepositories, events:PutTargets, codepipeline:ListPipelines, events:PutRule, codepipeline:ListActionTypes, cloudtrail:<several>
Під час створення проєкту build можна вказати команду для виконання (rev shell?) і виконувати фазу збірки як привілейований користувач — це та конфігурація, яку атакуючий має скомпрометувати:
.png)
.png)
?codebuild:UpdateProject, codepipeline:UpdatePipeline, codepipeline:StartPipelineExecution
Може бути можливо змінити роль, що використовується, та команду, яка виконується в codepipeline з попередніми дозволами.
codepipeline:pollforjobs
Коли цей API викликається, CodePipeline повертає тимчасові облікові дані для S3 bucket, що використовується для зберігання артефактів для pipeline, якщо дія вимагає доступу до цього S3 bucket для вхідних або вихідних артефактів. Цей API також повертає будь-які секретні значення, визначені для дії.
tip
Вивчайте та практикуйте AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking:
HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
HackTricks Cloud