🔍 CVE-2024-21527

8.2
CVSS Score
HIGH
2024-07-19
2026-07-02 16:16
✅ 완료

🇰🇷 한글 설명

Gotenberg v8.1.0 이전 버전의 /convert/html 엔드포인트에서 SSRF 취약점이 발견되어 localhost를 통한 로컬 파일 포함 공격이 가능합니다. 공격자가 iframe src="\\localhost/etc/passwd" 같은 요청으로 시스템의 민감한 파일을 읽을 수 있습니다.

💡 쉬운 설명

Gotenberg 문서 변환 서비스가 localhost 경로 접근을 차단하지 못해, 공격자가 서버 내부 파일을 읽을 수 있습니다. 민감한 설정 파일이나 비밀번호 파일 같은 것을 유출할 수 있어 위험합니다.

🇺🇸 원문 (English)

Versions of the package github.com/gotenberg/gotenberg/v8/pkg/gotenberg before 8.1.0; versions of the package github.com/gotenberg/gotenberg/v8/pkg/modules/chromium before 8.1.0; versions of the package github.com/gotenberg/gotenberg/v8/pkg/modules/webhook before 8.1.0 are vulnerable to Server-side Request Forgery (SSRF) via the /convert/html endpoint when a request is made to a file via localhost, such as <iframe src="\\localhost/etc/passwd">. By exploiting this vulnerability, an attacker can achieve local file inclusion, allowing of sensitive files read on the host system. Workaround An alternative is using either or both --chromium-deny-list and --chromium-allow-list flags.

📍 영향받는 시스템

github.com/gotenberg/gotenberg v8.0.x 이하, github.com/gotenberg/gotenberg/v8/pkg/modules/chromium v8.0.x 이하, github.com/gotenberg/gotenberg/v8/pkg/modules/webhook v8.0.x 이하

⚔️ 공격 벡터

/convert/html 엔드포인트에 <iframe src="\\localhost/etc/passwd"> 형태의 요청을 전송하여 로컬 파일 접근

🛡️ 대응 방법

버전을 8.1.0 이상으로 업그레이드하거나 --chromium-deny-list 및 --chromium-allow-list 플래그로 localhost 접근 제한

🔧 검증 코드

명령어 실행 결과에서 v8.0.x 패턴이 보이면 취약 버전, 검출되지 않으면 8.1.0 이상의 안전 버전이거나 설치되지 않은 상태

Shell / Script
gotenberg --version 2>/dev/null | grep -oE 'v8\\.[0-0]\\.[0-9]+' && echo 'Vulnerable'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Git