🇰🇷 한글 설명
Vite 프레임워크에서 커스텀 미들웨어를 사용하는 애플리케이션이 브라우저 요청 URL을 수정 없이 server.transformIndexHtml로 전달할 때 발생하는 취약점입니다. 공격자가 조작된 URL을 통해 생성된 프록시 모듈 URL에 슬래시를 삽입하면, 브라우저가 공격자가 제어하는 모듈을 실행하여 민감한 데이터를 노출하거나 임의의 동작을 수행할 수 있습니다.
💡 쉬운 설명
웹 개발 도구인 Vite를 사용할 때, 공격자가 특수하게 조작된 주소를 보내면 웹사이트가 공격자의 악성 코드를 실행하게 만드는 보안 결함입니다. 이를 통해 사용자의 중요한 정보가 유출되거나 웹사이트가 의도치 않게 조작될 위험이 있습니다.
🇺🇸 원문 (English)
Vite is a frontend tooling framework for JavaScript. Prior to 6.4.4, 7.3.7, 8.1.6, 8.2.4, and 8.3.3, applications using custom middleware are vulnerable when they pass an unchanged browser request URL to server.transformIndexHtml. getHtmlFilename uses the query-bearing request URL to resolve an existing local file while preserving attacker-supplied leading slashes in the generated proxy module URL. If the transformed HTML contains an inline module script and a victim browser loads the crafted development-server page, the leading double slash makes the browser fetch and execute an attacker-controlled module in the Vite-served page. This execution can expose sensitive page data or permit critical actions available to the affected application. This issue is fixed in versions 6.4.4, 7.3.7, 8.1.6, 8.2.4, and 8.3.3.
📍 영향받는 시스템
Vite 버전 6.4.4, 7.3.7, 8.1.6, 8.2.4, 8.3.3 미만 버전
⚔️ 공격 벡터
조작된 쿼리 스트링이 포함된 URL을 통해 브라우저가 공격자의 모듈을 호출하도록 유도하는 방식
🛡️ 대응 방법
Vite를 최신 보안 패치 버전(6.4.4, 7.3.7, 8.1.6, 8.2.4, 8.3.3 이상)으로 업데이트하십시오.
🔧 검증 코드
출력된 Vite의 버전이 취약점이 해결된 버전(6.4.4, 7.3.7, 8.1.6, 8.2.4, 8.3.3 이상)인지 확인하십시오.
npm list vite | grep vite
💻 영향받는 소프트웨어
IBM WebSphere Application Server