Skip to main content

Dia CVE-2026-77652

| EUVDEUVD-2026-66675 HIGH
Heap-based Buffer Overflow (CWE-122)
2026-08-26 fedora GHSA-w4q3-279c-xvrv
7.8
CVSS 3.1 · Vendor: fedora
Share

Severity by source

Vendor (fedora) PRIMARY
7.8 HIGH
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
vuln.today AI
7.8 HIGH

File-parsing attack requires local user to open the crafted file (AV:L, UI:R); attacker needs no system privileges to deliver it (PR:N); heap overflow yields full C/I/A impact.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (fedora).

CVSS VectorVendor: fedora

CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Analysis Generated
Aug 26, 2026 - 19:51 vuln.today
CVE Published
Aug 26, 2026 - 19:21 cve.org
HIGH 7.8

DescriptionCVE.org

A heap-based buffer overflow vulnerability exists in the Dia diagram editor WPG file format importer.

In plug-ins/wpg/wpg-import.c, the WPG import renderer allocates a fixed palette with:

ren->pPal = g_new0(WPGColorRGB, 256);

When handling a WPG_COLORMAP record, the parser reads a start index (i16) and number of colors (iNum16) from the file and reads palette data with:

bRet &= (iNum16 == (int)fread(&ren->pPal[i16], sizeof(WPGColorRGB), iNum16, f));

The only bounds-related check is if (i16 >= 0 && i16 <= iSize), where iSize is the WPG record size-not the palette capacity. There is no validation that i16 is less than 256 or that i16 + iNum16 does not exceed 256.

A malicious WPG file can supply i16=256 and iNum16=264. That causes fread() to write 792 bytes starting at &pPal[256], while the palette buffer is only 768 bytes (256 entries × 3 bytes). This overflows into adjacent heap metadata and can crash Dia (SIGABRT / malloc corruption errors) or, depending on heap layout and exploit primitives, potentially lead to arbitrary code execution.

Exploitation requires convincing a user to open a crafted WPG file via Dia's file dialog, command line, or file association. No special privileges are required to deliver the file to the victim.

Affected component: WPG parser (plug-ins/wpg/wpg-import.c). Affected versions: all Dia versions containing this code path (reporter tested Dia 0.98+git20260221-1; issue present on upstream master as of 2026-08-21).

AnalysisAI

Heap-based buffer overflow in the Dia diagram editor's WPG file importer allows arbitrary code execution or process crash when a user opens a crafted WPG file. The WPG color palette buffer is allocated for exactly 256 entries (768 bytes), but the COLORMAP record parser fails to validate that the supplied start index (i16) or total entry count (iNum16) stay within that bound, allowing a malicious file to drive fread() to write beyond the heap allocation. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
Craft malicious WPG file with i16=256, iNum16=264
Delivery
Deliver file to victim via email or download
Exploit
Victim opens file in Dia
Execution
WPG parser calls fread() past palette buffer end
Persist
Heap metadata corrupted
Impact
Process crash or attacker-controlled code execution

Vulnerability AssessmentAI

Exploitation Exploitation requires the victim to actively open a crafted WPG file using Dia - this can occur via the application's file dialog, a command-line invocation (dia file.wpg), or a registered desktop file association that launches Dia automatically when a .wpg file is double-clicked. … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The CVSS 3.1 vector CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H scores 7.8 and accurately reflects the attack surface: exploitation is local and file-triggered rather than network-exposed, substantially lowering opportunistic reach. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario An attacker crafts a WPG file containing a COLORMAP record with i16=256 and iNum16=264, then delivers it to a target user via email attachment, download link, or shared network drive. When the victim opens the file through Dia's file dialog, command-line invocation, or a registered file association, the WPG parser calls fread() writing 792 bytes into a 768-byte heap buffer, corrupting adjacent heap metadata. …
Remediation No vendor-released patched version has been identified at time of analysis; upstream tracking is at GNOME GitLab issue #580 (https://gitlab.gnome.org/GNOME/dia/-/issues/580) and Red Hat Bugzilla #2520884 (https://bugzilla.redhat.com/show_bug.cgi?id=2520884). … Detailed patch versions, workarounds, and compensating controls in full report.

Recommended ActionAI

Within 24 hours: inventory systems running Dia and notify users to avoid opening WPG files from untrusted sources; escalate to application owners and document any business-critical Dia workflows. …

Sign in for detailed remediation steps and compensating controls.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

CVE-2026-77652 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy