🔍 CVE-2015-8857

9.8
CVSS Score
CRITICAL
2017-01-23
2026-06-17 00:35
✅ 완료

🇰🇷 한글 설명

uglify-js 2.4.24 이전 버전의 JavaScript 축소화 도구가 부울 표현식 재작성 시 비부울 값을 올바르게 처리하지 못하는 취약점입니다. 공격자가 이를 악용하여 보안 검증 로직을 우회하거나 코드의 실행 흐름을 조작할 수 있습니다.

💡 쉬운 설명

uglify-js는 JavaScript 코드를 압축하는 도구인데, true/false 값이 아닌 다른 값들을 처리할 때 실수를 합니다. 이로 인해 보안 체크를 피해갈 수 있습니다.

🇺🇸 원문 (English)

The uglify-js package before 2.4.24 for Node.js does not properly account for non-boolean values when rewriting boolean expressions, which might allow attackers to bypass security mechanisms or possibly have unspecified other impact by leveraging improperly rewritten Javascript.

📍 영향받는 시스템

uglify-js < 2.4.24 (Node.js package)

⚔️ 공격 벡터

악의적인 부울 표현식을 포함한 JavaScript 코드를 통해 축소화 과정에서 보안 검증 로직을 우회

🛡️ 대응 방법

uglify-js를 2.4.24 이상으로 업그레이드 (npm update uglify-js 또는 package.json에서 버전 지정)

🔧 검증 코드

설치된 uglify-js 버전이 2.4.24 이상이면 안전하고, 2.4.24 미만이면 업그레이드 필요

Shell / Script
npm list uglify-js 2>/dev/null | grep -E '@|[0-9]+\.[0-9]+\.[0-9]+'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js