Cyber Resilience

CVE-2023-31137

Memory Safety in Maradns ≤ 3.4.10

Published
09 May 2023
Modified
21 November 2024
Patch / advisory
CVSS Score v3.1 7.5
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
EPSS Score 0.011 64th percentile
Risk Priority 60 floored blend · peak EPSS

Summary

CVE-2023-31137 is a high-severity Wrap or Wraparound (CWE-191) vulnerability in Maradns Maradns. Its CVSS base score is 7.5 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploitation for Privilege Escalation (T1068); ranked in the top 36% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

EU & UK References

Vulnerability Data

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…

more

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.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1068 Exploitation for Privilege Escalation Privilege Escalation
Adversaries may exploit software vulnerabilities in an attempt to elevate privileges.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1203 Exploitation for Client Execution Execution
Adversaries may exploit software vulnerabilities in client applications to execute code.
T1210 Exploitation of Remote Services Lateral Movement
Adversaries may exploit remote services to gain unauthorized access to internal systems once inside of a network.
T1212 Exploitation for Credential Access Credential Access
Adversaries may exploit software vulnerabilities in an attempt to collect credentials.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2023-39350Same product: Debian Debian Linux
CVE-2024-0808Same product: Debian Debian Linux
CVE-2023-40181Same product: Debian Debian Linux
CVE-2025-38161Same product: Debian Debian Linux
CVE-2025-38200Same product: Debian Debian Linux
CVE-2024-54028Same product: Debian Debian Linux
CVE-2024-23313Same product: Fedoraproject Fedora
CVE-2024-32040Same product: Fedoraproject Fedora
CVE-2023-2723Same product: Debian Debian Linux
CVE-2023-5187Same product: Debian Debian Linux

Affected Assets

maradns
maradns
≤ 3.4.10 · 3.5.0001 — 3.5.0036
fedoraproject
fedora
37, 38
debian
debian linux
10.0, 11.0

Mitigating Controls

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 full match
prevents

Secure SDLC practices directly prevent integer underflow defects via input validation, bounds checking, and static analysis.

ID.RA-01 partial match
prevents

Vulnerability scanning and code analysis can surface underflow flaws after they are introduced.

PR.PS-02 partial match
prevents

Routine patching can remediate known underflow bugs once they are discovered in deployed software.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing in development catches integer underflow defects before release.

prevents

Secure development lifecycle mandates input validation and arithmetic checks that prevent integer underflow.

prevents

Application security requirements include bounds checking and safe arithmetic to avoid underflow conditions.

prevents

Secure architecture principles require defensive coding patterns that mitigate integer wraparound risks.

prevents

Secure coding standards directly prescribe safe integer handling and overflow/underflow prevention.

References