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

codepipeline

Для отримання додаткової інформації про codepipeline перегляньте:

AWS - DataPipeline, CodePipeline & CodeCommit Enum

iam:PassRole, codepipeline:CreatePipeline, codebuild:CreateProject, codepipeline:StartPipelineExecution

При створенні code pipeline ви можете вказати IAM роль codepipeline для виконання, тому ви могли б їх скомпрометувати.

Окрім попередніх дозволів, вам знадобиться доступ до місця, де зберігається код (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>

Під час створення проекту збірки ви можете вказати команду для виконання (rev shell?) і виконати фазу збірки як привілейований користувач, це конфігурація, яку атакуючий потребує для компрометації:

?codebuild:UpdateProject, codepipeline:UpdatePipeline, codepipeline:StartPipelineExecution

Можливо, можна змінити роль, що використовується, і команду, що виконується в codepipeline, з попередніми дозволами.

codepipeline:pollforjobs

AWS згадує:

Коли цей API викликається, CodePipeline повертає тимчасові облікові дані для S3 бакету, що використовується для зберігання артефактів для конвеєра, якщо дія вимагає доступу до цього S3 бакету для вхідних або вихідних артефактів. Цей 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