🔍 CVE-2017-16007

5.9
CVSS Score
MEDIUM
2018-06-04
2026-06-17 01:08
✅ 완료

🇰🇷 한글 설명

node-jose 0.9.3 미만 버전에서 발생하는 타원 곡선 공격(Invalid Curve Attack) 취약점입니다. ECDH-ES 키 합의 방식을 사용하는 JWE 과정에서 공격자가 개인 비밀키를 복구할 수 있습니다.

💡 쉬운 설명

암호화 과정에서 잘못된 수학적 계산을 유도하여 서버의 비밀 열쇠를 훔쳐낼 수 있는 결함입니다. 이로 인해 암호화된 데이터가 공격자에게 노출될 위험이 있습니다.

🇺🇸 원문 (English)

node-jose is a JavaScript implementation of the JSON Object Signing and Encryption (JOSE) for current web browsers and node.js-based servers. node-jose earlier than version 0.9.3 is vulnerable to an invalid curve attack. This allows an attacker to recover the private secret key when JWE with Key Agreement with Elliptic Curve Diffie-Hellman Ephemeral Static (ECDH-ES) is used.

📍 영향받는 시스템

node-jose version < 0.9.3

⚔️ 공격 벡터

ECDH-ES 키 합의를 사용하는 JWE 처리 과정에서 유효하지 않은 타원 곡선 파라미터를 전송하여 개인키 탈취

🛡️ 대응 방법

node-jose 라이브러리를 0.9.3 버전 이상으로 업데이트

🔧 검증 코드

출력된 버전 번호가 0.9.3보다 낮으면 취약한 상태입니다.

Shell / Script
npm list node-jose | grep -E 'node-jose@([0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,2})'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js