🔍 CVE-2026-48157

6.1
CVSS Score
MEDIUM
2026-06-15
2026-10-25 23:10
✅ 완료

🇰🇷 한글 설명

Slim PHP 마이크로 프레임워크 4.4.0부터 4.15 버전에서 HttpException::setTitle() 또는 setDescription()에 사용자 입력값을 포함할 경우 발생하는 XSS 취약점입니다. 공격자는 HTML 에러 페이지를 통해 악성 JavaScript를 실행할 수 있으며, 이는 에러 상세 정보 표시 설정이 꺼져 있어도 발생합니다. 해당 문제는 4.15.2 버전에서 수정되었습니다.

💡 쉬운 설명

웹사이트 에러 메시지에 사용자가 입력한 글자가 그대로 표시되어, 해커가 몰래 악성 코드를 심을 수 있는 문제입니다. 에러 화면이 뜰 때 사용자의 브라우저에서 해커가 원하는 동작이 실행될 수 있습니다.

🇺🇸 원문 (English)

Slim is a PHP micro framework that enables users to write simple web applications and APIs. In versions 4.4.0 through 4.15, if an application uses HttpException::setTitle() and/or setDescription() to include untrusted/request-derived data in the error title or description (e.g. "No products found matching '{$query}'."), an attacker could inject arbitrary HTML/JavaScript that executes in the victim's browser when they encounter an HTML error page generated by Slim. The vulnerability is present even with displayErrorDetails = false as the unescaped title and description are rendered on this error path. Built-in exceptions (HttpNotFoundException, HttpBadRequestException, etc.) ship plain-text defaults, so a vanilla Slim app with no user code is not exploitable. Only applications that feed untrusted data into setTitle() and/or setDescription() are affected. The issue has been fixed in 4.15.2. If developers are unable to immediately update their applications, they can work around this issue by avoiding passing untrusted/request-derived data into HttpException::setTitle() and setDescription() and using static, plain-text error copy instead. They should also register a custom error renderer (an ErrorRendererInterface implementation, or a subclass of HtmlErrorRenderer that escapes the title and description) for the HTML media type.

📍 영향받는 시스템

Slim Framework versions 4.4.0 through 4.15

⚔️ 공격 벡터

HttpException의 제목이나 설명에 포함된 검증되지 않은 사용자 입력 데이터를 통한 HTML/JavaScript 주입

🛡️ 대응 방법

Slim Framework를 4.15.2 이상으로 업데이트하거나, 에러 메시지에 사용자 입력값을 직접 사용하지 말고 정적 텍스트를 사용하십시오.

🔧 검증 코드

출력된 버전이 4.4.0에서 4.15 사이라면 취약한 버전이 설치된 것입니다.

Shell / Script
composer show slim/slim | grep 'versions'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

PHP