🇰🇷 한글 설명
OpenStack Swift 2.38.0 이하 버전의 S3API 미들웨어에서 presigned URL 요청 시 특정 x-amz-* 헤더에 대한 SigV4 서명 검증이 누락되는 취약점이 발견되었습니다. 공격자는 이를 악용하여 서명되지 않은 X-Amz-Copy-Source 헤더를 주입함으로써, 권한이 있는 사용자의 컨텍스트를 이용해 임의의 객체를 서버 측에서 복사할 수 있습니다. 이 취약점은 s3_acl=false 기본 설정을 사용하는 모든 배포 환경에 영향을 미칩니다.
💡 쉬운 설명
미리 만들어진 파일 업로드 링크를 이용해, 공격자가 허락되지 않은 다른 파일을 몰래 복사해갈 수 있는 보안 결함입니다. 공격자는 사용자의 권한을 빌려 시스템 내의 다른 데이터를 마음대로 가져올 수 있습니다.
🇺🇸 원문 (English)
In OpenStack Swift through 2.38.0, S3API middleware does not enforce that semantic x-amz-* headers are covered by the SigV4 signature on presigned URL requests. An attacker who obtains a presigned PUT URL can inject an unsigned X-Amz-Copy-Source header, causing Swift to perform a server-side copy from an arbitrary source object using the signer's authorization context. The attacker can read any object the signer has access to, provided the target project_id, container name, and object name are known. This affects all deployments using the default s3_acl=false configuration.
📍 영향받는 시스템
OpenStack Swift 2.38.0 및 그 이하 버전 (s3_acl=false 설정 시)
⚔️ 공격 벡터
서명된 PUT URL에 서명되지 않은 X-Amz-Copy-Source 헤더를 삽입하여 서버 측 복사 실행
🛡️ 대응 방법
OpenStack Swift를 최신 보안 패치가 적용된 버전으로 업데이트하거나 S3 API 미들웨어 설정을 검토하십시오.
🔧 검증 코드
출력된 버전이 2.38.0 이하인 경우 해당 취약점에 노출되었을 가능성이 높습니다.
swift --version | grep -E '2\[0-3]\.'