Bedrock AgentCore에 역할 전달
역할을 사용하여 Bedrock AgentCore 인터프리터를 생성하고 해당 역할로 Python을 실행할 수 있습니다..
조합으로만 권한 상승을 허용합니다. 다음이 모두 함께 필요합니다:
iam:PassRolebedrock-agentcore:CreateCodeInterpreterbedrock-agentcore:StartCodeInterpreterSessionbedrock-agentcore:InvokeCodeInterpreteriam:PassRole 권한은 역할을 지정해 Bedrock AgentCore 인터프리터를 생성하고 그 역할로 Python을 실행할 수 있지만, 이는 bedrock-agentcore:CreateCodeInterpreter, bedrock-agentcore:StartCodeInterpreterSession, bedrock-agentcore:InvokeCodeInterpreter 권한을 함께 보유한 경우에만 해당합니다. 함께 보유하면 관리자 접근에 도달합니다.
위험한 이유
주체가 대상 역할에 대한 iam:PassRole과 bedrock-agentcore:CreateCodeInterpreter, StartCodeInterpreterSession, InvokeCodeInterpreter를 보유하고 있어, 대상 역할이 연결된 Bedrock AgentCore 코드 인터프리터를 생성하고, 세션을 열어 공격자가 제공한 Python을 호출할 수 있으며, 그 Python은 AgentCore 샌드박스에서 대상 역할의 권한으로 실행되고 MicroVM 메타데이터 서비스에서 대상 역할의 실시간 자격 증명을 읽습니다. 대상 역할이 bedrock-agentcore.amazonaws.com를 신뢰하므로 전달이 수락됩니다. 대상 역할에 권한이 있는 경우, 이는 2025년에 등장한 새로운 AI 런타임 싱크를 통한 완전한 권한 상승이며, 그래서 needs-verification으로 표시되어 있습니다.
MITRE ATT&CK 기준으로 이는 권한 상승 전술의 T1648, Serverless Execution에 해당합니다. AWS는 이를 CloudTrail에 CreateCodeInterpreter, StartCodeInterpreterSession, InvokeCodeInterpreter로 기록합니다. 이 호출은 CloudTrail에 나타나지만 일반적인 관리 작업에 섞여 들어가므로, 눈에 띄게 하려면 별도의 규칙이 필요합니다.
탐지
CreateCodeInterpreterStartCodeInterpreterSessionInvokeCodeInterpreter전제 조건
대상 역할의 신뢰 정책이 bedrock-agentcore.amazonaws.com 주체를 허용해야 합니다. 세 가지 bedrock-agentcore 작업(create, start-session, invoke)과 iam:PassRole이 모두 필요합니다. 코드 인터프리터가 공격자의 Python을 에이전트 역할로 실행하므로 별도의 자격 증명 탈취 단계가 필요하지 않습니다.
MITRE ATT&CK
T1648 · Serverless Execution전술
권한 상승
이를 제거할 수 있는 통제: 이 역할에 대한 iam:PassRole 권한을 제거하거나 iam:PassedToService로 범위를 지정하십시오.
이를 적용할지 여부는 해당 권한이 귀하의 환경에서 어떻게 사용되는지에 따라 달라지므로, 자동으로 적용되는 수정이 아니라 비즈니스 차원의 판단입니다. 같은 권한이 한 계정에서는 핵심적인 역할을 하고 다른 계정에서는 순전히 위험일 수 있습니다.
Pathbreak는 이 경로가 귀하의 계정에서 실제로 성립하는지 확인하고, 얼마나 많은 접근을 열어주는지에 따라 다른 경로와 비교하여 순위를 매기며, 귀하의 위협 모델과 비즈니스 맥락을 활용하여 어떤 경로를 차단할 가치가 있는지 보여줍니다.
질문
iam:PassRole의 허용 범위는 무엇입니까?
역할을 사용하여 Bedrock AgentCore 인터프리터를 생성하고 해당 역할로 Python을 실행할 수 있습니다..
iam:PassRole의 위험이 성립하려면 무엇이 더 필요합니까?
bedrock-agentcore:CreateCodeInterpreter, bedrock-agentcore:StartCodeInterpreterSession, bedrock-agentcore:InvokeCodeInterpreter와 함께 보유할 때에만 권한 상승이 됩니다. 그 자체만으로는 충분하지 않으며, 바로 그 점이 이 조합을 놓치기 쉽게 만듭니다.
Bedrock AgentCore에 역할 전달 탐지는 어떻게 이루어집니까?
CloudTrail에서 CreateCodeInterpreter, StartCodeInterpreterSession, InvokeCodeInterpreter 이벤트를 주시하십시오. 이 호출은 CloudTrail에 나타나지만 일반적인 관리 작업에 섞여 들어가므로, 눈에 띄게 하려면 별도의 규칙이 필요합니다.
이 경로를 어떻게 차단합니까?
이를 제거할 수 있는 통제는 다음과 같습니다: 이 역할에 대한 iam:PassRole 권한을 제거하거나 iam:PassedToService로 범위를 좁힙니다. 이를 적용할지 여부는 해당 권한이 계정에서 어떻게 사용되는지에 따라 달라지므로, 자동으로 적용되는 수정이 아니라 비즈니스 차원의 판단입니다.
이것은 어떤 MITRE ATT&CK 기법입니까?
권한 상승 전술의 T1648, Serverless Execution.
관련 경로
참고 자료
직접 자신의 계정에서 찾기
저희는 하나의 AWS 계정에 대해 읽기 전용 스캔을 실행하여, 이 경로 중 어떤 것이 존재하는지를 영향 범위 순으로, 각 경로를 끊는 변경과 함께 보여드립니다. 첫 검증된 경로는 한 시간 이내에 제공됩니다.