AWS - Codepipeline Privesc
Last updated
Last updated
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Za više informacija o codepipeline proverite:
AWS - DataPipeline, CodePipeline & CodeCommit Enumiam:PassRole
, codepipeline:CreatePipeline
, codebuild:CreateProject, codepipeline:StartPipelineExecution
Kada kreirate code pipeline, možete naznačiti codepipeline IAM ulogu koju treba pokrenuti, tako da ih možete kompromitovati.
Pored prethodnih dozvola, biće vam potrebna pristupna prava na mesto gde je kod smešten (S3, ECR, github, bitbucket...)
Testirao sam ovo radeći proces na veb stranici, prethodno navedene dozvole nisu List/Get one potrebne za kreiranje codepipeline, ali za kreiranje na vebu će vam takođe biti potrebne: codebuild:ListCuratedEnvironmentImages, codebuild:ListProjects, codebuild:ListRepositories, codecommit:ListRepositories, events:PutTargets, codepipeline:ListPipelines, events:PutRule, codepipeline:ListActionTypes, cloudtrail:<several>
Tokom kreiranja build projekta možete naznačiti komandu za pokretanje (rev shell?) i pokrenuti fazu izgradnje kao privilegovani korisnik, to je konfiguracija koju napadač treba da kompromituje:
codebuild:UpdateProject, codepipeline:UpdatePipeline, codepipeline:StartPipelineExecution
Možda će biti moguće izmeniti ulogu koja se koristi i komandu koja se izvršava na codepipeline sa prethodnim dozvolama.
codepipeline:pollforjobs
Kada se ovaj API pozove, CodePipeline vraća privremene akreditive za S3 bucket koji se koristi za skladištenje artefakata za pipeline, ako akcija zahteva pristup tom S3 bucketu za ulazne ili izlazne artefakte. Ovaj API takođe vraća sve tajne vrednosti definisane za akciju.
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)