SumatraPDF
CVE-2026-107737
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDeliver crafted CHM to victim
-
ExploitVictim opens file via IE fallback backend
-
ExecutionSigned its:// host used as gHtmlWindows index
-
ImpactOut-of-bounds read and invalid callback crash process
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Array index validation
|
| Exploitation Conditions | Exploitation requires the victim to open an attacker-crafted CHM file in SumatraPDF, AND the vulnerable IE fallback backend must be in use - which only happens when Microsoft WebView2 is absent or cannot initialize on the host. The crafted CHM must embed an its:// URL whose signed host component encodes a negative or out-of-range window identifier that FindHtmlWindowById() uses as an index into gHtmlWindows. Limiting factors: requires user interaction (opening the file), is local-only (no remote/network trigger), and the WebView2-absent precondition is non-default on current Windows, so systems with a working WebView2 runtime are not affected via this path. No authentication is required (PR:N), but impact is limited to a crash of the SumatraPDF process. |
| Impact | This is a moderate-severity denial-of-service issue, not a high-priority emergency. The supplied CVSS 4.0 score of 5.7 is driven entirely by availability impact (VA:H) with no confidentiality or integrity impact (VC:N/VI:N) - the advisory explicitly describes an out-of-bounds pointer read and invalid object callback dereference ending in process termination, i.e. a crash, not code execution. Several signals lower real-world risk: the vector is local (AV:L), requires user interaction (UI:P - the victim must open a malicious file), and carries an attack requirement (AT:P) because the vulnerable IE fallback path only runs when WebView2 is absent or cannot initialize, which is non-default on current Windows installs. EPSS is not provided, KEV status is NO (no active exploitation), and no public exploit code is referenced. A fix commit is public (596c7e2) which discloses the root cause (unvalidated signed index from an its:// URL host, CWE-129), but a disclosed patch is not the same as a weaponized exploit. Note that no fixed release version exists yet - only an unreleased commit - so remediation currently requires building from source or waiting for a release. Net assessment: genuine but low-to-moderate priority, bounded by multiple exploitation preconditions and crash-only impact. |
| Exploit ScenarioDerived | An attacker crafts a malicious CHM file whose embedded its:// URL carries a negative or out-of-range signed host value, then delivers it to a victim via email or download. When the victim opens it in SumatraPDF 3.6.1 or earlier on a system where WebView2 is unavailable, the IE fallback backend uses the attacker-controlled value as an array index into gHtmlWindows, causing an out-of-bounds read and process crash. No public exploit code is identified, though the public fix commit discloses the exact mechanism. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Denial of service in SumatraPDF 3.6.1 and earlier, and in pre-release 3.7.0.20369, occurs when the reader falls back to its legacy IE-based HTML/CHM backend - a path taken only when Microsoft WebView2 is absent or cannot initialize - and opens an attacker-crafted CHM file. The signed host component of an its:// URL is accepted by ParseProtoUrl() and then used directly as an index into the gHtmlWindows collection by FindHtmlWindowById(), so a negative or otherwise out-of-range window identifier triggers an out-of-bounds pointer read, an invalid object callback dereference, and termination of the SumatraPDF process. Exploitation is local and requires the victim to open the malicious document (user interaction, unauthenticated per PR:N in the assessed vector); no public exploit code or active exploitation has been identified at time of analysis, and impact is limited to a crash of a single process rather than code execution, data disclosure, or persistence.
RemediationAI
No vendor-released patched version was confirmed as of this review; the upstream fix is available only as commit 596c7e26e983549a77a3a38cae1147ab73792929, which adds an isValidIndex(windowId) guard in FindHtmlWindowById() - treat this as an upstream fix (PR/commit) with no independently confirmed tagged release, so build from commit 596c7e2 or later if you compile SumatraPDF yourself, and track GHSA-8p34-f32f-7rmq for the eventual patched build. The most effective compensating control is to ensure the legacy IE fallback backend is never used: install, repair, or keep the Microsoft WebView2 Evergreen Runtime current so SumatraPDF takes the WebView2 path, which removes the affected code path entirely - the trade-off is changed HTML/CHM rendering behavior and rendered content that differs from the legacy engine, plus a new dependency you must keep patched. Where WebView2 cannot be deployed, treat CHM files as untrusted input: block CHM downloads at the email gateway/proxy, remove the .chm file association or open untrusted CHMs only in a disposable VM or low-privilege sandbox, and disable the ITS protocol handler if your deployment does not require it (side effect: its:// links and some embedded CHM navigation stop working). Note that antivirus and generic "defense in depth" hardening do not address this specific index-validation gap, and because the bug is local-only with user interaction, none of these mitigations should be applied urgently at the cost of breaking document workflows.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
SumatraPDF's HTML/CHM viewing support has historically been served by two backends: a modern Microsoft WebView2 renderer and a legacy IE-based fallback used when WebView2 is missing or fails to initialize. In Ctrl+H/CHM handling, the application registers an internal its:// protocol; ParseProtoUrl() parses the URL host and, in the affected code, accepts a signed decimal window identifier verbatim. That value flows into FindHtmlWindowById() in src/wingui/HtmlWindow.cpp, where it is used to index the global gHtmlWindows vector without bounds validation. The relevant class of defect is CWE-129 (Improper Validation of Array Index), and the underlying container's operator[] is unsafe by design here - its ReportIf/assert path is diagnostic-only and still performs the out-of-bounds element read, so debug instrumentation does not prevent the fault. The upstream fix (commit 596c7e26e983549a77a3a38cae1147ab73792929) inserts an isValidIndex(windowId) guard that returns nullptr for out-of-range identifiers, relying on existing null checks in callers. Because the vector holds pointers, an out-of-range index yields a garbage pointer that is subsequently used in an object callback, converting a simple indexing error into an invalid dereference and process abort. The CPE cpe:2.3:a:sumatrapdfreader:sumatrapdf:*:*:*:*:*:*:*:* confirms all released SumatraPDF builds are treated as in scope, with the practical exposure narrowed by the WebView2 precondition.
Know when Sumatrapdf gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Local file-open with required user interaction (UI:R); AC:H reflects the WebView2-absent precondition outside attacker control; only a process crash, so A:H and C/I:N.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
DescriptionCVE.org
SumatraPDF is a multi-format reader for Windows. In 3.6.1 and earlier, and in pre-release 3.7.0.20369 when WebView2 is absent or cannot initialize, ParseProtoUrl() accepts the signed host component of an its:// URL and FindHtmlWindowById() uses it directly as an index into gHtmlWindows. Opening a crafted CHM through the IE fallback backend with a negative or otherwise out-of-range window identifier can cause an out-of-bounds pointer read followed by an invalid object callback dereference and process termination. No fixed version is available as of this review.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Affected Products (CPE)CVE.org
More in Sumatrapdf
View allSumatraPDF 3.5.2 and earlier on Windows contains an untrusted search path vulnerability in the Advanced Options feature
SumatraPDF 3.5.2 and earlier on Windows allows arbitrary code execution when a user opens a PDF and selects "Show in fol
SumatraPDF versions 3.5.0 through 3.5.2 fail to validate TLS certificates during software updates and execute installers
Heap-based buffer overflow in SumatraPDF before 2.1 allows remote attackers to execute arbitrary code via a crafted PDF
Heap-based buffer overflow in SumatraPDF before 2.1 allows remote attackers to execute arbitrary code via a crafted PDF
SumatraPDF versions 3.5.2 and earlier are vulnerable to a heap buffer over-read in the MOBI file parser due to incomplet
SumatraPDF on Windows is vulnerable to a denial-of-service attack through a maliciously crafted Mobi file that triggers
A buffer overflow in SumatraPDF Reader v3.4.6 allows attackers to cause a Denial of Service (DoS) via a crafted text fil
Local code execution in SumatraPDF 3.6.1 and earlier on Windows is possible when a user opens an attacker-supplied docum
Parsing a malformed PDF in SumatraPDF 3.6.1 can crash the reader through a signed integer overflow in the PageLabels han
Command-line argument injection in SumatraPDF 3.5.2 and earlier lets an attacker-controlled SyncTeX source filename esca
Argument injection in the AI translation feature of SumatraPDF 3.6.1 and earlier allows text placed in a document select
NVD
CVE.org
EPSS
GitHub
Exploit-DB