이 경우에는 권한 sts:AssumeRole이 악용할 역할에 표시되어 있어야 하며, 공격자에게 속한 정책이 아니어야 함을 유의하십시오.
한 가지 예외를 제외하고, 다른 계정에서 역할을 가정하기 위해서는 공격자 계정도 역할에 대한 **sts:AssumeRole**을 가져야 합니다.
sts:GetFederationToken
이 권한을 사용하면 어떤 사용자든지 흉내를 내어 자격 증명을 생성할 수 있습니다:
awsstsget-federation-token--name<username>
다음은 다른 사용자를 표현할 수 있는 권한을 부여하지 않고 안전하게 이 권한을 부여하는 방법입니다:
이 권한은 웹 신원 제공자를 통해 인증된 사용자들을 위해 일시적 보안 자격 증명 세트를 얻을 수 있는 권한을 부여합니다. 여기에서 자세히 알아보기.
예를 들어, EKS 서비스 계정이 IAM 역할을 표시할 수 있어야 하는 경우, **/var/run/secrets/eks.amazonaws.com/serviceaccount/token**에 토큰이 있고 다음과 같이 역할을 가정하고 자격 증명을 얻을 수 있습니다:
aws sts assume-role-with-web-identity --role-arn arn:aws:iam::123456789098:role/<role_name> --role-session-name something --web-identity-token file:///var/run/secrets/eks.amazonaws.com/serviceaccount/token
# The role name can be found in the metadata of the configuration of the pod
연맹 남용
AWS - Federation AbusehtARTE (HackTricks AWS Red Team Expert)를 통해 제로부터 영웅이 될 때까지 AWS 해킹을 배우세요!
HackTricks를 지원하는 다른 방법:
회사를 HackTricks에서 광고하거나 PDF로 다운로드하고 싶다면구독 요금제를 확인하세요!