SageMaker 공격 방식

hwup·2025년 12월 13일

AWS

목록 보기
3/7

SageMaker Vulnerability Let Attackers Escalate Privileges

간단한 내용 요약/정리

  • AWS SageMaker 사용할 때 IAM 실행 role을 사용함. 이 role은 데이터, 모델, 그리고 다른 AWS 서비스에 접근하는 강력한 권한을 갖는 경우가 많음.
  • SageMaker notebook 인스턴스를 중지, 시작, 업데이트할 수 있는 권한을 갖게된다면 notebook의 실행 권한/role로 그들의 코드를 실행시킬 수 있을 것.
  • 주요 권한들:
    • sagemaker:StopNotebookInstance
    • sagemaker:StartNotebookInstance
    • sagemaker:UpdateNotebookInstance
    • plus the ability to create or manage notebook lifecycle configurations
  • SageMaker 구성 라이프사이클은 shell script의 set임.. (이거 SageMaker 특징에 대해 더 자세히 알아봐야할 듯) 그래서 이 공격에서 이게 exec path가 된다.

공격 방법:

  1. 공격자가 malicious lifecycle configuration을 생성한다..
  • aws sts get-caller-identity 이 권한을 통해 사용하고 있는 role을 파악하고 그 데이터를 curl을 통해 외부 서버에 전송
    참고)
  1. notebook 인스턴스를 중지하고 새로운 lifecycle config를 붙여서 재시작
  2. 이때 공격자는 notebook 인스턴스의 role으로 sts:AssumeRole이나 PassRole로 권한을 부여받는 단계/행위 없이 실행이 가능

방어시 이런 패턴을 눈여겨 봐야 한다:

  • StopNotebookInstanceUpdateNotebookInstanceStartNotebookInstance
  • 특히 노트북 인스턴스를 관리하는 아이덴티티가 아닐 경우에는 더더욱.
profile
Level up!

0개의 댓글