🔍 CVE-2026-102599

7.5
CVSS Score
HIGH
2026-10-13
2026-10-17 02:17
✅ 완료

🇰🇷 한글 설명

Engine.IO 6.6.0부터 6.6.10 버전 사이에서 발생하며, 업그레이드 요청 시 세션에 저장된 프로토콜 버전을 강제하지 않고 클라이언트가 임의로 결정할 수 있는 취약점입니다. 악의적인 클라이언트가 호환되지 않는 프로토콜 버전을 사용하여 하트비트 패킷을 보내면 예외가 발생하여 Node.js 프로세스가 종료될 수 있습니다.

💡 쉬운 설명

통신 규칙을 마음대로 조작하여 서버를 강제로 종료시킬 수 있는 결함입니다. 공격자가 특수한 신호를 보내면 서버 프로그램이 오류를 일으키며 멈추게 됩니다.

🇺🇸 원문 (English)

Socket.IO enables bidirectional and low-latency communication for every platform. From Engine.IO 6.6.0 until 6.6.10, a transport upgrade can independently derive an Engine.IO protocol revision from the upgrade request instead of enforcing the revision stored on the existing session. A malicious client can establish a valid session and send an upgrade request with a different or omitted EIO query parameter, attaching a transport with incompatible parser and heartbeat behavior. A crafted heartbeat packet can then trigger an uncaught exception and terminate the Node.js process, including when Engine.IO v3 compatibility is disabled because an omitted EIO value is interpreted as revision 3 on the affected path. This issue is fixed in Engine.IO 6.6.10.

📍 영향받는 시스템

Engine.IO versions 6.6.0 through 6.6.10

⚔️ 공격 벡터

조작된 EIO 쿼리 파라미터를 포함한 업그레이드 요청 및 하트비트 패킷 전송

🛡️ 대응 방법

Engine.IO 버전을 6.6.10 이상으로 업데이트

🔧 검증 코드

출력된 버전이 6.6.0에서 6.6.10 사이라면 취약한 상태입니다.

Shell / Script
npm list engine.io --depth=0 | grep -E 'engine.io@6\.(6\.[0-9]|6\.[1-9]|7\.)'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js