주요 내용
- Node.js의 취약점은 런타임, npm 종속성(전달 종속성 포함), 그리고 잘못 구성된 HTTP, TLS 또는 파일 시스템 API라는 세 가지 경로를 통해 발생합니다.
- 경로 탐색, 프로토타입 오염, ReDoS 및 HTTP/2 DoS 취약점은 2026년 운영 환경에서 실질적인 피해를 입히는 취약점 유형입니다.
- 최근 보안 업데이트를 통해 현재 사용 중인 모든 릴리스 버전의 심각한 보안 취약점이 수정되었으나, Node.js 20.x 이하 버전에 대한 수정 사항은 지원 종료(EOL) 상태이므로 더 이상 업스트림 수정 사항을 제공받지 못합니다.
- 탐지를 위해서는 npm audit, SCA 스캐너, 런타임 버전 확인을 단계적으로 적용해야 하며, 단일 도구만으로는 모든 문제를 포착할 수 없습니다.
대부분의 Node.js 보안 침해 사고는 제로데이 취약점으로 시작되지 않습니다. 14개월 동안 아무도 손대지 않은 package.json 파일에서 비롯되며, 이 파일은 이미 조용히 지원이 종료된 LTS 버전에서 실행되고 있는 경우가 많습니다. Node.js의 취약점은 유난히 간과하기 쉽습니다. 그러다 자신이 가지고 있는지도 몰랐던 전이적 종속성에 CVE가 등록되는 순간, 보안 스캐너가 경고음을 울리기 시작하고, 정작 어떤 부분이 노출되었는지 즉시 파악하기 어려워집니다.
이 글에서는 2026년에 실제로 발생할 수 있는 위험 요소들을 다룹니다. 최근 보안 업데이트를 통해 어떤 문제가 해결되었는지, 어떤 유형의 취약점이 여전히 현장에서 발견되고 있는지, 자체 시스템에서 이러한 취약점을 어떻게 찾아낼 수 있는지, 그리고 감사 압박 속에서도 견고하게 유지되는 패치 관리 관행에 대해 살펴봅니다.
Node.js 애플리케이션이 왜 자주 표적이 되는가
Node.js는 공격자들이 특히 노리는 세 가지 요소가 교차하는 지점에 위치해 있습니다. 바로 방대한 공개 패키지 생태계, CPU 과다 사용을 엄격히 제한하는 단일 스레드 자바스크립트 이벤트 루프, 그리고 HTTP 서버와 API를 통해 인터넷에 직접 노출되는 경우가 잦은 런타임 환경입니다. 이러한 조합은 광범위한 공격 표면을 형성할 뿐만 아니라, 패치가 적용되지 않은 배포 환경이 매우 오랫동안 방치되는 결과를 초래합니다.
좀 더 구체적으로 말하자면:
- npm은 세계 최대 규모의 패키지 레지스트리이며 –이자 악성 패키지가 가장 활발하게 노리는 대상이기도 합니다. Sonatype은 2026년 1분기에만 136,107건의 오픈소스 악성코드 공격을 차단했으며, 해당 분기에 탐지된 모든 신규 악성 패키지 중 75%가 npm에서 발생했습니다.
- 단일 스레드 실행 이는 느린 정규 표현식 하나나 CPU에 의존적인 요청 하나만으로도 전체 프로세스가 중단될 수 있음을 의미합니다. 해당 작업이 완료될 때까지 다른 요청은 처리되지 않습니다.
- 수명이 긴 프로덕션 배포 환경 종종 EOL(지원 종료) Node 버전에서 실행되는데, 이는 업그레이드를 하려면 모든 종속성에 대한 호환성 문제를 테스트해야 하기 때문이며, 팀들은 이를 무기한 미루기 때문입니다.
- Express, Next.js, NestJS와 같은 프레임워크는 는 수많은 웹 API의 대외 노출 계층이므로, HTTP 파싱, 헤더 또는 라우팅에 결함이 있을 경우 인터넷을 통해 직접 접근할 수 있습니다.
- 전달적 종속성 깊이 – 일반적인 Node.js 애플리케이션은 수백 개의 패키지를 불러오지만, 대부분의 팀은 직접 선언한 패키지만 검토합니다. 그 아래에 있는 모든 것은 신뢰에 기반하여 실행됩니다.
가장 흔한 Node.js 취약점
다음은 CVE 보고서, 스캐너 출력 결과 및 사고 후 검토 과정에서 가장 빈번하게 나타나는 범주들입니다. 각 범주마다 해결 방식이 다르기 때문에, 이를 한눈에 파악해 두면 CVE가 등록되었을 때 대응 시간을 단축할 수 있습니다.
프로토타입 오염
프로토타입 오염을 통해 공격자는 속성을 주입할 수 있습니다 Object.prototype그러면 이 속성이 런타임 환경의 모든 객체에 나타나게 됩니다. 이는 대개 JSON 입력에 대한 검증되지 않은 병합 또는 복제 작업을 통해 은밀히 유입되는데, 방금 설정한 속성이 전혀 관련 없는 코드에서도 읽힐 수 있다는 사실을 깨닫기 전까지는 별 문제 없어 보이는 경우가 많습니다. lodash, minimist, 그리고 여러 구성 로더들이 이에 대한 CVE를 모두 보고했습니다. 이 문제의 영향은 오염된 속성을 처리하는 후속 코드의 종류에 따라 인증 우회부터 임의 코드 실행에 이르기까지 다양합니다.
파일 및 HTTP API에서의 경로 탐색
Node.js에서 계속해서 새로운 예외적인 경우가 발견되기 때문에 경로 탐색 문제가 이 목록에 계속 등장하고 있습니다. 27210 는 에서 발생한 Windows 전용 버그에 대한 불완전한 수정 사항이었으며 path.normalize() 그리고 path.join() CON, PRN, AUX와 같은 장치 이름이 관련된 문제인데, 이는 Windows에서만 나타나는 유형이며 거의 아무도 테스트하지 않는 부분입니다. 2026년 1월에 수정된 CVE-2025-55130은 이와 관련된 문제입니다. 특수하게 조작된 심볼릭 링크 체인을 통해 권한 모델의 –allow-fs-read 및 –allow-fs-write 제한을 우회할 수 있습니다. 사용자가 지정한 파일 경로를 받아들이는 모든 코드가 이 문제의 영향을 받습니다.
정규 표현식 서비스 거부(ReDoS)
ReDoS는 거의 Node.js의 대표적인 취약점이라 할 수 있습니다. 단일 스레드 이벤트 루프 구조 때문에, 처리 속도가 느린 정규 표현식은 단순히 하나의 요청만 지연시키는 데 그치지 않고, 정규 표현식 처리가 완료될 때까지 모든 작업을 중단시킵니다. 원격 공격자가 적절한 백트래킹 패턴을 포함하는, 대개 수백 자 정도의 조작된 입력 문자열을 전송하면 CPU 사용률을 100%로 고정시켜 다른 모든 요청의 처리를 차단할 수 있습니다.
cross-spawn의 CVE-2024-21538은 이 취약점의 파급 효과가 얼마나 광범위한지를 보여주는 좋은 사례입니다. cross-spawn은 jest, eslint, webpack, create-react-app 및 수천 가지 다른 도구의 전이적 종속성입니다. 대부분의 Node.js 프로젝트는 이를 인지하지 못한 채 여러 계층에 걸쳐 이 라이브러리를 사용하고 있습니다. 이러한 패키지의 단 하나의 취약점만으로도 수백만 개의 프로젝트가 동시에 영향을 받게 됩니다.
npm을 통한 공급망 공격
npm 레지스트리에 올라온 악성 패키지(직접 게시된 것이든, 해킹당한 관리자 계정을 통해 삽입된 것이든)는 점점 더 심각한 문제가 되고 있습니다. 타이포스쿼팅(누군가 ‘e’를 놓칠 것을 기대하며 lodesh를 게시하는 행위)은 수년 전부터 존재해 왔지만, 더욱 정교해진 공격들은 합법적이고 널리 사용되는 패키지를 직접 해킹합니다. 일단 악성 버전이 레지스트리에 등록되면, 고정된 버전 대신 버전 범위(^ 또는 ~)를 사용하는 모든 프로젝트는 다음 설치 시 해당 버전을 가져오게 됩니다.
HTTP/2 및 TLS 서비스 거부 공격
Node.js의 HTTP/2 구현은 지속적으로 서비스 거부(DoS) 취약점의 원인이 되어 왔습니다. CVE-2025-59465는 가장 최근에 발견된 HTTP/2 서버 문제입니다. 형식이 잘못된 HTTP/2 HEADERS 프레임이 인증 절차 없이도 서비스 거부(DoS)로 인한 시스템 충돌을 유발합니다. CVE-2025-59464는 클라이언트 인증서 처리 중 TLS 오류 처리 과정에서 발생하는 메모리 누수 문제로, 프로세스의 메모리가 고갈될 때까지 누수가 누적됩니다. 두 취약점 모두 정교한 공격 기법이 필요하지 않으며, 단순히 열린 포트에 적절한 바이트를 전송하기만 하면 됩니다.
2026년 보안 업데이트를 통해 수정된 Node.js 취약점
Node.js는 2026년 1월 13일과 3월 24일, 두 차례에 걸쳐 중요한 보안 업데이트를 배포했으며, 이 두 업데이트 모두 현재 사용 중인 모든 릴리스 버전에 영향을 미쳤습니다. 특히 3월 펌웨어 릴리스는 의미심장합니다. 이 릴리스에 포함된 고위험 수정 사항 중 하나는 1월 펌웨어의 불완전한 패치였으며, 이는 TLS 취약점이 처음에 완전히 해결되지 않았음을 의미합니다. 복잡한 런타임 환경에서는 드문 일이 아니지만, 이는 단순히 최신 메이저 릴리스뿐만 아니라 최신 포인트 릴리스를 유지하는 것이 왜 중요한지를 여실히 보여줍니다.
2026년 1월 13일 보안 업데이트:
|
CVE |
위험도 |
영향을 받은 |
기능 |
|
21636 |
Medium |
v25 (권한 모델) |
UDS 연결은 –allow-net 검사를 우회하여, 특권 로컬 서비스에 대한 액세스를 허용합니다 |
|
21637 |
Medium |
20.x, 22.x, 24.x, 25.x |
TLS PSK/ALPN 콜백에서 처리되지 않은 예외가 발생하여 서버가 중단되고 파일 디스크립터가 누수됩니다. |
|
55130 |
높음 |
모든 활성화된 회선 |
정교하게 구성된 심볼릭 링크 체인은 권한 모델의 –allow-fs-read / –allow-fs-write 제한을 우회합니다 |
|
55131 |
높음 |
모든 활성화된 회선 |
경합 상태로 인해 Buffer.alloc이 0으로 채워지지 않아 잔여 메모리가 노출됩니다 |
|
59465 |
높음 |
모든 활성화된 회선 |
잘못된 형식의 HTTP/2 헤더 프레임으로 인해 서버가 다운됨 – 인증 불필요 |
|
59464 |
Medium |
모든 활성화된 회선 |
TLS 클라이언트 인증서 처리 과정의 메모리 누수로 인해 시간이 지남에 따라 원격 서비스 거부(DoS) 공격이 발생합니다 |
패치된 버전: 20.20.0, 22.22.0, 24.13.0, 25.3.0.
2026년 3월 24일 보안 업데이트
|
CVE |
위험도 |
영향을 받은 |
기능 |
|
21637 |
높음 |
20.x, 22.x, 24.x, 25.x |
1월의 수정 사항이 불완전함 – SNICallback 예외가 여전히 TLS 오류 처리기를 우회하여 프로세스를 중단시킴 |
|
21710 |
높음 |
20.x, 22.x, 24.x, 25.x |
__proto__라는 헤더 이름을 포함한 HTTP 요청으로 인해 처리되지 않은 TypeError 오류가 발생하여 시스템이 중단됩니다 – 인증은 필요하지 않습니다 |
|
21713 |
Medium |
20.x, 22.x, 24.x, 25.x |
비정수 시간 HMAC 비교 시 타이밍 데이터가 유출되며, 특정 조건 하에서 MAC 위조가 발생할 수 있음 |
|
21714 |
Medium |
20.x, 22.x, 24.x, 25.x |
스트림 0의 HTTP/2 WINDOW_UPDATE 프레임이 메모리 누수를 일으켜 리소스 고갈을 초래합니다 |
|
21717 |
Medium |
20.x, 22.x, 24.x, 25.x |
V8에서 정수형 문자열은 예측 가능한 방식으로 해시됩니다. 특수하게 조작된 JSON.parse 입력은 성능을 크게 저하시킬 수 있습니다. |
|
21711 |
Medium |
v25 (권한 모델) |
UDS 서버의 바인드/리스닝은 –allow-net 옵션 없이도 작동하며, 로컬 IPC 엔드포인트를 노출합니다 |
|
21712 |
Medium |
24.x, 25.x |
url.format()에서 형식이 잘못된 IDN이 발생하면 어설션 오류가 발생하고 프로세스가 중단됩니다 |
패치된 버전: 20.20.2, 22.22.2, 24.14.1, 25.8.2.
참고: Node.js 20.x 이하 버전은 이제 지원 종료(EOL)되었습니다. 18.x는 2025년 4월부터, 20.x는 2026년 4월 30일부터 지원이 종료되며, 더 이상 업스트림 패치가 제공되지 않습니다. v24.16.0 현재 활성화된 LTS 버전은 24.x(최신 버전: v24.16.0)입니다.
Node.js 취약점을 탐지하는 방법
어떤 도구 하나만으로는 모든 것을 잡아낼 수 없습니다. 사실 도구들 사이의 사각지대가 바로 취약점이 가장 오랫동안 숨어 있는 곳입니다. 예를 들어, 아직 보안 권고 데이터베이스에 등록되지 않아 npm audit에서는 탐지되지 않는 취약점이나, SCA 스캐너에서는 발견되지만 런타임 버전 확인에서는 놓치는 취약점 등이 이에 해당합니다. 아래 단계들은 최소한의 기준입니다.
npm audit 명령어를 실행하세요 – 하지만 거기서 멈추지 마세요
npm audit는 무료로 제공되며 기본적으로 내장되어 있어, 자문 데이터베이스에 등록된 알려진 CVE(Common Vulnerabilities and Exposures) 항목과 비교하여 npm 패키지를 검사합니다. 그렇긴 하지만, 여전히 가장 빠른 1차 검사 도구입니다:
npm audit--audit-level=high
npm audit fix
Node.js 런타임 자체의 취약점, 공개되지 않은 내부 패키지의 취약점, 그리고 GitHub Advisory 피드에 아직 보고되지 않은 모든 취약점은 탐지하지 못할 수 있습니다. 이를 ‘최소 기준’으로 생각하십시오. ‘최대 범위’가 아닙니다.
SCA 스캐너 추가
Snyk, Trivy, GitHub Dependabot과 같은 소프트웨어 구성 분석(SCA) 도구는 npm audit가 놓치는 부분, 즉 전이적 종속성, 라이선스 문제, 런타임 CVE, 컨테이너 베이스 이미지를 보완합니다. 2024년 Snyk 오픈소스 보안 현황 보고서에 따르면, 팀의 25%는 직접적인 종속성만 추적하고 있으며, 거의 5%는 아예 추적하지 않는 것으로 나타났습니다. 바로 이 때문에 전이적 취약점이 수개월 동안 패치되지 않은 채 방치되는 것입니다. 같은 보고서에 따르면, 공급망 보안 교육에 투자하는 조직의 비율은 2023년 53%에서 2024년 35%로 감소한 반면, 취약한 패키지를 패치하거나 교체해야 하는 팀의 비율은 40% 이상으로 여전히 정체된 상태입니다. 문제는 줄어들지 않고 있는데도 팀들은 선제적으로 대응하기 위한 노력을 줄이고 있습니다.
Node.js 런타임 버전 확인하기
실행 node -v Node.js 릴리스 일정 및 최신 CVE 공지를 기준으로 합니다. 2026년 5월 현재, 최신 LTS 버전은 24.x이며 22.x는 여전히 유지보수 중인 LTS입니다. 22.x보다 낮은 버전을 사용한다면, 의존성 트리가 아무리 깔끔해 보여도 취약점이 있는 런타임을 배포하는 셈입니다. 이 검사는 종종 생략되는데, 이는 런타임을 개발자의 책임인 애플리케이션 코드가 아니라 플랫폼 팀이 관리하는 인프라로 여기기 때문입니다. 실제로는 두 가지 모두에 해당합니다.
SBOM 생성 및 모니터링
A 소프트웨어 부품 명세서 소스 코드를 다시 컴파일하지 않고도 나중에 다시 확인할 수 있는 형식으로 전체 전이적 종속성 그래프를 제공합니다. 다음 명령어로 생성할 수 있습니다. cyclonedx-npm 또는 syft, 이를 저장해 두고 매주 업데이트된 CVE 피드와 대조하여 분석합니다. SBOM은 제품 출시 후 공개된 취약점을 파악하는 수단입니다. SBOM이 없다면, 이를 확인하기 위해 소스 코드부터 다시 빌드해야만 합니다.
Node.js 보안 메일링 리스트를 확인해 보세요
nodejs-sec 메일링 리스트를 구독하세요. 이 메일링 리스트는 Node.js 프로젝트와 Node.js 팀이 관리하는 GitHub 조직 전반의 모든 보안 관련 릴리스 소식을 다룹니다. 사전 릴리스 권고안은 일반적으로 패치가 배포되기 3~7일 전에 게시되므로, 유지보수 시간을 계획하고 당직 팀에 상황을 전달하기에 충분한 여유를 제공합니다. 대부분의 엔지니어는 스캐너를 통해 Node.js CVE 정보를 확인하는데, 이는 이미 권고안 피드보다 하루나 이틀 정도 늦은 정보입니다.
Node.js 취약점을 완화하기 위한 모범 사례
패치 자동화
수동 패치 프로세스는 확장성이 떨어집니다. 사람이 수정 사항을 검토하고 테스트한 뒤 배포할 때쯤이면, 해당 CVE는 이미 충분히 오래 공개된 상태라 악의적인 스캔을 통해 발견되기 일쑤입니다. Snyk의 2024년 보고서에 따르면, 팀의 74%가 고위험 취약점에 대해 1주일 이내의 SLA 목표를 설정하고 있음에도 불구하고, 52%는 여전히 이 기한을 정기적으로 지키지 못하고 있습니다. 이 격차는 노력의 문제가 아니라, 패치해야 할 항목의 방대한 양 때문입니다.
바로 자동화가 그 격차를 해소해 줍니다. CI 단계에서의 자동화된 종속성 업데이트, 인프라 계층에서의 자동화된 런타임 패치 적용, 그리고 스캐너에서 발생하는 불필요한 알림으로 모든 사람을 혼란스럽게 하는 대신, 적절한 CVE 정보를 관련 담당자에게 정확히 전달하는 자동화된 알림 시스템이 바로 그것입니다.
의존성을 고정하고 고정 핀을 설정하세요
사용 package-lock.json (또는 pnpm-lock.yaml 또는 yarn.lock)를 추가하고 커밋합니다. 그런 다음 한 단계 더 나아가: 직접 종속성을 package.json, 범위가 아니라. ^ 그리고 ~ 연산자는 타동형 패키지의 “수정 사항”이 사용자가 아무런 조치를 취하지 않아도 런타임 동작을 조용히 변경하는 방식입니다. CI에서 실행 npm ci 대신 npm install – 락파일과 매니페스트 사이에 차이가 발생하면 빌드가 실패하므로, 제품이 출시되기 전에 문제를 파악할 수 있습니다.
최신 LTS 릴리스 계속 사용하기
Node.js 프로젝트는 예측 가능한 LTS 일정을 따릅니다. 짝수 버전은 LTS가 되고, 홀수 버전은 LTS가 되지 않습니다. Node.js 20.x는 2026년 4월 30일에 지원 종료되었으며, 현재 활성화된 LTS는 24.x입니다. Node.js 18.x는 2025년 4월에, 16.x는 2023년 9월에 지원이 종료되었습니다. 만약 이 중 하나를 사용하고 있다면, 업스트림에서 수정 조치가 이루어지지 않은 채 CVE가 누적되고 있는 것입니다.
16.x, 18.x 또는 20.x 버전에서 22.x나 24.x 버전으로의 업그레이드 과정은 대체로 무난하지만, 모든 종속성을 테스트해야 합니다. 실제로 업그레이드를 가로막는 장애물은 대개 최신 Node API를 따라가지 못한 한두 개의 패키지인데, 지원 종료(EOL)된 런타임을 무기한으로 계속 사용하는 것보다는 이를 파악하여 해결하는 편이 낫습니다.
경계에서 모든 입력 검증
프로토타입 오염, 경로 탐색, ReDoS, 명령어 주입 – 이 모든 것은 근본적으로 입력 검증 실패에서 비롯됩니다. 모든 HTTP 경계에 zod, joi, ajv와 같은 스키마 검증기를 배치하면, 이러한 문제 대부분이 애플리케이션 로직에 도달하기 전에 차단됩니다. 사용자 입력을 객체에 병합하지 마십시오. 사용자 입력을 exec, eval, Function 또는 제한 없는 정규 표현식 패턴에 전달하지 마십시오. 이 작업들은 화려하지는 않지만, 바로 여기에 실제 위험이 도사리고 있습니다.
최소 권한 원칙에 따라 실행
적절한 경우 Node.js 권한 모델을 사용하십시오(단, 이 모델은 아직 실험 단계이며 문서화된 한계가 있다는 점을 유념해야 합니다). 컨테이너는 비루트(non-root) 권한으로 실행하십시오. 가능한 경우 읽기 전용 파일 시스템을 사용하고, 필요 없는 권한은 제거하며, 이 권한 모델을 완전한 샌드박스라기보다는 여러 보안 계층 중 하나로 간주하십시오.
노드.js의 지원 종료(EOL) 버전을 사용 중이신가요? TuxCare가 확장된 보안 지원을 제공합니다
모든 조직이 공급업체의 일정에 맞춰 버전을 업그레이드할 수 있는 것은 아닙니다. Node.js 16.x는 2023년 9월에 지원 종료(EOL)되었으며, Node.js 18.x도 2025년 4월에 지원이 종료되었습니다. 특정 의존성 체인, 규정 준수 요구 사항, 또는 진행 중인 마이그레이션 등으로 인해 여전히 이러한 버전을 사용 중인 팀의 경우, 실질적인 문제가 명확합니다. 바로 CVE(보안 취약점)가 계속 누적되고 있는데도 업스트림 패치가 제공되지 않는다는 점입니다.
TuxCare의 Node.js용 ‘무한 라이프사이클 지원(ELS)’은 이러한 문제를 직접 해결합니다. TuxCare는 Node.js 12, 14, 16, 18 및 20용 보안 패치를 역포트하여, 출시될 기미가 보이지 않는 업스트림 릴리스를 기다릴 필요 없이 고객이 필요로 하는 기간 동안 시스템에 지속적으로 제공합니다. 이는 특히 다음과 같은 경우에 유용합니다:
- 지원되는 LTS 버전으로 전환하는 도중에 대체 방안이 필요한 팀
- EOL 런타임을 자동 감사 결과로 간주하는 규정 준수 요건(PCI DSS, SOC 2, FedRAMP)을 갖춘 조직
- Node.js 업그레이드를 위해 수십 개의 서비스에 걸친 협동 테스트가 필요한 대규모 환경을 관리하는 인프라 팀
ELS 패치는 보안 취약점(CVE) 중 중요한 사항, 즉 보안 스캐너나 규정 준수 보고서에 나타나는 문제들을 해결해 주며, 이 과정에서 사용자의 마이그레이션 계획보다 더 빠른 대응을 요구하지 않습니다.
TuxCare로 Node.js 취약점 위험 줄이기
Node.js의 취약점 문제는 당분간 줄어들 기미가 보이지 않습니다. npm은 규모가 너무 방대하고, 런타임은 너무 널리 배포되어 있으며, CVE가 공개된 시점과 대부분의 팀이 실제로 패치를 적용하는 시점 사이의 간격은 여전히 우려스러울 정도로 큽니다. 이를 잘 관리하는 팀들은 특별한 일을 하는 것이 아닙니다. 지루한 작업을 자동화하고, 적절한 피드를 모니터링하며, 의존성 트리에 무엇이 포함되어 있는지 파악하고, 릴리스 라인이 EOL(지원 종료)에 도달했을 때를 대비한 계획을 갖추고 있을 뿐입니다.
탐지와 완화 조치는 모두 필수적입니다. 탐지는 문제가 발생한 부분을 알려주며, 완화 조치는 실제 대응이 이루어지는 단계입니다. 이 두 가지 중에서 가장 큰 영향력을 미치는 요소는 대개 패치 적용까지 걸리는 시간입니다. 취약점 공개와 패치 배포 사이의 시간을 단축하는 것이야말로, 단순히 스캐너 검사 결과만 깨끗하게 만드는 것이 아니라 실제 환경에서의 위험 노출을 줄이는 방법입니다.
Node.js 지원 종료( EOL ) 버전에 대한 패치 전략이나 연장 지원에 관한 문의 사항이 있으시면 TuxCare 보안 전문가에게 문의해 주십시오.




