AWS - Codepipeline Privesc
Tip
Impara & pratica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Impara & pratica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Impara & pratica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Sostieni HackTricks
- Controlla i subscription plans!
- Unisciti al 💬 Discord group o al telegram group o seguici su Twitter 🐦 @hacktricks_live.
- Condividi hacking tricks inviando PRs ai HackTricks e HackTricks Cloud github repos.
codepipeline
Per ulteriori informazioni su codepipeline consulta:
AWS - DataPipeline, CodePipeline & CodeCommit Enum
iam:PassRole, codepipeline:CreatePipeline, codebuild:CreateProject, codepipeline:StartPipelineExecution
Quando crei una code pipeline puoi indicare un codepipeline IAM Role da utilizzare, quindi potresti comprometterlo.
Oltre alle autorizzazioni precedenti avresti bisogno di accesso al luogo dove il codice è memorizzato (S3, ECR, github, bitbucket…)
Ho testato questo eseguendo il processo nella pagina web; le autorizzazioni indicate precedentemente sono quelle non di tipo List/Get necessarie per creare una codepipeline, ma per crearla via web avrai anche bisogno di: codebuild:ListCuratedEnvironmentImages, codebuild:ListProjects, codebuild:ListRepositories, codecommit:ListRepositories, events:PutTargets, codepipeline:ListPipelines, events:PutRule, codepipeline:ListActionTypes, cloudtrail:<several>
Durante la creazione del build project puoi indicare un comando da eseguire (rev shell?) e far eseguire la fase di build come privileged user; questa è la configurazione che l’attaccante cerca per compromettere:
.png)
.png)
?codebuild:UpdateProject, codepipeline:UpdatePipeline, codepipeline:StartPipelineExecution
Potrebbe essere possibile modificare il ruolo usato e il comando eseguito su una codepipeline con le autorizzazioni precedenti.
codepipeline:pollforjobs
Quando questa API viene chiamata, CodePipeline restituisce credenziali temporanee per il bucket S3 usato per memorizzare gli artifact per la pipeline, se l’azione richiede accesso a quel bucket S3 per artifact di input o output. Questa API restituisce anche eventuali valori segreti definiti per l’azione.
Tip
Impara & pratica AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Impara & pratica GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Impara & pratica Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Sostieni HackTricks
- Controlla i subscription plans!
- Unisciti al 💬 Discord group o al telegram group o seguici su Twitter 🐦 @hacktricks_live.
- Condividi hacking tricks inviando PRs ai HackTricks e HackTricks Cloud github repos.
HackTricks Cloud

