🔍 CVE-2026-118662

6.9
CVSS Score
MEDIUM
2026-10-28
2026-11-03 00:17
✅ 완료

🇰🇷 한글 설명

Vite는 JavaScript용 프론트엔드 도구 프레임워크입니다. 6.4.4부터 6.4.5 이전 버전에서는 개발 서버가 ?raw, ?import&raw, ?import&url&inline 같은 로더 쿼리 파라미터를 제거하기 전에 server.fs.deny 규칙을 평가하지 않아, 네트워크에 노출된 개발 서버에서 거부된 민감한 파일이 인증 없이 노출될 수 있습니다. 이 문제는 6.4.5 버전에서 수정되었습니다.

💡 쉬운 설명

Vite 개발 서버의 파일 접근 차단 규칙이 특정 쿼리 파라미터 때문에 우회될 수 있는 취약점입니다. 외부에 노출된 개발 서버에서는 공격자가 차단된 민감한 파일을 내려받을 수 있습니다.

🇺🇸 원문 (English)

Vite is a frontend tooling framework for JavaScript. From 6.4.4 until 6.4.5, the Vite development server can evaluate server.fs.deny before stripping loader query parameters such as ?raw, ?import&raw, or ?import&url&inline. When the development server is exposed to the network and a sensitive file is inside server.fs.allow but matched by server.fs.deny, an unauthenticated attacker can append one of these queries and retrieve the denied file. This issue is fixed in version 6.4.5.

📍 영향받는 시스템

Vite 6.4.4 이상 6.4.5 미만 버전을 사용하는 개발 서버 (네트워크에 노출된 경우)

⚔️ 공격 벡터

server.fs.allow 범위 내에 있으나 server.fs.deny로 차단된 파일에 ?raw 등의 쿼리를 붙여 인증 없이 요청

🛡️ 대응 방법

Vite를 6.4.5 이상으로 업데이트하고, 개발 서버를 외부 네트워크에 노출하지 않도록 설정

🔧 검증 코드

출력이 있으면 취약한 버전(6.4.4 미만이 아닌 6.4.4 이상 6.4.5 미만 범위 중 6.4.4 포함)이 설치된 것이므로 업데이트가 필요하며, 출력이 없으면 해당 범위에 속하지 않습니다.

Shell / Script
npm ls vite 2>/dev/null | grep -E 'vite@6\.4\.[0-4]([^0-9]|$)'

📊 CVSS Vector String

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:H/SI:N/SA:N