AWS - STS Privesc
STS
sts:AssumeRole
sts:AssumeRole
Her rol, bir rol güven politikası ile oluşturulur, bu politika oluşturulan rolü kimin üstlenebileceğini belirtir. Eğer aynı hesaptan bir rol, bir hesabın onu üstlenebileceğini belirtiyorsa, bu demektir ki hesap rolüne erişebilecek (ve potansiyel olarak yetki yükseltme yapabilecek).
Örneğin, aşağıdaki rol güven politikası herhangi birinin üstlenebileceğini belirtir, bu nedenle herhangi bir kullanıcı yetkileriyle yetki yükseltebilecektir.
Aşağıdaki komutu kullanarak bir rol taklit edebilirsiniz:
Potansiyel Etki: Rol için ayrıcalık yükseltme.
Bu durumda, izin sts:AssumeRole
nin saldırganın ait olduğu bir politikada değil, kötüye kullanmak için rolde belirtilmesi gerektiğini unutmayın.
Bir istisna dışında, farklı bir hesaptan bir rolü varsaymak için saldırgan hesabının da rol üzerinde sts:AssumeRole
iznine sahip olması gerekmektedir.
sts:AssumeRoleWithSAML
sts:AssumeRoleWithSAML
Bu role sahip bir güven politikası, SAML ile kimlik doğrulama yapan kullanıcılara rolü taklit etme erişimi sağlar.
Bu izne sahip bir güven politikasının örneği:
Genel olarak rolü taklit etmek için kimlik bilgileri oluşturmak için şunu kullanabilirsiniz:
Ancak hizmet sağlayıcılar, bunu daha kolay hale getirmek için kendi araçlarına sahip olabilirler, örneğin onelogin-aws-assume-role:
Potansiyel Etki: Rol için ayrıcalık yükseltme.
sts:AssumeRoleWithWebIdentity
sts:AssumeRoleWithWebIdentity
Bu izin, bir web kimlik sağlayıcı ile kimlik doğrulaması yapılmış olan mobil, web uygulaması, EKS... kullanıcıları için geçici güvenlik kimlik bilgileri almak için izin verir. Daha fazlasını buradan öğrenin.
Örneğin, bir EKS hizmet hesabı, bir IAM rolünü taklit edebilmeli ise, /var/run/secrets/eks.amazonaws.com/serviceaccount/token
yolunda bir belirteçi olacaktır ve aşağıdaki gibi bir işlem yaparak rolü üstlenebilir ve kimlik bilgilerini alabilir:
Federasyon Kötüye Kullanımı
AWS - Federation AbuseLast updated