CVE-2018-7166 Information disclosure in Node.js
An argument processing flaw in Node.js Buffer.alloc() allows attackers to read uninitialized memory, potentially exposing sensitive 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-2018-7166?
CVE-2018-7166 is a high-severity vulnerability in Nodejs Node.js, published on 21 Aug 2018. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
In all versions of Node.js 10 prior to 10.9.0, an argument processing flaw can cause `Buffer.alloc()` to return uninitialized memory. This method is intended to be safe and only return initialized, or cleared, memory. The third argument specifying `encoding` can be passed as a number, this is misinterpreted by `Buffer's` internal "fill" method as the `start` to a fill operation. This flaw may be abused where `Buffer.alloc()` arguments are derived from user input to return uncleared memory blocks that may contain sensitive information.
Which versions are affected by CVE-2018-7166?
It affects 1 product.
Linux distribution packages (5)
rh-nodejs10-nodejs Red Hat:rhel_software_collections:3::el7 | All versions | 0:10.10.0-3.el7 |
rh-nodejs10-nodejs-debuginfo Red Hat:rhel_software_collections:3::el7 | All versions | 0:10.10.0-3.el7 |
rh-nodejs10-nodejs-devel Red Hat:rhel_software_collections:3::el7 | All versions | 0:10.10.0-3.el7 |
rh-nodejs10-nodejs-docs Red Hat:rhel_software_collections:3::el7 | All versions | 0:10.10.0-3.el7 |
rh-nodejs10-npm Red Hat:rhel_software_collections:3::el7 | All versions | 0:6.4.1-10.10.0.3.el7 |
Products include Nodejs Node.js.
How do I fix CVE-2018-7166?
Upgrade to a fixed version.
Is CVE-2018-7166 being exploited?
There is no known exploitation of CVE-2018-7166 in the wild and no public exploit code.
Other vulnerabilities in Nodejs Node.js
Sources
Also known as GHSA-6v28-c2x2-8p46, RHBA-2019:0772.