CVE-2019-16777
Vulnerability Summary
Timeline
Description
Versions of the npm CLI prior to 6.13.4 are vulnerable to an Arbitrary File Overwrite. It fails to prevent existing globally-installed binaries to be overwritten by other package installations. For example, if a package was installed globally and created a serve binary, any subsequent installs of packages that also create a serve binary would overwrite the previous serve binary. This behavior is still allowed in local installations and also through install scripts. This vulnerability bypasses a user using the --ignore-scripts install option.
CVSS Metrics
- v3.1•HIGH•Score: 7.7CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:N
- v3.1•MEDIUM•Score: 6.5CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
- v2.0•MEDIUM•Score: 5.5AV:N/AC:L/Au:S/C:N/I:P/A:P
EPSS Trends
Current EPSS score: 2.04%• Percentile: 80%
Techniques & Countermeasures
- CWE-22•Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
- CWE-269•Improper Privilege Management
The product does not properly assign, modify, track, or check privileges for an actor, creating an unintended sphere of control for that actor.
Affected Systems
- chainguard•code-server
< 0
- chainguard•code-server-compat
< 0
- chainguard•commercial-gitlab-rails-ee-assets-19.1
all
- chainguard•commercial-gitlab-rails-ee-assets-19.2
all
- chainguard•commercial-gitlab-rails-ee-assets-19.3
all
- chainguard•commercial-gitlab-rails-ee-assets-fips-19.1
all
- chainguard•commercial-gitlab-rails-ee-assets-fips-19.2
all
- chainguard•commercial-gitlab-rails-ee-assets-fips-19.3
all
- chainguard•gitlab-rails-ce-18.1
< 0
- chainguard•gitlab-rails-ce-18.2
< 0
- chainguard•gitlab-rails-ce-18.3
< 0
- chainguard•gitlab-rails-ce-18.4
< 0
- chainguard•gitlab-rails-ce-18.5
< 0
- chainguard•gitlab-rails-ce-18.6
< 0
- chainguard•gitlab-rails-ce-18.7
< 0
- chainguard•gitlab-rails-ce-assets-18.1
< 0
- chainguard•gitlab-rails-ce-assets-18.10
< 0
- chainguard•gitlab-rails-ce-assets-18.11
< 0
- chainguard•gitlab-rails-ce-assets-18.2
< 0
- chainguard•gitlab-rails-ce-assets-18.3
< 0
- chainguard•gitlab-rails-ce-assets-18.4
< 0
- chainguard•gitlab-rails-ce-assets-18.5
< 0
- chainguard•gitlab-rails-ce-assets-18.6
< 0
- chainguard•gitlab-rails-ce-assets-18.7
< 0
- chainguard•gitlab-rails-ce-assets-18.8
< 0
- chainguard•gitlab-rails-ce-assets-18.9
< 0
- chainguard•gitlab-rails-ce-assets-19.0
< 0
- chainguard•gitlab-rails-ce-assets-19.1
< 0
- chainguard•gitlab-rails-ce-assets-19.2
< 0
- chainguard•gitlab-rails-ce-assets-19.3
< 0
- chainguard•gitlab-rails-ce-assets-19.4
all
- chainguard•gitlab-rails-ce-assets-fips-18.1
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.10
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.11
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.2
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.3
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.4
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.5
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.6
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.7
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.8
< 0
- chainguard•gitlab-rails-ce-assets-fips-18.9
< 0
- chainguard•gitlab-rails-ce-assets-fips-19.0
< 0
- chainguard•gitlab-rails-ce-assets-fips-19.1
< 0
- chainguard•gitlab-rails-ce-assets-fips-19.2
< 0
- chainguard•gitlab-rails-ce-assets-fips-19.3
< 0
- chainguard•gitlab-rails-ce-assets-fips-19.4
all
- chainguard•gitlab-rails-ce-doc-18.1
< 0
- chainguard•gitlab-rails-ce-doc-18.2
< 0
- chainguard•gitlab-rails-ce-doc-18.3
< 0
Showing first 50 affected entries in server-rendered view.
References (17)
- https://blog.npmjs.org/post/189618601100/binary-planting-with-the-npm-cli
- https://github.com/npm/cli/security/advisories/GHSA-4328-8hgf-7wjr
- https://www.oracle.com/security-alerts/cpujan2020.html
- http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00027.html
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/Z36UKPO5F3PQ3Q2POMF5LEKXWAH5RUFP/
- https://access.redhat.com/errata/RHEA-2020:0330
- https://access.redhat.com/errata/RHSA-2020:0573
- https://access.redhat.com/errata/RHSA-2020:0579
- https://access.redhat.com/errata/RHSA-2020:0597
- https://access.redhat.com/errata/RHSA-2020:0602
- https://security.gentoo.org/glsa/202003-48
- https://nvd.nist.gov/vuln/detail/CVE-2019-16777
- https://github.com/advisories/GHSA-4328-8hgf-7wjr
- https://github.com/npm/cli
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/Z36UKPO5F3PQ3Q2POMF5LEKXWAH5RUFP
- https://www.npmjs.com/advisories/1437
- https://security-tracker.debian.org/tracker/CVE-2019-16777