EMR 클러스터에 역할 전달
역할을 지정해 EMR 클러스터를 시작하고 그 역할로 스텝을 실행할 수 있습니다.
조합으로만 권한 상승을 허용합니다. 다음이 모두 함께 필요합니다:
iam:PassRoleelasticmapreduce:RunJobFlowiam:PassRole 권한은 역할을 지정해 EMR 클러스터를 시작하고 그 역할로 단계를 실행할 수 있지만, 이는 elasticmapreduce:RunJobFlow 권한을 함께 보유한 경우에만 해당합니다. 함께 보유하면 관리자 접근에 도달합니다.
위험한 이유
주체가 대상 역할에 대한 iam:PassRole과 elasticmapreduce:RunJobFlow를 보유하고 있어, 대상 역할을 EC2 인스턴스 프로파일(JobFlowRole)로 하는 EMR 클러스터를 시작하고 클러스터의 EC2 마스터에서 공격자가 통제하는 단계를 실행할 수 있으며, 그 단계는 대상 역할의 권한으로 실행되고 IMDS에서 대상 역할의 자격 증명을 읽습니다. 대상 역할이 ec2.amazonaws.com를 신뢰하므로 전달이 수락됩니다. 대상 역할에 권한이 있는 경우, 이는 완전한 권한 상승이며, 역할을 가진 EC2 인스턴스를 시작하는 것의 EMR 변형입니다.
MITRE ATT&CK 기준으로 이는 권한 상승 전술의 T1578.002, Modify Cloud Compute Infrastructure: Create Cloud Instance에 해당합니다. AWS는 이를 CloudTrail에 RunJobFlow로 기록합니다. 이 호출은 CloudTrail에서 뚜렷하게 드러나며 일반적인 활동과 구분됩니다.
탐지
RunJobFlow전제 조건
대상 역할이 EC2 인스턴스 프로파일로 사용 가능하고 ec2.amazonaws.com을 신뢰해야 합니다. RunJobFlow는 EMR 서비스 역할(elasticmapreduce.amazonaws.com을 신뢰)도 전달합니다. 공격자가 탈취하는 실행 역할은 EC2 인스턴스 프로파일입니다.
전술
권한 상승
이를 제거할 수 있는 통제: 이 역할에 대한 iam:PassRole 권한을 제거하거나 iam:PassedToService로 범위를 지정하십시오.
이를 적용할지 여부는 해당 권한이 귀하의 환경에서 어떻게 사용되는지에 따라 달라지므로, 자동으로 적용되는 수정이 아니라 비즈니스 차원의 판단입니다. 같은 권한이 한 계정에서는 핵심적인 역할을 하고 다른 계정에서는 순전히 위험일 수 있습니다.
Pathbreak는 이 경로가 귀하의 계정에서 실제로 성립하는지 확인하고, 얼마나 많은 접근을 열어주는지에 따라 다른 경로와 비교하여 순위를 매기며, 귀하의 위협 모델과 비즈니스 맥락을 활용하여 어떤 경로를 차단할 가치가 있는지 보여줍니다.
질문
iam:PassRole의 허용 범위는 무엇입니까?
역할을 지정해 EMR 클러스터를 시작하고 그 역할로 스텝을 실행할 수 있습니다.
iam:PassRole의 위험이 성립하려면 무엇이 더 필요합니까?
elasticmapreduce:RunJobFlow와 함께 보유할 때에만 권한 상승이 됩니다. 그 자체만으로는 충분하지 않으며, 바로 그 점이 이 조합을 놓치기 쉽게 만듭니다.
EMR 클러스터에 역할 전달 탐지는 어떻게 이루어집니까?
CloudTrail에서 RunJobFlow 이벤트를 주시하십시오. 이 호출은 CloudTrail에서 뚜렷하게 드러나며 일반적인 활동과 구분됩니다.
이 경로를 어떻게 차단합니까?
이를 제거할 수 있는 통제는 다음과 같습니다: 이 역할에 대한 iam:PassRole 권한을 제거하거나 iam:PassedToService로 범위를 좁힙니다. 이를 적용할지 여부는 해당 권한이 계정에서 어떻게 사용되는지에 따라 달라지므로, 자동으로 적용되는 수정이 아니라 비즈니스 차원의 판단입니다.
이것은 어떤 MITRE ATT&CK 기법입니까?
권한 상승 전술의 T1578.002, Modify Cloud Compute Infrastructure: Create Cloud Instance.
관련 경로
참고 자료
직접 자신의 계정에서 찾기
저희는 하나의 AWS 계정에 대해 읽기 전용 스캔을 실행하여, 이 경로 중 어떤 것이 존재하는지를 영향 범위 순으로, 각 경로를 끊는 변경과 함께 보여드립니다. 첫 검증된 경로는 한 시간 이내에 제공됩니다.