AWS - Codepipeline Privesc

Support HackTricks

codepipeline

Kwa maelezo zaidi kuhusu codepipeline angalia:

AWS - DataPipeline, CodePipeline & CodeCommit Enum

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

Unapounda code pipeline unaweza kuashiria codepipeline IAM Role ya kuendesha, hivyo unaweza kuathiri hizo.

Mbali na ruhusa za awali unahitaji ufikiaji wa mahali ambapo msimbo umehifadhiwa (S3, ECR, github, bitbucket...)

Nilijaribu hii kwa kufanya mchakato kwenye ukurasa wa wavuti, ruhusa zilizoashiriwa hapo awali si zile za Orodha/Pata zinazohitajika kuunda codepipeline, lakini ili kuunda kwenye wavuti pia utahitaji: codebuild:ListCuratedEnvironmentImages, codebuild:ListProjects, codebuild:ListRepositories, codecommit:ListRepositories, events:PutTargets, codepipeline:ListPipelines, events:PutRule, codepipeline:ListActionTypes, cloudtrail:<several>

Wakati wa kuunda mradi wa kujenga unaweza kuashiria amri ya kuendesha (rev shell?) na kuendesha awamu ya kujenga kama mtumiaji mwenye mamlaka, hiyo ndiyo usanidi anahitaji mshambuliaji kuathiri:

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

Inaweza kuwa inawezekana kubadilisha jukumu lililotumika na amri inayotekelezwa kwenye codepipeline kwa ruhusa za awali.

codepipeline:pollforjobs

AWS inasema:

Wakati API hii inaitwa, CodePipeline inarudisha akiba za muda za S3 bucket inayotumika kuhifadhi vitu vya pipeline, ikiwa hatua inahitaji ufikiaji wa S3 bucket hiyo kwa vitu vya ingizo au pato. API hii pia inarudisha thamani zozote za siri zilizofafanuliwa kwa hatua.

Support HackTricks

Last updated