medium CVSS 5.5

CVE-2025-23084·Node.js vulnerability

A vulnerability has been identified in Node.js, specifically affecting the handling of drive names in the Windows environment. Certain Node.js functions do not treat drive names as special on Windows. As a result, although Node.js assumes a relative path, it actually refers to the root directory. On Windows, a path that does not start with the file separator is treated as relative to the current directory. This vulnerability affects Windows users of `path.join` API.

Severity
medium
Software
Node.js
Fixed in
23.6.1
Published
2025-01-28

Affected versions

From: 23.0

Until: 23.6.1

Fixed in: 23.6.1

How to fix this CVE

Windows administrators using Node.js versions 23.0 through 23.6.0 should upgrade to Node.js 23.6.1 or later to resolve a path handling vulnerability in the path.join() API. This vulnerability can cause relative paths to unexpectedly resolve to the root directory on Windows systems, potentially exposing sensitive files. Update your Node.js installation immediately to prevent unintended file access.

sudo dnf update nodejs

Defensia detects this vulnerability

How to check if you are affected

  1. Step 1: Check your current Node.js version by running 'node --version' on the command line
  2. Step 2: Review application code for calls to path.join() with user-supplied or dynamic path arguments, particularly in file I/O operations
  3. Step 3: Search application logs for file access attempts to unexpected root-level or system directories that coincide with path.join() operations
  4. Step 4: After upgrading to version 23.6.1 or later, re-run 'node --version' to confirm the patched version is in use and restart all Node.js processes

FAQ

What is CVE-2025-23084?

CVE-2025-23084 is a Windows-specific vulnerability in Node.js where the path.join() function incorrectly processes drive names, causing relative paths to be interpreted as absolute paths pointing to the root directory instead of relative to the current working directory.

Is CVE-2025-23084 being actively exploited?

No, CVE-2025-23084 is not currently listed on the CISA Known Exploited Vulnerabilities (KEV) catalog and no public exploits are available at this time.

What versions of Node.js are affected by CVE-2025-23084?

Node.js versions 23.0 through 23.6.0 are affected on Windows systems. Version 23.6.1 and later contain the fix.

How do I check if my server is vulnerable to CVE-2025-23084?

Run 'node --version' and verify the version number. If it shows v23.0.x through v23.6.0 on a Windows system, you are vulnerable. Upgrade to v23.6.1 or later to remediate.

Does Defensia detect CVE-2025-23084?

Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Node.js is installed on a monitored server, CVE-2025-23084 will appear in your dashboard with remediation steps.

Related Node.js CVEs

CVE-2026-21636CVSS 10A flaw in Node.js's permission model allows Unix Domain Socket (UDS) connections to bypass network restrictions when `--permission` is enabled. Even without `--allow-net`, attacker-controlled inputs (such as URLs or socketPath options) can connect to arbitrary local sockets via net, tls, or undici/fetch. This breaks the intended security boundary of the permission model and enables access to privileged local services, potentially leading to privilege escalation, data exposure, or local code execution. * The issue affects users of the Node.js permission model on version v25. In the moment of this vulnerability, network permissions (`--allow-net`) are still in the experimental phase.
CVE-2025-55130CVSS 9.1A flaw in Node.js’s Permissions model allows attackers to bypass `--allow-fs-read` and `--allow-fs-write` restrictions using crafted relative symlink paths. By chaining directories and symlinks, a script granted access only to the current directory can escape the allowed path and read sensitive files. This breaks the expected isolation guarantees and enables arbitrary file read/write, leading to potential system compromise. This vulnerability affects users of the permission model on Node.js v20, v22, v24, and v25.
CVE-2026-58042CVSS 9A flaw in Node.js can cause dns.resolveAny() Aborts the Node.js Process When a DNS Response Contains More Than 256 A Records. Repeated triggering of this condition can lead to denial of service. This vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.
CVE-2026-56848CVSS 9A flaw in Node.js HTTP/2 handling allows `nghttp2_session_mem_send()` to be called re-entrantly while `nghttp2_session_mem_recv()` is executing, resulting in a heap-use-after-free. This vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.
CVE-2026-56846CVSS 9A flaw in Node.js HTTP/2 handling can cause HTTP/2 retained header blocks evade maxSessionMemory and enable remote memory exhaustion. This vulnerability affects Node.js **24.x** and **22.x**.

References

Track CVEs across your fleet automatically

Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2025-23084. Free for 1 server.

Get started free