AWS - Codepipeline Privesc

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

codepipeline

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

pageAWS - DataPipeline, CodePipeline & CodeCommit Enum

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

Під час створення конвеєра коду ви можете вказати роль IAM конвеєра коду, тому ви можете скомпрометувати їх.

Крім попередніх дозволів вам знадобиться доступ до місця, де зберігається код (S3, ECR, github, bitbucket...)

Я тестував це, виконуючи процес на веб-сторінці, дозволи, зазначені раніше, не є необхідними для створення конвеєра коду, але для створення його на веб-сторінці вам також знадобиться: 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:pollforjobs

AWS зазначає:

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

Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)!

Інші способи підтримки HackTricks:

Last updated