🇰🇷 한글 설명
LiquidJS 10.25.4 이전 버전의 sort_natural 필터가 ownPropertyOnly 보안 옵션을 우회하여 프로토타입 상속 속성값을 추출할 수 있는 정보 유출 취약점입니다. 멀티테넌트 템플릿 시스템에서 API 키, 토큰 등 민감한 정보가 노출될 수 있습니다.
💡 쉬운 설명
LiquidJS의 정렬 기능이 보안 설정을 무시하고 숨겨진 데이터를 읽을 수 있게 해줍니다. 이를 통해 API 키나 토큰 같은 민감한 정보가 유출될 수 있습니다.
🇺🇸 원문 (English)
LiquidJS is a Shopify / GitHub Pages compatible template engine in pure JavaScript. Prior to 10.25.4, the sort_natural filter bypasses the ownPropertyOnly security option, allowing template authors to extract values of prototype-inherited properties through a sorting side-channel attack. Applications relying on ownPropertyOnly: true as a security boundary (e.g., multi-tenant template systems) are exposed to information disclosure of sensitive prototype properties such as API keys and tokens. This vulnerability is fixed in 10.25.4.
📍 영향받는 시스템
LiquidJS < 10.25.4
⚔️ 공격 벡터
sort_natural 필터의 정렬 비교 함수를 조작하여 프로토타입 속성 접근 및 값 추출
🛡️ 대응 방법
LiquidJS를 10.25.4 이상으로 업그레이드
🔧 검증 코드
[email protected] 이상이 표시되면 안전, 미만이면 즉시 업그레이드 필요
npm list liquidjs --depth=0 2>/dev/null | grep -E 'liquidjs@'