Huny's Dev Blog
huny.dev

Amazon Braket 보안 업데이트: SDK·Schemas 버전과 S3 쓰기 권한 점검하기

11월 9일 AWS 보안 공지의 로컬 작업 파일 덮어쓰기와 결과 파싱 코드 실행 문제를 구분하고, SDK 1.127.7·Schemas 1.32.2 적용 및 실제 Python 실행 환경 확인 절차를 정리한다.

Hun Jang
Hun Jang Nov 10, 2026

S3 결과 데이터와 개발 환경 사이의 검증 경계를 표현한 생성형 개념 이미지. 실제 AWS 구성도나 제품 화면은 아니다.

Amazon Braket으로 양자 작업을 실행한다면, 클라우드 설정뿐 아니라 결과를 내려받는 노트북·개발 PC·배치 환경의 Python 패키지도 확인해야 한다. AWS는 2026년 11월 9일 보안 공지 2026-175-AWS를 공개했다. 조작된 S3 입력 데이터나 작업 결과를 처리하는 과정에서 파일 덮어쓰기 또는 코드 실행이 발생할 수 있는 두 문제다. AWS 공식 보안 공지

우선 확인할 수정 기준은 amazon-braket-sdk 1.127.7과 amazon-braket-schemas 1.32.2다. 두 패키지는 역할과 영향 범위가 다르므로 SDK 버전 하나만 보고 점검을 끝내지 않는다.

먼저 두 취약점의 조건을 구분한다

CVE-2026-124034는 로컬 하이브리드 작업의 입력 파일 다운로드 문제다. 영향 범위는 amazon-braket-sdk 1.10.0 이상, 1.127.7 미만이다. 작업의 S3 입력 위치에 쓰기 권한이 있는 주체가 객체 키를 조작하면, 의도한 다운로드 폴더 밖의 파일을 작업 실행 사용자 권한으로 덮어쓸 수 있다.

공식 권고는 이 문제가 로컬 하이브리드 작업에만 해당하며 Amazon Braket 서비스에서 실행되는 하이브리드 작업은 영향받지 않는다고 명시한다. 파일 쓰기 문제 자체를 파일 읽기나 직접 코드 실행 취약점으로 확대해서 설명하면 안 된다. SDK 보안 권고와 영향 범위

CVE-2026-124035는 결과 문서의 오류 완화(error mitigation) 스키마 검증 문제다. 영향 범위는 amazon-braket-schemas 1.17.0 이상, 1.32.2 미만이다. 취약한 검증 과정에서 결과 문서가 지정한 Python 코드를 가져와 호출할 수 있다.

공격에는 대상 작업의 S3 출력 위치에 대한 쓰기 권한과, 사용자가 조작된 결과를 SDK로 조회하는 과정이 필요하다. 조건이 충족되면 결과를 읽는 머신에서 조회 사용자 권한으로 임의 코드가 실행될 수 있다. AWS 서비스 전체가 무인증으로 뚫리는 문제라는 뜻은 아니다. Schemas 보안 권고

“예전 패치를 적용했다”로 끝내지 않는다

AWS는 Schemas 문제를 이전 CVE-2026-9291에 대한 후속 수정이라고 설명한다. 과거 권고에 대응한 기록이 있더라도 이번 수정 기준을 다시 대조해야 한다. 후속 수정 안내

Schemas 1.32.2 릴리스에는 오류 완화 항목을 import_module 대신 허용 목록으로 해석하도록 바꿨다는 설명이 있다. 외부 결과에 적힌 이름을 실행 가능한 코드의 선택권으로 이어 주지 않는 방향이다. Schemas 1.32.2 릴리스

이번 글의 새 소식 기준은 11월 9일 보안 공지다. SDK 1.127.7은 릴리스 페이지상 10월 28일 배포되었으므로, 두 수정 버전이 모두 공지 당일 처음 나왔다고 해석하지 않는다. SDK 1.127.7 릴리스

실제 결과를 읽는 Python에서 버전을 확인한다

다음은 운영 점검을 위한 제안이다. 먼저 Braket을 사용하는 실행 환경을 나눈다.

  • 개발 PC의 가상환경
  • Jupyter 또는 관리형 노트북의 커널
  • 작업 결과를 수집하는 배치·CI 컨테이너
  • 로컬 하이브리드 작업 실행 환경
  • 자체 수정한 SDK·Schemas 또는 이를 포함한 배포 이미지

같은 머신에서도 터미널의 Python과 노트북 커널이 다를 수 있다. 아래 코드를 실제로 결과를 조회하는 인터프리터나 노트북 커널에서 실행한다. 패키지를 직접 import하지 않고 설치 메타데이터를 읽는 확인 예시다.

“설치되지 않음”은 지금 확인한 환경에 대한 결과다. 다른 커널, 컨테이너 또는 예약 작업까지 안전하다는 판정으로 넓히지 않는다. 잠금 파일과 이미지의 패키지 목록도 같은 이름으로 확인한다.

업데이트 후에는 실행 환경까지 교체한다

AWS는 수정 버전 이상으로 업데이트하고, 포크나 파생 코드에도 수정을 반영할 것을 권고한다. 일반적인 가상환경에서의 업데이트 예시는 다음과 같다. 프로젝트가 잠금 파일을 사용한다면 기존 의존성 관리 도구와 검토 절차로 변경한다. 공식 수정 권고

이 명령은 의존성을 변경한다. 먼저 테스트 환경에서 호환성을 확인하고, 운영 환경에는 승인된 배포 절차로 적용한다. pip check 성공은 의존성 요구사항 확인일 뿐 취약점이나 업무 동작 전체를 검증했다는 뜻은 아니다.

설치가 끝나면 다음을 함께 확인한다.

  1. 실행 중인 노트북 커널과 장기 실행 프로세스를 재시작한다.
  1. 컨테이너를 쓴다면 수정된 이미지로 다시 빌드·배포하고 실행 중인 이미지도 확인한다.
  1. 앞의 메타데이터 코드를 다시 실행해 실제 사용 환경의 두 버전을 기록한다.
  1. 신뢰할 수 있는 테스트 데이터로 정상 결과 파싱과 로컬 작업의 입력 처리가 유지되는지 확인한다.
  1. 변경된 잠금 파일, 배포 이미지와 테스트 결과를 함께 남긴다.

점검을 위해 새 유료 양자 작업을 제출할 필요는 없다. 의심되는 과거 결과를 취약한 환경에서 다시 열어 재현하는 방식도 피한다.

패치 전에는 S3 쓰기 권한을 좁힌다

AWS의 임시 대응은 Braket 작업 출력과 로컬 작업 입력 위치, 작업의 IAM 역할을 신뢰할 수 있는 주체로 제한하는 것이다. 결과를 읽을 수 있는 사람뿐 아니라 그 결과를 바꿀 수 있는 주체를 살펴야 한다. 공식 임시 대응

실무에서는 입력·출력 버킷과 접두사별로 정상 작성 주체를 먼저 정리하고, 불필요한 쓰기 권한이나 교차 계정 접근이 없는지 검토한다. 정상 작업에 필요한 권한까지 무작정 제거하기보다는 담당자와 접근 경로를 확인해 최소 범위로 조정한다.

권한 제한은 패치 전 노출을 줄이는 조치다. 결과 데이터가 신뢰 경계를 넘을 때 실행 코드로 이어지지 않도록 하는 라이브러리 수정도 별도로 완료해야 한다.

이번 공지만으로 실제 침해가 발생했다고 판단할 수는 없다. 완료 기준은 두 패키지의 수정 적용, 실제 실행 환경 재확인, S3 작성 권한 검토를 각각 기록하는 것이다. Python 라이브러리의 보안 경계는 서버에서 끝나지 않고 데이터를 읽는 개발자의 환경까지 이어진다.

확인 기준은 2026년 11월 10일 한국시간의 AWS 공식 공지와 프로젝트 보안 권고·릴리스다. 실제 사용자 환경의 패키지 조회, AWS 권한 변경, 업데이트, 취약점 재현이나 클라우드 작업 실행은 수행하지 않았다. 코드와 운영 순서는 점검 예시다.

추천 글