🔍 CVE-2024-22018

2.9
CVSS Score
LOW
2024-07-10
2026-06-17 07:10
✅ 완료

🇰🇷 한글 설명

Node.js의 실험적 권한 모델에서 --allow-fs-read 플래그 사용 시 fs.lstat API를 통해 권한이 없는 파일의 통계 정보를 조회할 수 있는 취약점입니다. 악의적 행위자가 접근 권한이 없는 파일의 메타데이터(크기, 수정 시간 등)를 획득할 수 있습니다.

💡 쉬운 설명

Node.js에서 파일 읽기 권한을 제한해도 파일 정보(크기, 수정 날짜 등)를 볼 수 있는 버그가 있습니다. 악의적 사용자가 접근할 수 없어야 하는 파일의 정보를 확인할 수 있게 됩니다.

🇺🇸 원문 (English)

A vulnerability has been identified in Node.js, affecting users of the experimental permission model when the --allow-fs-read flag is used. This flaw arises from an inadequate permission model that fails to restrict file stats through the fs.lstat API. As a result, malicious actors can retrieve stats from files that they do not have explicit read access to. This vulnerability affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

📍 영향받는 시스템

Node.js 20.x, 21.x (experimental permission model 사용 시)

⚔️ 공격 벡터

--allow-fs-read 플래그로 제한된 권한을 우회하여 fs.lstat로 미승인 파일의 통계 정보 접근

🛡️ 대응 방법

Node.js를 최신 패치 버전으로 업그레이드하거나 실험적 권한 모델 사용 중지

🔧 검증 코드

v20 또는 v21로 시작하는 버전이 표시되면 취약점 영향 가능성이 있으며 더 높은 버전으로 업그레이드 필요

Shell / Script
node --version | grep -E 'v(20|21)\.'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Node.js