Description
PyMuPDF 1.25.3 before 2.0 contains a stack-based buffer overflow vulnerability in JM_set_annot_callout_line() that copies a caller-supplied number of callout points into a fixed three-element stack array. Attackers who control the callout argument passed to Page.add_freetext_annot() can supply four or more points to overwrite the stack frame, crashing the process or executing code.
Published: 2026-11-02
Score: 7.7 High
EPSS: < 1% Very Low
KEV: No
Impact: Stack Buffer Overflow
Action: Patch Now
AI Analysis

Impact

A stack-based buffer overflow exists in the PyMuPDF library within the JM_set_annot_callout_line() function. The vulnerability is triggered when an attacker supplies four or more callout points to the Page.add_freetext_annot() API. The copy operation writes the extra points into a fixed three-element array, corrupting adjacent stack data. As a result, an attacker can crash the process or potentially execute arbitrary code if the overflow is exploited successfully.

Affected Systems

All PyMuPDF releases before version 2.0, including the 1.25.3 line, are affected. The vendor is PyMuPDF.

Risk and Exploitability

The vulnerability carries a CVSS score of 7.7, indicating high severity. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires that an attacker control the callout argument to Page.add_freetext_annot(); this typically occurs in environments where the library is used to process untrusted input. If the attacker can supply a malicious callout, the overflow could cause a denial of service or remote code execution in the process executing the library.

Generated by OpenCVE AI on November 3, 2026 at 13:31 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade PyMuPDF to version 2.0 or later, which removes the vulnerable function code.
  • Adjust any scripts or applications that call Page.add_freetext_annot() to enforce a maximum of three callout points, or otherwise sanitize input before passing it to the API.
  • If an upgrade is not feasible, consider sandboxing the library or running it with restricted privileges to limit the impact of a potential stack overflow and to contain crashes or code execution.

Generated by OpenCVE AI on November 3, 2026 at 13:31 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 03 Nov 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-787
References
Metrics threat_severity

None

threat_severity

Important


Mon, 02 Nov 2026 22:30:00 +0000

Type Values Removed Values Added
Description PyMuPDF 1.25.3 before 2.0 contains a stack-based buffer overflow vulnerability in JM_set_annot_callout_line() that copies a caller-supplied number of callout points into a fixed three-element stack array. Attackers who control the callout argument passed to Page.add_freetext_annot() can supply four or more points to overwrite the stack frame, crashing the process or executing code.
Title PyMuPDF 1.25.3 before 2.0 Stack Buffer Overflow via add_freetext_annot() Callout
Weaknesses CWE-121
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 7.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-11-02T22:16:12.885Z

Reserved: 2026-11-02T21:08:16.717Z

Link: CVE-2026-120752

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-11-02T23:17:20.243

Modified: 2026-11-03T16:25:21.310

Link: CVE-2026-120752

cve-icon Redhat

Severity : Important

Publid Date: 2026-11-02T22:16:12Z

Links: CVE-2026-120752 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-11-03T13:45:13Z

Weaknesses