CVE-2023-31137

Source
https://nvd.nist.gov/vuln/detail/CVE-2023-31137
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-31137.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2023-31137
Aliases
  • GHSA-58m7-826v-9c3c
Downstream
Published
2023-05-09T13:56:46Z
Modified
2025-10-15T02:27:40.033198Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
Summary
MaraDNS Integer Underflow Vulnerability in DNS Packet Decompression
Details

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.

References

Affected packages

Git / github.com/samboy/MaraDNS

Affected ranges

Type
GIT
Repo
https://github.com/samboy/MaraDNS
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Last affected

Affected versions

2.*

2.0.12-RELEASE
2.0.13
2.0.16

Other

2016-05-05
2017-11-11
2018-04-11
2018-08-13
2018-08-17
2020-08-04
2020-08-05
2020-08-06

3.*

3.2.06
3.3.03
3.4.01
3.5.0001
3.5.0002
3.5.0003
3.5.0004
3.5.0005
3.5.0006
3.5.0007
3.5.0008
3.5.0009
3.5.0010
3.5.0011
3.5.0012
3.5.0013
3.5.0014
3.5.0015
3.5.0016
3.5.0017
3.5.0018
3.5.0019
3.5.0020
3.5.0021
3.5.0022
3.5.0023
3.5.0024

coLunacyDNS-1.*

coLunacyDNS-1.0.002
coLunacyDNS-1.0.008
coLunacyDNS-1.0.009
coLunacyDNS-1.0.010

deadwood-3.*

deadwood-3.2.10
deadwood-3.2.13
deadwood-3.3.01
deadwood-3.3.02

maradns-2.*

maradns-2.0.10
maradns-2.0.10a
maradns-2.0.11
maradns-2.0.14
maradns-2.0.17