피드로 돌아가기
Node.js 0.10.44 (Maintenance)
Node.js BlogNode.js Blog
Security

Node.js 0.10.44가 npm 인증 토큰 유출 취약점을 해결하기 위해 npm을 v2.15.1로 업그레이드하고 27개의 약한 SSL 암호화 제품군을 비활성화

Node.js 0.10.44 (Maintenance)

2016년 4월 1일5intermediate

Context

npm CLI가 인증 토큰을 모든 HTTP 요청에 포함시켜 공격자가 임의의 서버에서 사용자 토큰을 수집할 수 있는 보안 취약점이 존재했습니다. OpenSSL의 EXPORT 및 LOW 암호화 제품군이 구식이고 안전하지 않아 무효화할 필요가 있었습니다.

Technical Solution

  • npm v2.15.1로 업그레이드: 인증 토큰을 npm 레지스트리 또는 현재 설치에 사용되는 레지스트리에 대한 요청에만 포함시키도록 변경
  • OPENSSL_NO_WEAK_SSL_CIPHERS 플래그 활성화: SSLv3 이상에서 사용 가능한 27개의 약한 암호 제품군을 완전히 비활성화
  • npm v1에서 npm v2 LTS로 마이그레이션: 이전에 deprecated된 npm v1을 npm v2 LTS 버전으로 교체

Key Takeaway

보안 릴리스에서는 종속 패키지의 버전 문제(버전 문자열 오류로 npm -v가 2.15.0으로 표시되는 현상)도 함께 문서화하여 사용자가 실제 보안 수정 사항이 적용되었음을 확인할 수 있도록 투명성을 제공해야 합니다.


Node.js

0.

1

0.x를 운영 중인 팀은 npm의 인증 토큰이 제한된 목적지에만 전송되도록 v

2.

1

5.1로 즉시 업그레이드하고, 클라이언트 인증서나 토큰 기반 인증을 사용하는 시스템에서 약한 SSL 암호 제품군(EXPORT, LOW)을 무효화하여 중간자 공격 위험을 제거할 수 있습니다.

원문 읽기