CVE-2019-15596: statics-server path traversal via symlinks

CVE-2019-15596 · Severity: info · Published 2020-03-31

statics-server is a Node.js module used to serve static files from a specified directory. The module fails to properly restrict access to files outside its configured directory when symbolic links are used, potentially allowing unauthorized file access. An attacker can exploit this to read sensitive files on the server's filesystem beyond what should be publicly accessible.

Technologies: statics-server (npm). Vendors: npm.

Quick answers

Is CVE-2019-15596 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2019-15596 being exploited in the wild.
How severe is CVE-2019-15596?
Informational severity, published 31 March 2020.
Which products and versions are affected?
statics-server (npm) SEMVER:introduced=0,last_affected=0.0.9.
Is there a fix for CVE-2019-15596?
No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
How is CVE-2019-15596 attacked?
It is attacked over the network.
Am I affected by CVE-2019-15596?
Check whether you run statics-server (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

The vulnerability is a path traversal / symlink attack (CWE-22) in statics-server that affects all versions up to and including 0.0.9. The module does not properly validate or restrict access through symbolic links, allowing an attacker to traverse outside the intended served directory. The attack vector is network-accessible via HTTP requests containing symlink references. No authentication is required—any unauthenticated user can attempt to exploit this. A remote attacker can read arbitrary files from the filesystem that the Node.js process has permission to access. No fix is currently available according to the advisory; affected users are recommended to discontinue use or switch to an alternative module.

Affected products

  • statics-server 0.0.9 and earlier

Identifiers

  • CVE-2019-15596
  • GHSA-j27j-4w6m-8fc4

Timeline

  • 2020-03-31: disclosed
  • other: CVE-2019-15596 assigned

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.