🇰🇷 한글 설명
Node.js용 Handlebars 패키지 4.0.0 이전 버전에서 따옴표가 없는 속성을 가진 템플릿을 통해 원격 공격자가 XSS 공격을 수행할 수 있는 취약점입니다. 악의적인 템플릿 문자열이 처리될 때 자바스크립트 코드가 삽입되어 실행될 수 있습니다.
💡 쉬운 설명
웹사이트 템플릿 시스템에서 따옴표 없는 변수를 사용하면 해킹된 코드가 실행될 수 있습니다. 사용자의 브라우저에서 악의적인 스크립트가 자동 실행되어 개인정보를 도용할 수 있습니다.
🇺🇸 원문 (English)
The handlebars package before 4.0.0 for Node.js allows remote attackers to conduct cross-site scripting (XSS) attacks by leveraging a template with an attribute that is not quoted.
📍 영향받는 시스템
handlebars < 4.0.0 (Node.js)
⚔️ 공격 벡터
특수 문자가 포함된 따옴표 없는 속성을 가진 악성 Handlebars 템플릿을 웹 애플리케이션에 전달
🛡️ 대응 방법
handlebars 패키지를 4.0.0 이상으로 업그레이드하고 모든 템플릿 속성을 큰따옴표나 작은따옴표로 감싸기
🔧 검증 코드
4.0.0 미만 버전이 출력되면 취약하고, Safe version이 출력되거나 설치되지 않으면 안전합니다.
npm list handlebars 2>/dev/null | grep -E 'handlebars@[0-3]\.|handlebars@4\.0\.0-beta' || echo 'Safe version or not installed'