CVE-2023-31137

High

Description

MaraDNS is open-source software that implements the Domain Name System (DNS). In version 3.5.0024 and prior, a remotely exploitable integer underflow vulnerability in the DNS packet decompression function allows an attacker to cause a Denial of Service by triggering an abnormal program termination. The vulnerability exists in the `decomp_get_rddata` function within the `Decompress.c` file. When handling a DNS packet with an Answer RR of qtype 16 (TXT record) and any qclass, if the `rdlength` is smaller than `rdata`, the result of the line `Decompress.c:886` is a negative number `len = rdlength - total;`. This value is then passed to the `decomp_append_bytes` function without proper validation, causing the program to attempt to allocate a massive chunk of memory that is impossible to allocate. Consequently, the program exits with an error code of 64, causing a Denial of Service. One proposed fix for this vulnerability is to patch `Decompress.c:887` by breaking `if(len <= 0)`, which has been incorporated in version 3.5.0036 via commit bab062bde40b2ae8a91eecd522e84d8b993bab58.

SeverityHigh
CVSS7.5
Exploit probability—
ProductMaradns
PublishedMay 9, 2023
First seenMay 9, 2023
Weakness typeCWE-191CWE-191

How to fix

Update
  • maradns maradns3.4.10, 3.5.0036 or later

Affected products

ProductAffected versionsFixed in
maradns maradnsv < 3.4.10, 3.5.0001 ≤ v < 3.5.00363.4.10, 3.5.0036
fedoraproject fedora37, 38—
debian debian_linux10.0, 11.0—

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.

CVE-2023-31137 · Maradns · Dark Radar