메인 콘텐츠로 건너뛰기

S3 Encryption Client의 키 커밋 문제

공지 ID: AWS-2025-032
범위:
AWS
콘텐츠 유형:
중요(주의 필요)
게시일: 2025년 12월 17일 오후 12시 15분(PST)


다음과 같은 CVE가 확인됨:

  • CVE-2025-14763 - Java 버전 S3 Encryption Client의 키 커밋 문제
  • CVE-2025-14764 - Go 버전 S3 Encryption Client의 키 커밋 문제
  • CVE-2025-14759 - .NET 버전 S3 Encryption Client의 키 커밋 문제
  • CVE-2025-14760 - C++ 버전 S3 Encryption Client(AWS SDK for C++의 일부)의 키 커밋 문제
  • CVE-2025-14761 - PHP 버전 S3 Encryption Client(AWS SDK for PHP의 일부)의 키 커밋 문제
  • CVE-2025-14762 - Ruby 버전 S3 Encryption Client(AWS SDK for Ruby의 일부)의 키 커밋 문제

설명:

Java, Go, .NET, C++, PHP, Ruby 버전 S3 Encryption Client는 암호화된 레코드를 S3에 쓰고 S3에서 읽는 작업을 속행하는 데 사용하는 오픈 소스 클라이언트 측 암호화 라이브러리입니다.

암호화된 데이터 키(EDK)가 S3의 메타데이터 레코드가 아니라 “명령 파일”에 저장되면 해당 EDK가 “Invisible Salamanders” 공격에 노출되어 EDK가 새 키로 대체될 위험이 있습니다.

영향을 받는 버전:

  • S3 Encryption Client Java: <= 3.5.0
  • S3 Encryption Client Go: <= 3.1.0
  • S3 Encryption Client .NET: <= 3.1
  • AWS SDK for C++: <= 1.11.711
  • AWS SDK for PHP: <= 3.367.0
  • AWS SDK for Ruby: <= 1.207.0

해결 방법:

이 문제를 해결하기 위해, S3EC에 “키 커밋(Key Commitment)” 개념을 도입하여 EDK가 사이퍼텍스트에 암호화 방식으로 바인딩되도록 했습니다. 전송 중인 메시지의 호환성을 유지하기 위해, 이 수정 사항을 두 가지 버전으로 릴리스합니다. 하나는 키 커밋이 포함된 메시지를 읽을 수는 있지만 쓸 수는 없는 코드 호환 마이너 버전이고, 다른 하나는 키 커밋이 포함된 메시지를 읽고 쓸 수 있는 새 메이저 버전입니다. 고객 여러분은 최신 메이저 버전으로 업그레이드하는 것이 좋습니다.

대안:

알려진 대안이 없습니다.

참고 사항:


보안 관련 질문이나 우려 사항이 있는 경우 aws-security@amazon.com으로 문의하세요.