🔍 CVE-2023-30582

5.3
CVSS Score
MEDIUM
2024-09-07
2026-06-17 05:55
✅ 완료

🇰🇷 한글 설명

Node.js 20의 실험적 권한 모델에서 --allow-fs-read 플래그로 특정 파일만 허용할 때, fs.watchFile API가 이 제한을 우회하는 취약점입니다. 공격자가 읽기 권한이 없는 파일의 변화를 감시할 수 있게 됩니다.

💡 쉬운 설명

Node.js에서 파일 접근을 제한하는 보안 기능이 모니터링 기능까지는 제한하지 않아서, 권한 없는 파일도 변경 사항을 감시할 수 있습니다. 이를 통해 시스템 정보를 유출당할 수 있습니다.

🇺🇸 원문 (English)

A vulnerability has been identified in Node.js version 20, affecting users of the experimental permission model when the --allow-fs-read flag is used with a non-* argument. This flaw arises from an inadequate permission model that fails to restrict file watching through the fs.watchFile API. As a result, malicious actors can monitor files that they do not have explicit read access to. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

📍 영향받는 시스템

Node.js 20 (실험적 권한 모델 사용)

⚔️ 공격 벡터

fs.watchFile() API를 사용하여 --allow-fs-read로 제한된 파일을 모니터링

🛡️ 대응 방법

Node.js를 패치된 버전(20.x 이상의 최신 보안 업데이트)으로 업그레이드

🔧 검증 코드

v20으로 시작하면 취약한 버전입니다. 더 높은 마이너 버전 또는 v22 이상의 안정판으로 업그레이드하세요.

Shell / Script
node --version 2>/dev/null | grep -E 'v20'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js