CVE-2022-3204 NRDelegation Attack

High 7.5 Published Updated

Attackers can cause denial of service in DNS resolvers by exploiting non-responsive delegation attacks, leading to resource exhaustion and degraded performance.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2022-3204?

CVE-2022-3204 is a high-severity denial of service vulnerability in Fedoraproject Fedora, published on 26 Sep 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

A vulnerability named 'Non-Responsive Delegation Attack' (NRDelegation Attack) has been discovered in various DNS resolving software. The NRDelegation Attack works by having a malicious delegation with a considerable number of non responsive nameservers. The attack starts by querying a resolver for a record that relies on those unresponsive nameservers. The attack can cause a resolver to spend a lot of time/resources resolving records under a malicious delegation point where a considerable number of unresponsive NS records reside. It can trigger high CPU usage in some resolver implementations that continually look in the cache for resolved NS records in that delegation. This can lead to degraded performance and eventually denial of service in orchestrated attacks. Unbound does not suffer from high CPU usage, but resources are still needed for resolving the malicious delegation. Unbound will keep trying to resolve the record until hard limits are reached. Based on the nature of the attack and the replies, different limits could be reached. From version 1.16.3 on, Unbound introduces fixes for better performance when under load, by cutting opportunistic queries for nameserver discovery and DNSKEY prefetching and limiting the number of times a delegation point can issue a cache lookup for missing records.

Weakness: CWE-400

Which versions are affected by CVE-2022-3204?

It affects 2 products.

Linux distribution packages (30)
python3-unbound AlmaLinux:8All versions1.16.2-5.el8
unbound AlmaLinux:8All versions1.16.2-5.el8
unbound-devel AlmaLinux:8All versions1.16.2-5.el8
unbound-libs AlmaLinux:8All versions1.16.2-5.el8
python3-unbound AlmaLinux:9All versions1.16.2-3.el9
unbound AlmaLinux:9All versions1.16.2-3.el9
unbound-devel AlmaLinux:9All versions1.16.2-3.el9
unbound-libs AlmaLinux:9All versions1.16.2-3.el9
python3-unbound Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
python3-unbound-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
unbound Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
unbound-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
unbound-debugsource Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
unbound-devel Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
unbound-libs Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
unbound-libs-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:1.16.2-5.el8
python3-unbound Red Hat:enterprise_linux:9::appstreamAll versions0:1.16.2-3.el9
python3-unbound-debuginfo Red Hat:enterprise_linux:9::appstreamAll versions0:1.16.2-3.el9
unbound Red Hat:enterprise_linux:9::appstreamAll versions0:1.16.2-3.el9
unbound-debuginfo Red Hat:enterprise_linux:9::appstreamAll versions0:1.16.2-3.el9
unbound-debugsource Red Hat:enterprise_linux:9::appstreamAll versions0:1.16.2-3.el9
unbound-libs Red Hat:enterprise_linux:9::appstreamAll versions0:1.16.2-3.el9
unbound-libs-debuginfo Red Hat:enterprise_linux:9::appstreamAll versions0:1.16.2-3.el9
python3-unbound-debuginfo Red Hat:enterprise_linux:9::crbAll versions0:1.16.2-3.el9
unbound-debuginfo Red Hat:enterprise_linux:9::crbAll versions0:1.16.2-3.el9
unbound-debugsource Red Hat:enterprise_linux:9::crbAll versions0:1.16.2-3.el9
unbound-devel Red Hat:enterprise_linux:9::crbAll versions0:1.16.2-3.el9
unbound-libs-debuginfo Red Hat:enterprise_linux:9::crbAll versions0:1.16.2-3.el9
unbound Rocky Linux:8All versions0:1.16.2-5.12.el8_10
unbound openSUSE:TumbleweedAll versions1.16.3-1.1

Products include Fedoraproject Fedora, Nlnetlabs Unbound.

How do I fix CVE-2022-3204?

Upgrade to a fixed version.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2022-3204 being exploited?

There is no known exploitation of CVE-2022-3204 in the wild and no public exploit code.

All Fedoraproject Fedora vulnerabilities

Sources

Also known as ALPINE-CVE-2022-3204, ALSA-2023:2370, ALSA-2023:2771, AZL-11033, CLSA-2024-1725554505, DEBIAN-CVE-2022-3204 and 9 more.

Is CVE-2022-3204 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free