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.
CVE-2019-16777 - Medium Severity Vulnerability
Vulnerable Libraries - npm-5.1.0.tgz, npm-2.15.12.tgz
npm-5.1.0.tgz
a package manager for JavaScript
Library home page: https://registry.npmjs.org/npm/-/npm-5.1.0.tgz
Dependency Hierarchy: - gitbook-cli-2.3.2.tgz (Root Library) - :x: **npm-5.1.0.tgz** (Vulnerable Library)
npm-2.15.12.tgz
a package manager for JavaScript
Library home page: https://registry.npmjs.org/npm/-/npm-2.15.12.tgz
Dependency Hierarchy: - gitbook-cli-2.3.2.tgz (Root Library) - npmi-1.0.1.tgz - :x: **npm-2.15.12.tgz** (Vulnerable Library)
Found in HEAD commit: 57add7b0a1f99c21ea28094adb747d0addd0a984
Found in base branch: master
Vulnerability Details
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.
Publish Date: 2019-12-13
URL: CVE-2019-16777
CVSS 3 Score Details (6.5)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: Low - Privileges Required: Low - User Interaction: None - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: None - Integrity Impact: High - Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://blog.npmjs.org/post/189618601100/binary-planting-with-the-npm-cli
Release Date: 2020-10-09
Fix Resolution: npm - 6.13.4