CVE-2016-3956 npm Token Leak in npm
The npm CLI sends bearer tokens to arbitrary remote servers, allowing attackers to steal sensitive authentication information.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2016-3956?
CVE-2016-3956 is a high-severity vulnerability in Nodejs Node.js, published on 2 Jul 2016. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
The CLI in npm before 2.15.1 and 3.x before 3.8.3, as used in Node.js 0.10 before 0.10.44, 0.12 before 0.12.13, 4 before 4.4.2, and 5 before 5.10.0, includes bearer tokens with arbitrary requests, which allows remote HTTP servers to obtain sensitive information by reading Authorization headers.
Weakness: CWE-200
Which versions are affected by CVE-2016-3956?
4 open source packages ship an affected version, including npm. It affects 3 products.
| Package | Affected | Fixed in |
|---|---|---|
npm npm | All versions | 2.15.1 |
npm npm | All versions | 2.15.1 |
npm npm | From 3.0.0 | 3.8.3 |
npm npm | From 3.0.0 | 3.8.3 |
Products include Ibm Sdk, Nodejs Node.js, Npmjs Npm.
How do I fix CVE-2016-3956?
Upgrade npm to a fixed version for your release line: 2.15.1 or 3.8.3.
Is CVE-2016-3956 being exploited?
There is no known exploitation of CVE-2016-3956 in the wild and no public exploit code.
Other vulnerabilities in Nodejs Node.js
Sources
Also known as CVE-2016-1000014, DEBIAN-CVE-2016-3956, GHSA-m5h6-hr3q-22h5, MINI-rqw2-fqcx-hhfg, UBUNTU-CVE-2016-3956, USN-4785-1.