피드로 돌아가기
Node.js 20.5.1 (Current)
Node.js BlogNode.js Blog
Security

Node.js 20.5.1이 정책 모델을 우회하는 7개 CVE를 수정해 권한 기반 실행 환경의 보안 강화

Node.js 20.5.1 (Current)

2023년 8월 9일3intermediate

Context

Node.js의 정책 모델(Permission Model)이 Module._load, process.binding(), 경로 순회 공격 등 다양한 벡터를 통해 우회될 수 있었다. fs.mkdtemp(), fs.statfs() 등 파일시스템 API도 권한 검증을 우회 가능했다.

Technical Solution

  • CVE-2023-32002: Module._load를 통한 정책 우회 수정 (High 심각도)
  • CVE-2023-32558: process.binding()의 경로 순회를 통한 권한 모델 우회 수정 (High 심각도)
  • CVE-2023-32004: Buffer에서 경로 순회 시퀀스로 권한 모델 우회 수정 (High 심각도)
  • CVE-2023-32006: module.constructor.createRequire를 통한 정책 우회 수정 (Medium 심각도)
  • CVE-2023-32559: process.binding을 통한 정책 우회 수정 (Medium 심각도)
  • CVE-2023-32005: fs.statfs의 권한 모델 우회 수정 (Low 심각도)
  • CVE-2023-32003: fs.mkdtemp()/fs.mkdtempSync()의 권한 모델 우회 수정 (Low 심각도)
  • OpenSSL 보안 업데이트 적용

Key Takeaway

정책 기반 실행 환경에서는 단일 API가 아닌 모듈 로딩, 프로세스 바인딩, 파일시스템 전반에 걸친 체계적 권한 검증이 필수적이며, 경로 순회 공격 벡터는 Buffer 및 문자열 입력까지 포괄적으로 차단해야 한다.


Node.js 기반 멀티테넌트 또는 권한 격리가 필요한 환경(예: 샌드박스 실행)을 운영 중이라면,

2

0.

5.1 이상으로 즉시 업그레이드하여 Module._load, process.binding(), 경로 순회 벡터의 정책 우회를 차단해야 한다.

원문 읽기