피드로 돌아가기
Path validation vulnerability, September 2017
Node.js BlogNode.js Blog
Security

Node.js 8.5.0의 경로 검증 변경으로 인한 파일 시스템 접근 제어 우회 취약점 발견 및 부분 되돌림으로 해결

Path validation vulnerability, September 2017

2017년 9월 29일3beginner

Context

Node.js 8.5.0에 포함된 경로 검증 로직 변경이 커뮤니티 모듈들의 파일 시스템 경로 검사를 우회할 수 있는 보안 취약점을 야기했다. 의도하지 않은 파일 시스템 경로에 대한 공격자의 접근 가능성이 증가했다.

Technical Solution

  • 경로 검증 취약점 원인: https://github.com/nodejs/node/commit/b98e8d995efb426bbdee56ce503017bdcbbc6332 커밋의 변경 사항이 파일 시스템 접근 제어를 약화시킴
  • 취약점 해결 방식: 해당 커밋을 부분적으로 되돌리는 방식으로 경로 검증 로직 복구
  • 영향 범위: Node.js 8.5.0에서만 취약 (4.x, 6.x 버전은 미영향)
  • 식별자: CVE-2017-14849 할당

Key Takeaway

경로 검증과 같은 보안 관련 코드 변경 시 예상치 못한 부작용이 생길 수 있으므로, 코어 보안 기능 수정 후에는 신뢰할 수 있는 버전으로의 부분 되돌림 전략이 빠른 대응 방법이 될 수 있다.


Node.js 기반 서비스를 운영하는 팀에서는 공식 nodejs-sec 메일링 리스트를 구독하여 보안 공지를 실시간으로 추적하고, 경로 기반 접근 제어가 필요한 커뮤니티 모듈 사용 시 해당 모듈의 기반 Node.js 버전을 주기적으로 검증하면 취약점 노출을 사전에 방지할 수 있다.

원문 읽기