CVE-2023-2828 named's configured cache size limit can be significantly exceeded

High 7.5 Published Updated

Attackers can exceed the configured cache size limit in BIND 9 recursive resolvers by manipulating query order, potentially causing resource exhaustion and denial of service.

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

What is CVE-2023-2828?

CVE-2023-2828 is a high-severity denial of service vulnerability in Debian Debian Linux, published on 21 Jun 2023. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Every `named` instance configured to run as a recursive resolver maintains a cache database holding the responses to the queries it has recently sent to authoritative servers. The size limit for that cache database can be configured using the `max-cache-size` statement in the configuration file; it defaults to 90% of the total amount of memory available on the host. When the size of the cache reaches 7/8 of the configured limit, a cache-cleaning algorithm starts to remove expired and/or least-recently used RRsets from the cache, to keep memory use below the configured limit.

It has been discovered that the effectiveness of the cache-cleaning algorithm used in `named` can be severely diminished by querying the resolver for specific RRsets in a certain order, effectively allowing the configured `max-cache-size` limit to be significantly exceeded. This issue affects BIND 9 versions 9.11.0 through 9.16.41, 9.18.0 through 9.18.15, 9.19.0 through 9.19.13, 9.11.3-S1 through 9.16.41-S1, and 9.18.11-S1 through 9.18.15-S1.

Weakness: CWE-770

Which versions are affected by CVE-2023-2828?

It affects 9 products.

Linux distribution packages (40)
bind AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-chroot AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-devel AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-export-devel AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-export-libs AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-libs AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-libs-lite AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-license AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-lite-devel AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-pkcs11 AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-pkcs11-devel AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-pkcs11-libs AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-pkcs11-utils AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-sdb AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-sdb-chroot AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind-utils AlmaLinux:8All versions32:9.11.36-8.el8_8.1
bind9.16 AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind9.16-chroot AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind9.16-devel AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind9.16-dnssec-utils AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind9.16-doc AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind9.16-libs AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind9.16-license AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind9.16-utils AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
python3-bind AlmaLinux:8All versions32:9.11.36-8.el8_8.1
python3-bind9.16 AlmaLinux:8All versions32:9.16.23-0.14.el8_8.1.alma
bind AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-chroot AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-devel AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-dnssec-doc AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-dnssec-utils AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-doc AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-libs AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-license AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind-utils AlmaLinux:9All versions32:9.16.23-11.el9_2.1
python3-bind AlmaLinux:9All versions32:9.16.23-11.el9_2.1
bind Red Hat:enterprise_linux:7::clientAll versions32:9.11.4-26.P2.el7_9.14
bind-chroot Red Hat:enterprise_linux:7::clientAll versions32:9.11.4-26.P2.el7_9.14
bind-debuginfo Red Hat:enterprise_linux:7::clientAll versions32:9.11.4-26.P2.el7_9.14
bind-devel Red Hat:enterprise_linux:7::clientAll versions32:9.11.4-26.P2.el7_9.14

Products include Debian Debian Linux, Fedoraproject Fedora, Isc Bind, Netapp Active Iq Unified Manager, Netapp H300s Firmware, Netapp H410c Firmware and 3 more.

How do I fix CVE-2023-2828?

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-2023-2828 being exploited?

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

All Debian Debian Linux vulnerabilities

Sources

Also known as ALSA-2023:4099, ALSA-2023:4100, ALSA-2023:4102, AZL-27203, AZL-27238, CLSA-2023-1688677755 and 28 more.

Is CVE-2023-2828 in your software?

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

Check your SBOMs for free