CVE-2019-16775

Aliases:GHSA-m6cx-g6qm-p2cx
Modified
Published: 13 Dec 2019, 00:55
Last modified:05 Aug 2024, 01:24

Vulnerability Summary

Overall Risk (default)
medium
31/100
CVSS Score
7.7 HIGH
v3.1 (cve.org)
EPSS Score
1.15% LOW
1% probability +0.43%
KEV
Not listed
Ransomware
No reports
Public exploits
None found
Dark Web
Not detected

Timeline

13 Dec 2019, 00:55
Published
Vulnerability first disclosed
05 Aug 2024, 01:24
Last Modified
Vulnerability information updated

Description

Versions of the npm CLI prior to 6.13.3 are vulnerable to an Arbitrary File Write. It is possible for packages to create symlinks to files outside of thenode_modules folder through the bin field upon installation. A properly constructed entry in the package.json bin field would allow a package publisher to create a symlink pointing to arbitrary files on a user's system when the package is installed. This behavior is still possible through install scripts. This vulnerability bypasses a user using the --ignore-scripts install option.

CVSS Metrics

  • v3.1HIGHScore: 7.7CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N
  • v3.1MEDIUMScore: 6.5CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
  • v2.0MEDIUMScore: 4AV:N/AC:L/Au:S/C:N/I:P/A:N

EPSS Trends

Current EPSS score: 1.15% Percentile: 79%

Techniques & Countermeasures

  • CWE-59Improper Link Resolution Before File Access ('Link Following')

    The product attempts to access a file based on the filename, but it does not properly prevent that filename from identifying a link or shortcut that resolves to an unintended resource.

  • CWE-61UNIX Symbolic Link (Symlink) Following

    The product, when opening a file or directory, does not sufficiently account for when the file is a symbolic link that resolves to a target outside of the intended control sphere. This could allow an attacker to cause the product to operate on unauthorized files.

Affected Systems

  • fedoraprojectfedora

    31

  • npmcli

    ≥ < 6.13.3, < 6.13.3

  • Npmnpm

    < 6.13.3

  • npmjsnpm

    < 6.13.3

  • opensuseleap

    15.1

  • oraclegraalvm

    19.3.0.2 | 20.3.3 | 21.2.2

  • redhatenterprise_linux

    8.0

  • redhatenterprise_linux_eus

    8.1

References (16)