AWS - EMR Privesc
EMR
더 많은 EMR에 대한 정보는 다음에서 확인하세요:
iam:PassRole
, elasticmapreduce:RunJobFlow
iam:PassRole
, elasticmapreduce:RunJobFlow
이 권한을 가진 공격자는 EC2 역할을 연결하여 새로운 EMR 클러스터를 실행하고 자격 증명을 훔치려고 시도할 수 있습니다.
이 작업을 수행하려면 계정에 가져온 ssh 개인 키를 알고 있거나 하나를 가져와야 하며, 마스터 노드에서 포트 22를 열 수 있어야 합니다(이 작업은 --ec2-attributes
내의 EmrManagedMasterSecurityGroup
및/또는 ServiceAccessSecurityGroup
속성을 사용하여 수행할 수 있습니다).
Note how an EMR role is specified in --service-role
and a ec2 role is specified in --ec2-attributes
inside InstanceProfile
. However, this technique only allows to steal the EC2 role credentials (as you will connect via ssh) but no the EMR IAM Role.
Potential Impact: EC2 서비스 역할로의 권한 상승.
elasticmapreduce:CreateEditor
, iam:ListRoles
, elasticmapreduce:ListClusters
, iam:PassRole
, elasticmapreduce:DescribeEditor
, elasticmapreduce:OpenEditorInConsole
elasticmapreduce:CreateEditor
, iam:ListRoles
, elasticmapreduce:ListClusters
, iam:PassRole
, elasticmapreduce:DescribeEditor
, elasticmapreduce:OpenEditorInConsole
이 권한을 가진 공격자는 AWS 콘솔에 접근하여 노트북을 생성하고 이를 통해 IAM 역할을 탈취할 수 있습니다.
내 테스트에서 노트북 인스턴스에 IAM 역할을 연결하더라도 AWS 관리 자격 증명을 탈취할 수 있었고 IAM 역할과 관련된 자격 증명은 탈취할 수 없었습니다.
Potential Impact: AWS 관리 역할 arn:aws:iam::420254708011:instance-profile/prod-EditorInstanceProfile로의 권한 상승.
elasticmapreduce:OpenEditorInConsole
elasticmapreduce:OpenEditorInConsole
이 권한만으로도 공격자는 Jupyter Notebook에 접근하여 관련된 IAM 역할을 탈취할 수 있습니다.
노트북의 URL은 https://<notebook-id>.emrnotebooks-prod.eu-west-1.amazonaws.com/<notebook-id>/lab/
입니다.
내 테스트에서 노트북 인스턴스에 IAM 역할을 연결하더라도 AWS 관리 자격 증명을 탈취할 수 있었고 IAM 역할과 관련된 자격 증명은 탈취할 수 없었습니다.
Potential Impact: AWS 관리 역할 arn:aws:iam::420254708011:instance-profile/prod-EditorInstanceProfile로의 권한 상승.
Last updated