🔍 CVE-2026-103921

7.4
CVSS Score
HIGH
2026-10-01
2026-10-02 18:44
✅ 완료

🇰🇷 한글 설명

GraphQL Tools의 executor-legacy-ws 빌드 함수에서 Node.js를 통한 wss:// 연결 시 TLS 인증서 검증을 강제로 비활성화하는 취약점이 발견되었습니다. 이로 인해 네트워크 중간에서 공격자가 연결을 가로챌 경우 인증 정보가 유출되거나 구독 데이터가 변조될 수 있습니다. 해당 문제는 1.1.35 버전에서 수정되었습니다.

💡 쉬운 설명

보안 연결을 사용할 때 상대방이 진짜인지 확인하는 과정이 생략되어 있어, 해커가 중간에서 정보를 훔쳐보거나 조작할 수 있는 문제입니다. 다만 웹 브라우저를 사용하는 경우에는 브라우저 자체 보안 기능 덕분에 안전합니다.

🇺🇸 원문 (English)

GraphQL Tools provides utilities for building, stitching, and mocking GraphQL schemas. Prior to 1.1.35, the executor-legacy-ws buildWSLegacyExecutor() function hardcodes TLS certificate rejection off for Node.js connections to wss:// endpoints. Applications using the executor directly, or url-loader with SubscriptionProtocol.LEGACY_WS, can therefore accept an attacker-controlled certificate when a network-positioned attacker intercepts the connection. Authentication material in connectionParams or headers can be disclosed, and subscription data can be modified. Browser WebSocket clients are unaffected because browsers enforce certificate validation. This issue is fixed in version 1.1.35.

📍 영향받는 시스템

GraphQL Tools (executor-legacy-ws 사용 시) 1.1.35 미만 버전

⚔️ 공격 벡터

네트워크 중간자 공격(Man-in-the-Middle)을 통한 TLS 인증서 검증 우회 및 데이터 탈취

🛡️ 대응 방법

GraphQL Tools 라이브러리를 1.1.35 버전 이상으로 업데이트하십시오.

🔧 검증 코드

출력된 버전 번호가 1.1.35보다 낮으면 취약한 상태이며, 1.1.35 이상이면 안전합니다.

Shell / Script
npm list graphql-tools | grep -E 'graphql-tools@([0-9]+\.[0-9]+\.[0-9]+)'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js