🔍 CVE-2017-5941

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

🇰🇷 한글 설명

node-serialize 0.0.4 패키지의 unserialize() 함수가 신뢰할 수 없는 데이터를 처리할 때 IIFE 패턴을 포함한 악의적인 JavaScript 객체를 역직렬화하여 임의의 코드 실행을 허용합니다. 공격자는 특수 조작된 직렬화 문자열을 통해 서버에서 원격으로 코드를 실행할 수 있습니다.

💡 쉬운 설명

Node.js 데이터 처리 라이브러리가 안전하지 않은 방식으로 데이터를 역직렬화할 때, 숨겨진 악의적인 코드가 자동으로 실행되는 문제입니다. 공격자가 조작된 데이터를 보내면 서버가 원하지 않는 명령을 실행하게 됩니다.

🇺🇸 원문 (English)

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

📍 영향받는 시스템

node-serialize 패키지 버전 0.0.4 및 이전 버전이 설치된 Node.js 애플리케이션

⚔️ 공격 벡터

IIFE를 포함한 JavaScript 객체가 인코딩된 직렬화 문자열을 unserialize() 함수로 전달하여 RCE 달성

🛡️ 대응 방법

node-serialize 패키지를 최신 버전으로 업그레이드하거나 안전한 대체 직렬화 라이브러리(JSON, protobuf 등) 사용

🔧 검증 코드

설치된 node-serialize 버전이 0.0.4 이하면 취약함. 버전이 표시되지 않으면 해당 패키지가 미설치된 상태

Shell / Script
npm list node-serialize 2>/dev/null | head -5

📊 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