CVE-2021-39135
Last modified
CVE-2021-39135 is a high-severity vulnerability rated 7.8/10 on the CVSS scale. `@npmcli/arborist`, the library that calculates dependency trees and manages the node_modules folder hierarchy for the npm command line interface, aims to guarantee that package dependency contracts will be met, and the extraction of package contents will always be performed into the expected folder. This is accomplished by extracting package contents into a project's `node_modules` folder. EPSS estimates a 0.55% chance of exploitation in the next 30 days.
Description
`@npmcli/arborist`, the library that calculates dependency trees and manages the node_modules folder hierarchy for the npm command line interface, aims to guarantee that package dependency contracts will be met, and the extraction of package contents will always be performed into the expected folder. This is accomplished by extracting package contents into a project's `node_modules` folder. If the `node_modules` folder of the root project or any of its dependencies is somehow replaced with a symbolic link, it could allow Arborist to write package dependencies to any arbitrary location on the file system. Note that symbolic links contained within package artifact contents are filtered out, so another means of creating a `node_modules` symbolic link would have to be employed. 1. A `preinstall` script could replace `node_modules` with a symlink. (This is prevented by using `--ignore-scripts`.) 2. An attacker could supply the target with a git repository, instructing them to run `npm install --ignore-scripts` in the root. This may be successful, because `npm install --ignore-scripts` is typically not capable of making changes outside of the project directory, so it may be deemed safe. This is patched in @npmcli/arborist 2.8.2 which is included in npm v7.20.7 and above. For more information including workarounds please see the referenced GHSA-gmw6-94gg-2rc2.
Metrics
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| Npmjs | Arborist | < 2.8.2 |
| Oracle | Graalvm | 20.3.3 |
| Oracle | Graalvm | 21.2.0 |
| Siemens | Sinec Infrastructure Network Services | < 1.0.1.1 |
References
- https://cert-portal.siemens.com/productcert/pdf/ssa-389290.pdfPatch, Third Party Advisory
- https://github.com/npm/arborist/security/advisories/GHSA-gmw6-94gg-2rc2Third Party Advisory
- https://www.oracle.com/security-alerts/cpuoct2021.htmlPatch, Third Party Advisory
- https://cert-portal.siemens.com/productcert/pdf/ssa-389290.pdfPatch, Third Party Advisory
- https://github.com/npm/arborist/security/advisories/GHSA-gmw6-94gg-2rc2Third Party Advisory
- https://www.oracle.com/security-alerts/cpuoct2021.htmlPatch, Third Party Advisory
Timeline
- Published
- Last Modified
- Status
- Modified
Frequently Asked Questions
What is CVE-2021-39135?
How severe is CVE-2021-39135?
How do I fix CVE-2021-39135?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2021
- CVE-2021-39128Affected versions of Atlassian Jira Server or Data Center us…7.2
- CVE-2021-3913Rejected reason: DO NOT USE THIS CANDIDATE NUMBER. ConsultID…
- CVE-2021-39131ced detects character encoding using Google’s compact_enc_de…7.5
- CVE-2021-39132Rundeck is an open source automation service with a web cons…8.8
- CVE-2021-39133Rundeck is an open source automation service with a web cons…6.8
- CVE-2021-39134`@npmcli/arborist`, the library that calculates dependency t…7.8
- CVE-2021-39136baserCMS is an open source content management system with a …5.4
- CVE-2021-39137go-ethereum is the official Go implementation of the Ethereu…7.5
- CVE-2021-39138Parse Server is an open source backend that can be deployed …6.5
- CVE-2021-39139XStream is a simple library to serialize objects to XML and …8.8
- CVE-2021-3914It was found that the smallrye health metrics UI component d…6.1
- CVE-2021-39140XStream is a simple library to serialize objects to XML and …6.3
Are you affected by CVE-2021-39135?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
