피드로 돌아가기
Node.js 8.11.4 (LTS)
Node.js BlogNode.js Blog
Security

Node.js 8.11.4 LTS가 Buffer.write() UCS-2 인코딩 OOB 쓰기 취약점과 OpenSSL 1.0.2p 업그레이드로 3개 보안 결함 해결

Node.js 8.11.4 (LTS)

2018년 8월 16일3intermediate

Context

Node.js 8.11.4 LTS 버전에서 여러 보안 취약점이 발견되어 긴급 보안 릴리스가 필요했다. Buffer.write() 함수의 UCS-2 인코딩 처리 중 범위 외 쓰기(OOB write) 문제와 OpenSSL 라이브러리의 암호화 관련 취약점이 존재했다.

Technical Solution

  • Buffer.write() UCS-2 인코딩 OOB 쓰기 취약점 패치: CVE-2018-12115로 등록된 메모리 쓰기 범위 초과 문제 수정
  • OpenSSL 1.0.2p로 업그레이드: 대용량 DH 파라미터로 인한 클라이언트 서비스 거부(DoS) 취약점 CVE-2018-0732 해결
  • ECDSA 키 추출 로컬 사이드채널 공격 방지: OpenSSL 1.0.2p 업그레이드를 통한 암호화 키 추출 경로 차단
  • 다중 플랫폼 바이너리 배포: Windows(32/64bit), macOS, Linux(x86, x64, ARM, PPC, s390x), AIX, SmartOS 등 13개 플랫폼용 설치 파일 제공
  • PGP 서명 검증 제공: 모든 릴리스 파일에 대한 SHA256 체크섬 및 PGP 서명 제공으로 배포 무결성 보장

Impact

아티클에 정량적 수치가 명시되지 않음.

Key Takeaway

LTS 버전의 보안 릴리스는 의존성 라이브러리(OpenSSL)의 취약점 추적 및 신속한 업그레이드 정책이 중요하며, 플랫폼 다양성을 지원하는 배포 전략과 암호화 서명을 통한 무결성 검증이 보안 신뢰성을 확보하는 필수 요소다.


Node.js를 프로덕션에서 운영하는 팀은 LTS 버전의 보안 릴리스 공지를 즉시 추적하고, 특히 버퍼 조작(Buffer.write 등)과 암호화 라이브러리 기능을 사용하는 코드베이스에서 업그레이드 영향도를 신속히 평가해 배포해야 한다.

원문 읽기