🇰🇷 한글 설명
Node.js의 권한 모델 결함으로 인해 --permission 옵션이 활성화된 상태에서 Unix 도메인 소켓(UDS) 연결이 네트워크 제한을 우회할 수 있습니다. --allow-net 설정이 없더라도 공격자가 제어하는 입력값을 통해 로컬 소켓에 임의로 연결할 수 있어, 권한 상승이나 데이터 노출 및 로컬 코드 실행이 가능해집니다.
💡 쉬운 설명
Node.js의 보안 설정이 제대로 작동하지 않아, 네트워크 접속을 막아두었음에도 불구하고 컴퓨터 내부의 중요한 통로로 몰래 접속할 수 있는 문제입니다. 이를 통해 해커가 시스템의 권한을 뺏거나 중요한 정보를 훔쳐갈 위험이 있습니다.
🇺🇸 원문 (English)
A flaw in Node.js's permission model allows Unix Domain Socket (UDS) connections to bypass network restrictions when `--permission` is enabled. Even without `--allow-net`, attacker-controlled inputs (such as URLs or socketPath options) can connect to arbitrary local sockets via net, tls, or undici/fetch. This breaks the intended security boundary of the permission model and enables access to privileged local services, potentially leading to privilege escalation, data exposure, or local code execution.
* The issue affects users of the Node.js permission model on version v25.
In the moment of this vulnerability, network permissions (`--allow-net`) are still in the experimental phase.
📍 영향받는 시스템
Node.js v25 (Permission Model 사용 시)
⚔️ 공격 벡터
공격자가 제어하는 URL이나 socketPath 입력을 통해 net, tls, undici/fetch 모듈로 로컬 소켓에 연결
🛡️ 대응 방법
Node.js를 보안 패치가 적용된 최신 버전으로 업데이트하거나, 권한 모델 사용 시 입력값 검증을 강화하십시오.
🔧 검증 코드
명령어 결과로 v25.x.x 버전이 출력되면 해당 취약점에 노출될 가능성이 있는 시스템입니다.
node -v | grep -E '^v25\.'