🔍 CVE-2017-5954

9.8
CVSS Score
CRITICAL
2017-02-10
2026-06-17 01:21
✅ 완료

🇰🇷 한글 설명

Node.js의 serialize-to-js 패키지 0.5.0에서 deserialize() 함수가 신뢰할 수 없는 데이터를 처리할 때 IIFE(즉시 호출 함수 표현식)를 포함한 악의적 객체를 통해 임의 코드 실행이 가능합니다. 공격자는 이를 이용하여 애플리케이션의 권한으로 서버에서 임의 명령을 실행할 수 있습니다.

💡 쉬운 설명

serialize-to-js 라이브러리가 악의적인 코드가 숨겨진 데이터를 받으면 자동으로 실행해버리는 버그입니다. 공격자가 이를 악용하면 서버를 완전히 장악할 수 있습니다.

🇺🇸 원문 (English)

An issue was discovered in the serialize-to-js package 0.5.0 for Node.js. Untrusted data passed into the deserialize() function can be exploited to achieve arbitrary code execution by passing a JavaScript Object with an Immediately Invoked Function Expression (IIFE).

📍 영향받는 시스템

Node.js serialize-to-js 패키지 0.5.0 이하 버전

⚔️ 공격 벡터

신뢰할 수 없는 출처의 데이터를 deserialize() 함수에 전달할 때 IIFE가 포함된 JavaScript 객체를 주입하여 코드 실행

🛡️ 대응 방법

serialize-to-js를 0.5.1 이상으로 즉시 업그레이드하거나 신뢰할 수 없는 데이터에 deserialize() 사용 금지

🔧 검증 코드

출력된 버전이 0.5.0 이하면 취약함. 0.5.1 이상 또는 설치되지 않음이면 안전함.

Shell / Script
npm list serialize-to-js 2>/dev/null | grep serialize-to-js

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js