🔍 CVE-2026-115932

9.6
CVSS Score
CRITICAL
2026-10-24
2026-10-24 13:16
✅ 완료

🇰🇷 한글 설명

Postiz에서 게시물 발행 시 웹 주소가 아닌 미디어 경로를 서버 디스크의 파일로 처리하면서 업로드 디렉터리 내부에 있는지 검증하지 않습니다. 등록된 사용자는 조작된 미디어 경로를 게시물에 저장해 임의의 파일을 읽고 Discord 서버로 전송할 수 있으며, 파일 존재 여부 노출 및 메모리 고갈 경로도 존재합니다. 회원가입이 기본 개방되어 있어 기존 계정 없이도 공격이 가능합니다.

💡 쉬운 설명

Postiz 프로그램이 사진이나 파일 경로를 확인하지 않아 공격자가 서버의 중요한 파일을 몰래 읽을 수 있습니다. 누구나 가입할 수 있어 별도 권한 없이도 이 공격이 가능합니다.

🇺🇸 원문 (English)

When a post is published, Postiz treats a media path that is not a web address as a file on the server's disk, but it does not check that the file lies inside the upload directory. A registered user can store a crafted media path with a post, get it past the checks that normally restrict it, and have the publishing worker read an arbitrary file and send it as an attachment to a Discord server the user controls. The same unconfined reads can be reached through two further routes. One tells the caller whether a file exists and can exhaust the backend's memory, the other delivers the file the same way as the main route. Self-registration is open by default, so the attacker needs no existing account.

📍 영향받는 시스템

Postiz 소셜 미디어 관리 플랫폼 (패치 이전 모든 버전, 정확한 영향 버전은 공식 권고 확인 필요)

⚔️ 공격 벡터

가입한 사용자가 디렉터리 탈출 경로(예: ../)가 담긴 미디어 경로로 게시물을 만들고 발행 워커가 임의 파일을 Discord로 전송하게 함

🛡️ 대응 방법

Postiz를 공식 패치 버전으로 업데이트하고, 미디어 경로가 업로드 디렉터리 내부인지 검증하며, 공개 회원가입을 비활성화하거나 제한

🔧 검증 코드

출력된 버전이 공식 권고의 패치 버전보다 낮으면 취약하며, 이미지 태그나 package.json 버전이 패치 이상이면 조치된 것입니다.

Shell / Script
docker ps --format '{{.Image}}' | grep -i postiz; cat /opt/postiz/package.json 2>/dev/null | grep '"version"'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Plex Media Server