🔍 CVE-2026-55760

7.5
CVSS Score
HIGH
2026-07-08
2026-10-25 17:10
✅ 완료

🇰🇷 한글 설명

Handlebars.java는 Java에서 로직리스 및 시맨틱 Mustache 템플릿을 제공합니다. 4.5.2 이전 버전에서는 FileTemplateLoader 또는 ClassPathTemplateLoader를 사용하며 사용자 입력을 Handlebars.compile()에 전달하는 애플리케이션이 경로 순회(path traversal)에 취약하여, URL 경로 파라미터나 요청 파라미터 등에서 유도된 템플릿 이름을 통해 임의 파일 읽기가 가능합니다. 이 문제는 4.5.2 버전에서 수정되었습니다.

💡 쉬운 설명

Java로 웹 페이지를 만드는 데 쓰이는 템플릿 라이브러리의 오래된 버전에 결함이 있습니다. 공격자가 특수한 경로를 입력하면 서버의 중요한 파일을 훔쳐볼 수 있습니다.

🇺🇸 원문 (English)

Handlebars.java provides logic-less and semantic Mustache templates with Java. Prior to 4.5.2, applications that pass user-controlled input to Handlebars.compile() using FileTemplateLoader or ClassPathTemplateLoader are vulnerable to path traversal, allowing arbitrary file read through template names derived from URL path parameters, request parameters, or other user-controlled sources. This issue is fixed in version 4.5.2.

📍 영향받는 시스템

Handlebars.java 4.5.2 미만 버전을 사용하는 Java 애플리케이션 (FileTemplateLoader 또는 ClassPathTemplateLoader 사용 시)

⚔️ 공격 벡터

사용자 입력(URL 경로, 요청 파라미터 등)에 '../' 같은 경로 순회 문자열을 넣어 템플릿 로더가 서버의 임의 파일을 읽도록 유도

🛡️ 대응 방법

Handlebars.java를 4.5.2 이상으로 업그레이드하고, 사용자 입력으로 템플릿 이름을 구성하지 않도록 코드를 수정

🔧 검증 코드

출력된 Implementation-Version이 4.5.2 미만이면 취약하고, 4.5.2 이상이면 패치된 버전이며, 출력이 없으면 해당 라이브러리가 설치되지 않은 것입니다.

Shell / Script
find / -name 'handlebars*.jar' 2>/dev/null -exec sh -c 'unzip -p "$1" META-INF/MANIFEST.MF 2>/dev/null | grep -i "Implementation-Version" | sed "s|^|$1: |"' _ {} \;

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Oracle Java SE