CVE-2025-27210

7.5 HIGH

📋 TL;DR

This vulnerability is an incomplete fix for CVE-2025-23084 in Node.js that allows path traversal attacks when using Windows device names like CON, PRN, and AUX in the path.join API. It affects Windows users of Node.js applications that process user-controlled file paths. Attackers could potentially bypass security controls to access or manipulate files.

💻 Affected Systems

Products:
  • Node.js
Versions: All versions prior to the July 2025 security releases
Operating Systems: Windows
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects Windows systems due to Windows-specific device name handling. Linux/macOS systems are not vulnerable.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Arbitrary file read/write leading to sensitive data exposure, file deletion, or remote code execution if combined with other vulnerabilities.

🟠

Likely Case

Path traversal allowing unauthorized file access or manipulation of application files.

🟢

If Mitigated

Limited impact if proper input validation and file system permissions are implemented.

🌐 Internet-Facing: MEDIUM - Exploitable if application accepts user input for file operations, but requires specific Windows environment.
🏢 Internal Only: MEDIUM - Internal applications processing user-controlled paths on Windows servers remain vulnerable.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires user-controlled input to path.join API on Windows. No public exploit code identified yet.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Node.js versions from July 2025 security releases

Vendor Advisory: https://nodejs.org/en/blog/vulnerability/july-2025-security-releases

Restart Required: Yes

Instructions:

1. Check current Node.js version with 'node --version'. 2. Update to latest patched version using Node.js installer or package manager. 3. Restart all Node.js applications and services.

🔧 Temporary Workarounds

Input validation for file paths

windows

Implement strict validation to reject Windows device names in user-controlled path inputs

Use path.resolve instead of path.join

all

Replace vulnerable path.join calls with path.resolve where appropriate

🧯 If You Can't Patch

  • Implement strict input validation to reject Windows device names (CON, PRN, AUX, etc.) in all file path inputs
  • Run Node.js applications with minimal file system permissions and in sandboxed environments

🔍 How to Verify

Check if Vulnerable:

Check if Node.js version is older than July 2025 security releases and application uses path.join with user input on Windows

Check Version:

node --version

Verify Fix Applied:

Verify Node.js version is from July 2025 or later security releases and test path.join with Windows device names returns expected errors

📡 Detection & Monitoring

Log Indicators:

  • Failed file operations with Windows device names
  • Unexpected path traversal attempts

Network Indicators:

  • Unusual file access patterns from web applications

SIEM Query:

Search for file access errors containing CON, PRN, AUX, or other Windows device names in application logs

🔗 References

📤 Share & Export