AWS - Codestar Privesc
Codestar
codestar에 대한 자세한 정보는 다음에서 확인할 수 있습니다:
pagecodestar:CreateProject, codestar:AssociateTeamMemberiam:PassRole
, codestar:CreateProject
iam:PassRole
, codestar:CreateProject
이 권한을 사용하면 codestar IAM 역할을 악용하여 클라우드포메이션 템플릿을 통해 임의의 작업을 수행할 수 있습니다. 다음 페이지를 확인하세요:
pageiam:PassRole, codestar:CreateProjectcodestar:CreateProject
, codestar:AssociateTeamMember
codestar:CreateProject
, codestar:AssociateTeamMember
이 기술은 codestar:CreateProject
를 사용하여 codestar 프로젝트를 생성하고, codestar:AssociateTeamMember
를 사용하여 IAM 사용자를 새로운 CodeStar 프로젝트의 소유자로 만들어 새로운 정책과 몇 가지 추가 권한을 부여합니다.
만약 이미 프로젝트의 구성원이라면 codestar:AssociateTeamMember
대신 codestar:UpdateTeamMember
권한을 사용하여 역할을 소유자로 업데이트할 수 있습니다.
잠재적인 영향: codestar 정책에 대한 권한 상승. 해당 정책의 예시는 다음에서 찾을 수 있습니다:
pagecodestar:CreateProject, codestar:AssociateTeamMembercodestar:CreateProjectFromTemplate
codestar:CreateProjectFromTemplate
새 프로젝트 생성:
codestar:CreateProjectFromTemplate
액션을 사용하여 새 프로젝트 생성을 시작합니다.성공적으로 생성되면 **
cloudformation:UpdateStack
**에 대한 액세스가 자동으로 부여됩니다.이 액세스는 일반적인 프로젝트 이름과 관련된
CodeStarWorker-<generic project name>-CloudFormation
IAM 역할에 대해 특정 스택을 대상으로 합니다.
대상 스택 업데이트:
부여된 CloudFormation 권한으로 지정된 스택을 업데이트합니다.
스택의 이름은 일반적으로 다음 두 가지 패턴을 따릅니다:
awscodestar-<generic project name>-infrastructure
awscodestar-<generic project name>-lambda
정확한 이름은 선택한 템플릿에 따라 다릅니다(예시 악용 스크립트 참조).
액세스 및 권한:
업데이트 후, 스택과 연결된 CloudFormation IAM 역할에 할당된 기능을 얻게 됩니다.
참고: 이로 인해 기본적으로 전체 관리자 권한이 부여되지는 않습니다. 권한 상승을 위해 환경 내에서 추가로 잘못 구성된 리소스가 필요할 수 있습니다.
자세한 내용은 원본 연구를 참조하세요: https://rhinosecuritylabs.com/aws/escalating-aws-iam-privileges-undocumented-codestar-api/. 악용 스크립트는 다음에서 찾을 수 있습니다: https://github.com/RhinoSecurityLabs/Cloud-Security-Research/blob/master/AWS/codestar_createprojectfromtemplate_privesc/CodeStarPrivEsc.py
잠재적인 영향: cloudformation IAM 역할에 대한 권한 상승.
最終更新