Security Resilience

CVE-2023-31794

DoS in Artifex Mupdf 1.21.1

Published
31 October 2023
Modified
21 November 2024
CVSS Score v3.1 5.5
Click a component to see what it means
Raw vectorCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
EPSS Score 0.0023 13th percentile
Risk Priority 42 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2023-31794 is a medium-severity Uncontrolled Recursion (CWE-674) vulnerability in Artifex Mupdf. Its CVSS base score is 5.5 (Medium).

Operationally, ranked at the 13th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

EU & UK References

Vulnerability Data

MuPDF v1.21.1 was discovered to contain an infinite recursion in the component pdf_mark_list_push. This vulnerability allows attackers to cause a Denial of Service (DoS) via a crafted PDF file.

CWE(s)

Related Threats

CVEs Like This One

CVE-2025-46206Same product: Artifex Mupdf
CVE-2025-71382Same product: Artifex Mupdf
CVE-2025-55780Same product: Artifex Mupdf
CVE-2023-51103Same product: Artifex Mupdf
CVE-2023-51106Same product: Artifex Mupdf
CVE-2023-51105Same product: Artifex Mupdf
CVE-2023-51107Same product: Artifex Mupdf
CVE-2026-7233Same product: Artifex Mupdf
CVE-2026-25556Same product: Artifex Mupdf
CVE-2024-46657Same product: Artifex Mupdf

Affected Assets

artifex
mupdf
1.21.1

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-674

Supports resumption at alternate site when uncontrolled recursion causes primary site failure or crash.

addresses: CWE-674

Prevents uncontrolled recursion that exhausts stack or CPU resources.

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.

blocks

Secure development life cycle requires controls that prevent uncontrolled recursion through design and code review.

blocks

A.8.26 only requires that security requirements (including resilience against attacks such as buffer overflows) be identified and specified during development or acquisition; it does not itself enforce, implement, or prevent uncontrolled recursion from being exploitable in the resulting application.

blocks

A.8.27 mandates establishing and applying secure engineering principles (defense-in-depth, least privilege, security by design, input distrust, hardening, design reviews) but does not itself stop uncontrolled recursion from being introduced or from consuming excessive resources when present; the weakness can still be exploited.

prevents

Secure coding standards directly prohibit or constrain recursive constructs that could exhaust stack or memory.

finds

Security testing in development can detect excessive recursion via static analysis or fuzzing.

finds

Capacity management includes monitoring and limits that mitigate resource exhaustion from runaway recursion.

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-674, a class-level weakness, and none of its children carries one either.

References