CVE-2018-7166
In all versions of Node.js 10 prior to 10.9.0, an argument processing flaw can cause `Buffer...
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
7.5
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.
- Record
CVE-2018-7166- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:P/I:N/A:N - Weakness
- CWE-226, CWE-908
- Updated
- 2026-11-02
CVE List No score
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.
- Record
CVE-2018-7166- Weakness
- CWE-226
- Updated
- 2026-11-02
EUVDEUVD-2018-18908 No score
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.
- Record
EUVD-2018-18908- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-6v28-c2x2-8p46
7.5
In all versions of Node.js 10 prior to 10.9.0, an argument processing flaw can cause `Buffer...
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.
- Record
GHSA-6v28-c2x2-8p46- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-226, CWE-908
- Updated
- 2026-11-02
OSV
7.5
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.
- Record
CVE-2018-7166- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVRHBA-2019:0772
5.3
Red Hat Bug Fix Advisory: rh-nodejs10 bug fix update
- Record
RHBA-2019:0772- CVSS 3.0
- 5.3 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
OSVRHSA-2018:2553
8.1
Red Hat Security Advisory: Red Hat OpenShift Application Runtimes Node.js 10.9.0 security update
- Record
RHSA-2018:2553- CVSS 3.0
- 8.1 High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
rh-nodejs10-nodejsRed Hat:rhel_software_collections:3::el7 |
before 0:10.10.0-3.el7 | 0:10.10.0-3.el7 |
rh-nodejs10-nodejs-debuginfoRed Hat:rhel_software_collections:3::el7 |
before 0:10.10.0-3.el7 | 0:10.10.0-3.el7 |
rh-nodejs10-nodejs-develRed Hat:rhel_software_collections:3::el7 |
before 0:10.10.0-3.el7 | 0:10.10.0-3.el7 |
rh-nodejs10-nodejs-docsRed Hat:rhel_software_collections:3::el7 |
before 0:10.10.0-3.el7 | 0:10.10.0-3.el7 |
rh-nodejs10-npmRed Hat:rhel_software_collections:3::el7 |
before 0:6.4.1-10.10.0.3.el7 | 0:6.4.1-10.10.0.3.el7 |
npmRed Hat:openshift_application_runtimes:1.0::el7 |
before 1:6.2.0-1.10.9.0.1.el7 | 1:6.2.0-1.10.9.0.1.el7 |
rhoar-nodejsRed Hat:openshift_application_runtimes:1.0::el7 |
before 1:10.9.0-1.el7 | 1:10.9.0-1.el7 |
rhoar-nodejs-debuginfoRed Hat:openshift_application_runtimes:1.0::el7 |
before 1:10.9.0-1.el7 | 1:10.9.0-1.el7 |
rhoar-nodejs-docsRed Hat:openshift_application_runtimes:1.0::el7 |
before 1:10.9.0-1.el7 | 1:10.9.0-1.el7 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2018-7166 is a high vulnerability (CVSS 7.5) in Node.js, published August 21, 2018. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.29%, the 88th percentile. Fixed in rh-nodejs10-nodejs 0:10.10.0-3.el7.
References
access.redhat.com/errata/RHSA-2018:2553
nodejs.org/en/blog/vulnerability/august-2018-security-releases
nvd.nist.gov/vuln/detail/CVE-2018-7166
github.com/advisories/GHSA-6v28-c2x2-8p46
access.redhat.com/errata/RHBA-2019:0772
bugzilla.redhat.com/show_bug.cgi?id=1696153
Show 20 moreShow less
security.access.redhat.com/data/csaf/v2/advisories/2019/rhba-2019_0772.json
access.redhat.com/security/cve/CVE-2018-7166
bugzilla.redhat.com/show_bug.cgi?id=1620215
cve.org/CVERecord?id=CVE-2018-7166
access.redhat.com/security/updates/classification
access.redhat.com/documentation/en-us/red_hat_openshift_application_runtimes/1/html-single/red_hat_openshift_application_runtimes_release_notes/index
bugzilla.redhat.com/show_bug.cgi?id=1591100
bugzilla.redhat.com/show_bug.cgi?id=1620219
issues.redhat.com/browse/NODE-152
issues.redhat.com/browse/NODE-153
issues.redhat.com/browse/NODE-154
issues.redhat.com/browse/NODE-155
security.access.redhat.com/data/csaf/v2/advisories/2018/rhsa-2018_2553.json
access.redhat.com/security/cve/CVE-2018-0732
cve.org/CVERecord?id=CVE-2018-0732
nvd.nist.gov/vuln/detail/CVE-2018-0732
openssl.org/news/secadv/20180612.txt
access.redhat.com/security/cve/CVE-2018-12115
cve.org/CVERecord?id=CVE-2018-12115
nvd.nist.gov/vuln/detail/CVE-2018-12115