CVE-2021-22884: DNS rebinding in --inspect
A flaw was found in nodejs. A denial of service is possible when the whitelist includes “localhost6”. When “localhost6” is not present in /etc/hosts, it is just an ordinary domain that is resolved via DNS over the network. If the attacker controls the victim's DNS server or can spoof its responses, the DNS rebinding protection can be bypassed by using the “localhost6” domain. As long as the attacker uses the “localhost6” domain, they can still apply the attack described in CVE-2018-7160.
Other sources
Affected Node.js versions are vulnerable to a DNS rebinding attack when the whitelist includes “localhost6”. When “localhost6” is not present in /etc/hosts, it is just an ordinary domain that is resolved via DNS, i.e., over network. If the attacker controls the victim's DNS server or can spoof its responses, the DNS rebinding protection can be bypassed by using the “localhost6” domain. As long as the attacker uses the “localhost6” domain, they can still apply the attack described in CVE-2018-7160.
All versions of the 15.x, 14.x, 12.x and 10.x releases lines
— Node.Js
Affected Node.js versions are vulnerable to denial of service attacks when the whitelist includes “localhost6”. When “localhost6” is not present in /etc/hosts, it is just an ordinary domain that is resolved via DNS, i.e., over network. If the attacker controls the victim's DNS server or can spoof its responses, the DNS rebinding protection can be bypassed by using the “localhost6” domain. As long as the attacker uses the “localhost6” domain, they can still apply the attack described in CVE-2018-7160.
Reference: https://nodejs.org/en/blog/vulnerability/february-2021-security-releases/#update-23-feb-2021-security-releases-available
— Red Hat
DNS rebinding in --inspect - Affected Node.js versions are vulnerable to denial of service attacks when the whitelist includes “localhost6”. When “localhost6” is not present in /etc/hosts, it is just an ordinary domain that is resolved via DNS, i.e., over network. If the attacker controls the victim's DNS server or can spoof its responses, the DNS rebinding protection can be bypassed by using the “localhost6” domain. As long as the attacker uses the “localhost6” domain, they can still apply the attack described in CVE-2018-7160.
— Node.Js
Node.js before 10.24.0, 12.21.0, 14.16.0, and 15.10.0 is vulnerable to DNS rebinding attacks as the whitelist includes “localhost6”. When “localhost6” is not present in /etc/hosts, it is just an ordinary domain that is resolved via DNS, i.e., over network. If the attacker controls the victim's DNS server or can spoof its responses, the DNS rebinding protection can be bypassed by using the “localhost6” domain. As long as the attacker uses the “localhost6” domain, they can still apply the attack described in CVE-2018-7160.
Node.js is vulnerable to a denial of service, caused by an error when the allowlist includes "localhost6". By controlling the victim's DNS server or spoofing its responses, an attacker could exploit this vulnerability to bypass the DNS rebinding protection mechanism using the "localhost6" domain and cause a denial of service.
— IBM
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/nodejsto a version that resolves this vulnerability.Fixed in 8.10.0~dfsg-2ubuntu0.4+ - Upgrade
Upgrade
ubuntu/nodejsto a version that resolves this vulnerability.Fixed in 10.19.0~dfsg-3ubuntu1.2 - Upgrade
Upgrade
ubuntu/nodejsto a version that resolves this vulnerability.Fixed in 12.21.0~dfsg-1 - Upgrade
Upgrade
debian/nodejsto a version that resolves this vulnerability.Fixed in 10.24.0~dfsg-1~deb10u1Fixed in 10.24.0~dfsg-1~deb10u3Fixed in 12.22.12~dfsg-1~deb11u4Fixed in 18.13.0+dfsg1-1 - Upgrade
Upgrade
redhat/rh-nodejs10-nodejsto a version that resolves this vulnerability.Fixed in 0:10.24.0-1.el7 - Upgrade
Upgrade
redhat/rh-nodejs14-nodejsto a version that resolves this vulnerability.Fixed in 0:14.16.0-1.el7 - Upgrade
Upgrade
redhat/rh-nodejs12-nodejsto a version that resolves this vulnerability.Fixed in 0:12.21.0-1.el7 - Upgrade
Upgrade
redhat/nodeto a version that resolves this vulnerability.Fixed in 15.10.0 - Upgrade
Upgrade
redhat/nodeto a version that resolves this vulnerability.Fixed in 14.16.0 - Upgrade
Upgrade
redhat/nodeto a version that resolves this vulnerability.Fixed in 12.21.0 - Upgrade
Upgrade
redhat/nodeto a version that resolves this vulnerability.Fixed in 10.24.0 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 10.24.0Fixed in 12.21.0Fixed in 14.16.0Fixed in 15.10.0 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 10.24.0 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 12.21.0 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 14.16.0 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 15.10.0 - Upgrade
Upgrade
alpine/nodejsto a version that resolves this vulnerability.Fixed in 12.21.0-r0 - Upgrade
Upgrade
alpine/nodejsto a version that resolves this vulnerability.Fixed in 14.16.0-r0 - Upgrade
Upgrade
alpine/nodejs-currentto a version that resolves this vulnerability.Fixed in 15.10.0-r0 - Upgrade
Upgrade
Node.js 10.xto a version that resolves this vulnerability.Fixed in 10.24.0 - Upgrade
Upgrade
Node.js 12.xto a version that resolves this vulnerability.Fixed in 12.21.0 - Upgrade
Upgrade
Node.js 14.xto a version that resolves this vulnerability.Fixed in 14.16.0 - Upgrade
Upgrade
Node.js 15.xto a version that resolves this vulnerability.Fixed in 15.10.0
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is the vulnerability ID?
The vulnerability ID is CVE-2021-22884.
What is the severity of CVE-2021-22884?
The severity of CVE-2021-22884 is high with a severity value of 7.
What is the affected software version?
The affected software versions are Node.js before 10.24.0, 12.21.0, 14.16.0, and 15.10.0.
How does CVE-2021-22884 affect Node.js?
CVE-2021-22884 affects Node.js by making it vulnerable to DNS rebinding attacks.
How can I fix CVE-2021-22884?
To fix CVE-2021-22884, update Node.js to version 10.24.0, 12.21.0, 14.16.0, or 15.10.0 depending on the version you are using.