🔍 CVE-2021-31597

9.4
CVSS Score
CRITICAL
2021-04-23
2026-06-17 03:52
✅ 완료

🇰🇷 한글 설명

Node.js용 xmlhttprequest-ssl 패키지 1.6.1 이전 버전에서 SSL 인증서 검증이 기본적으로 비활성화되는 취약점이 발견되었습니다. Node.js의 https.request 함수에서 rejectUnauthorized 속성이 정의되지 않았을 때 이를 false로 처리하는 특성을 악용하여 모든 인증서가 거부되지 않고 통과됩니다.

💡 쉬운 설명

인터넷 연결 시 상대방이 진짜인지 확인하는 '신분증 검사' 과정이 생략되는 보안 결함입니다. 이로 인해 해커가 가짜 사이트로 연결을 유도하더라도 시스템이 이를 알아차리지 못할 수 있습니다.

🇺🇸 원문 (English)

The xmlhttprequest-ssl package before 1.6.1 for Node.js disables SSL certificate validation by default, because rejectUnauthorized (when the property exists but is undefined) is considered to be false within the https.request function of Node.js. In other words, no certificate is ever rejected.

📍 영향받는 시스템

xmlhttprequest-ssl package versions prior to 1.6.1

⚔️ 공격 벡터

중간자 공격(Man-in-the-Middle)을 통해 암호화된 통신 내용을 가로채거나 조작

🛡️ 대응 방법

xmlhttprequest-ssl 패키지를 1.6.1 버전 이상으로 업데이트

🔧 검증 코드

출력된 결과에서 xmlhttprequest-ssl의 버전이 1.6.1 미만인지 확인

Shell / Script
npm list xmlhttprequest-ssl

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js