🇰🇷 한글 설명
Node.js의 네트워크 임포트 제한 기능을 데이터 URL을 통해 우회할 수 있는 보안 결함입니다. 공격자가 데이터 URL에 악성 코드를 포함시켜 임의 코드 실행이 가능하며, 네트워크 임포트 보안 정책을 완전히 무력화할 수 있습니다.
💡 쉬운 설명
Node.js 프로그램이 외부 코드 실행을 제한하는 기능이 데이터 URL이라는 특수한 형식으로 우회될 수 있습니다. 이를 통해 공격자가 악의적인 코드를 몰래 실행할 수 있습니다.
🇺🇸 원문 (English)
A security flaw in Node.js allows a bypass of network import restrictions.
By embedding non-network imports in data URLs, an attacker can execute arbitrary code, compromising system security.
Verified on various platforms, the vulnerability is mitigated by forbidding data URLs in network imports.
Exploiting this flaw can violate network import security, posing a risk to developers and servers.
📍 영향받는 시스템
Node.js 18.18.0, 20.0.0~20.9.0, 21.0.0~21.6.1 등 특정 버전 범위
⚔️ 공격 벡터
data:// 프로토콜을 이용한 인코딩된 악성 스크립트를 네트워크 임포트 API에 전달
🛡️ 대응 방법
Node.js를 패치된 버전(18.18.1, 20.10.0, 21.7.0 이상)으로 업데이트 및 네트워크 임포트 정책에 데이터 URL 차단 규칙 추가
🔧 검증 코드
출력된 Node.js 버전이 18.18.1, 20.10.0, 21.7.0 이상이면 패치됨, 그 이하면 취약함
node --version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+'