AWS - Federation Abuse
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
SAML에 대한 정보는 다음을 확인하세요:
SAML을 통한 Identity Federation을 구성하려면 이름과 모든 SAML 구성(엔드포인트, 공개 키가 포함된 인증서)이 포함된 메타데이터 XML을 제공하면 됩니다.
Identity provider로 github action을 추가하려면:
_Provider type_에서 OpenID Connect를 선택합니다.
_Provider URL_에 https://token.actions.githubusercontent.com
를 입력합니다.
_Get thumbprint_를 클릭하여 제공자의 thumbprint를 가져옵니다.
_Audience_에 sts.amazonaws.com
을 입력합니다.
github action이 필요로 하는 권한과 제공자를 신뢰하는 신뢰 정책을 가진 새 역할을 생성합니다:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::0123456789:oidc-provider/token.actions.githubusercontent.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "token.actions.githubusercontent.com:sub": [ "repo:ORG_OR_USER_NAME/REPOSITORY:pull_request", "repo:ORG_OR_USER_NAME/REPOSITORY:ref:refs/heads/main" ], "token.actions.githubusercontent.com:aud": "sts.amazonaws.com" } } } ] }
EKS 클러스터에서 OIDC URL을 새 Open ID Identity provider로 설정하기만 하면 OIDC providers를 생성할 수 있습니다. 이는 일반적인 기본 정책입니다:
이 정책은 id 20C159CDF6F2349B68846BEC03BE031B
를 가진 EKS 클러스터만 역할을 맡을 수 있음을 올바르게 나타내고 있습니다. 그러나 어떤 서비스 계정이 이를 맡을 수 있는지 나타내지 않으므로, 웹 아이덴티티 토큰을 가진 모든 서비스 계정이 역할을 맡을 수 있게 됩니다.
어떤 서비스 계정이 역할을 맡을 수 있어야 하는지 지정하기 위해서는 서비스 계정 이름이 지정된 조건을 명시해야 합니다, 예를 들어:
AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE) GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)