Vulnerability record · CVE-2017-14849 · published 28 September 2017
CVE-2017-14849: Node.js path traversal via incompatible '..' handling in community modules
Nodejs · Node.Js
Node.js 8.5.0 before 8.6.0 changed how '..' is handled, which broke the pathname validation used by unspecified community modules. This lets remote attackers reach files outside the intended directory. The flaw matters because it is remotely reachable without authentication and exposes file contents.
Description
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was incompatible with the pathname validation used by unspecified community modules.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Automated analysis
high priorityRemote, unauthenticated file disclosure with high confidentiality impact and a very high EPSS score, though no known exploitation in KEV.
What it is
Node.js 8.5.0 before 8.6.0 changed how '..' is handled, which broke the pathname validation used by unspecified community modules. This lets remote attackers reach files outside the intended directory. The flaw matters because it is remotely reachable without authentication and exposes file contents.
Impact
An attacker can read unintended files that the Node.js process can access. There is no integrity or availability impact; the loss is confidentiality.
Attack surface
Reachable over the network with no authentication and no user interaction, per the CVSS vector AV:N/AC:L/PR:N/UI:N. The vulnerable path is exercised through community modules that rely on the affected pathname validation.
Exploitation
Not listed in CISA KEV and no ransomware use is documented. EPSS is high at 0.54389 (99th percentile), and references are patch and advisory entries, not exploit code.
What to do
- Upgrade Node.js to 8.6.0 or later; the vendor advisory is the patch reference.
- Audit community modules that perform their own pathname validation and update or replace those that depend on the old '..' behavior.
- Normalize and validate file paths against an allowlisted base directory before any file read.
- Run the Node.js process with least privilege so a traversal read cannot reach sensitive files.
Detection
- Monitor file access logs for reads of paths containing '..' or paths outside the application's expected directories.
- Alert on Node.js processes reading sensitive files such as /etc/passwd or application configuration outside their working tree.
- Review HTTP request logs for encoded traversal sequences (for example %2e%2e) reaching file-serving endpoints.
This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.
Affected products
1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.
References
| Link | Tags |
|---|---|
| http://www.securityfocus.com/bid/101056 | Third Party AdvisoryVDB Entry |
| https://nodejs.org/en/blog/vulnerability/september-2017-path-validation/ | PatchVendor Advisory |
| https://twitter.com/nodejs/status/913131152868876288 | PatchThird Party Advisory |
| http://www.securityfocus.com/bid/101056 | Third Party AdvisoryVDB Entry |
| https://nodejs.org/en/blog/vulnerability/september-2017-path-validation/ | PatchVendor Advisory |
| https://twitter.com/nodejs/status/913131152868876288 | PatchThird Party Advisory |
Track CVE-2017-14849 inside VULONE
Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.
Related vulnerabilities
Same products first, then exploited flaws of the same weakness class.
Source: NIST National Vulnerability Database (record CVE-2017-14849), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.