🔍 CVE-2026-105867

6.5
CVSS Score
MEDIUM
2026-10-06
2026-10-15 00:07
✅ 완료

🇰🇷 한글 설명

Payload CMS의 @payloadcms/storage-s3 라이브러리에서 인증된 사용자가 다른 컬렉션의 S3 객체를 덮어쓸 수 있는 취약점이 발견되었습니다. useCompositePrefixes 설정이 비활성화된 경우, 공격자는 대상 컬렉션의 접근 제어 및 파일 검증을 우회하여 기존 파일을 변조할 수 있습니다.

💡 쉬운 설명

로그인 권한이 있는 사용자가 다른 사람이 올린 파일을 몰래 수정하거나 덮어쓸 수 있는 보안 결함입니다. 파일 저장 경로 설정이 제대로 되어 있지 않을 때 발생하며, 이를 통해 중요한 데이터가 바뀔 위험이 있습니다.

🇺🇸 원문 (English)

Payload is a free and open source headless content management system. In @payloadcms/storage-s3 versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user can overwrite an existing S3 object belonging to another upload collection when client uploads are enabled for multiple collections sharing a bucket and useCompositePrefixes is false or unset. This bypasses the target collection's access controls and prior file validation. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.

📍 영향받는 시스템

@payloadcms/storage-s3 < 3.90.0 및 4.0.0-canary.34 미만의 canary 버전

⚔️ 공격 벡터

인증된 사용자가 동일한 S3 버킷을 공유하는 다른 컬렉션의 파일 경로로 업로드를 시도하여 기존 객체를 덮어씀

🛡️ 대응 방법

@payloadcms/storage-s3 버전을 3.90.0 또는 4.0.0-canary.34 이상으로 업데이트하거나 useCompositePrefixes 설정을 true로 변경

🔧 검증 코드

출력된 버전이 3.90.0 미만이거나 4.0.0-canary.34 미만인 경우 취약한 상태임

Shell / Script
npm list @payloadcms/storage-s3

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N

💻 영향받는 소프트웨어

Magento Open Source