Skip to main content

Scribus EUVDEUVD-2026-114100

| CVE-2026-104064 HIGH
Integer Overflow or Wraparound (CWE-190)
2026-10-30 VulnCheck GHSA-pxxc-449x-5899
8.5
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft malicious tiled TIFF
  2. Delivery
    Deliver file to Scribus user
  3. Exploit
    Victim imports image, overflow in tile_buf allocation
  4. Execution
    Undersized heap buffer overrun during tile copy
  5. Impact
    Crash or potential code execution

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires a victim to import an attacker-crafted tiled TIFF file (with large TILEWIDTH, TILELENGTH and sample values) into Scribus before 1.6.7; the overflow is triggered in the TIFF tile-buffer allocation path of scimgdataloader_tiff. No authentication is required (PR:N). Limiting factors: exploitation is local and depends on passive user interaction (UI:P) - the attacker cannot trigger it remotely without the user opening the file - and it only affects Scribus versions prior to 1.6.7; reliable code execution additionally depends on heap layout and is not demonstrated in the available sources.

Impact

This is a CWE-190 integer overflow in the Scribus TIFF tile loader (scimgdataloader_tiff) that leads to a heap buffer overflow. The patch commit confirms the mechanism: the original code computed the tile buffer size as 'columns * rows * sizeof(uint32_t)' using unchecked 32-bit values taken directly from attacker-controlled TIFF tile tags, so large TILEWIDTH/TILELENGTH values overflow the multiplication and produce an undersized allocation that is then overrun by TIFFReadTile/_TIFFmemcpy. The vendor CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H, score 8.5) is internally consistent with a file-parsing flaw: no privileges needed, but a local vector and passive user interaction (the victim must import a crafted file). This is NOT remotely wormable and NOT a server-side network flaw - it requires social engineering to get a victim to open a malicious TIFF. No CISA KEV listing and no EPSS score were provided, so widespread-exploitation signals are absent; exploitation status is 'no public exploit identified at time of analysis' (the supplied references are the patch commit, the project repo, the 1.6.7 release note, and a VulnCheck advisory - none is verified working exploit code). The vuln.today decision label is 'this_week', consistent with a patched, high-severity client-side memory-corruption bug that is not under active exploitation. Net: a real priority for anyone running Scribus before 1.6.7, but the client-side/file-import requirement and absence of KEV/EPSS/PoC signals place it below emergency urgency. The description claims code execution is possible, but heap-overflow exploitability depends on heap layout and is not demonstrated in the available sources.

Exploit ScenarioDerived

An attacker crafts a tiled TIFF with oversized tile width, height and sample values and delivers it to a Scribus user (e.g. as a shared design asset or email attachment). When the victim imports the image into Scribus before 1.6.7, the integer overflow produces an undersized heap buffer that is then overflowed during tile copy, crashing the application or potentially executing attacker code. No public exploit was identified in the provided data; code execution is described as possible but not demonstrated.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 30, 2026

Integer overflow in Scribus' TIFF tile loader (scimgdataloader_tiff) before 1.6.7 lets a crafted tiled TIFF corrupt heap memory when a user imports it into the application, crashing Scribus and potentially allowing code execution under the importing user's privileges. The flawed step is the 32-bit size calculation used to allocate the tile buffer (TILEWIDTH x TILELENGTH x sizeof(uint32_t)), so an attacker who supplies large tile width, height and sample values causes an undersized allocation that libtiff then fills with tile data. Triggering it is local and requires passive user interaction (CVSS:4.0 AV:L/PR:N/UI:P; assessed as CVSS:3.1 AV:L/AC:L/PR:N/UI:R), and while the heap corruption is confirmed by the upstream fix, reliable code execution depends on heap layout and is not demonstrated in the available sources; no public exploit was identified at time of analysis, and a vendor patch is available in Scribus 1.6.7.

RemediationAI

Vendor-released patch: upgrade to Scribus 1.6.7 or later, which replaces the vulnerable 32-bit tile size computation with libtiff's TIFFTileSize()/TIFFTileRowSize() values, validates the tile dimensions, clamps partial edge tiles with qMin, and checks the TIFFReadTile return code (upstream commit b3e2be4e0f4063991c0b3af1c1447218ed33f0cc). Distribution packages should be updated once the corresponding 1.6.7 build is available; see https://wiki.scribus.net/canvas/1.6.7_Release and https://www.vulncheck.com/advisories/scribus-before-1.6.7-heap-overflow-via-tiff-tile-buffer-handling for details. No formal vendor workaround is documented for versions that cannot be upgraded; the practical interim control is to avoid importing TIFF images from untrusted sources into Scribus until the patch is applied, for example by pre-converting untrusted TIFFs to a non-tiled raster format (PNG) in a sandboxed or unprivileged converter before import, with the trade-off that conversion adds a workflow step and may alter colour profile or bit-depth fidelity, and by running Scribus with least privilege so that heap corruption cannot escalate beyond the importing user. Those measures reduce exposure but do not remove the underlying overflow, which is only eliminated by the 1.6.7 fix.

Affected VersionsENISA

Scribus 0 <1.6.7

Affected Packages

euvd scribus fix: 1.6.7

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Scribus is a desktop publishing application; its image import pipeline includes ScImgDataLoader_TIFF, a wrapper around libtiff used to read TIFF images placed into documents. In the vulnerable code path, the loader reads TIFFTAG_TILEWIDTH and TIFFTAG_TILELENGTH into 32-bit uint32_t variables and computes tile_buf = _TIFFmalloc(columns * rows * sizeof(uint32_t)) using 32-bit arithmetic, so the multiplication (CWE-190) can wrap to a small value for attacker-chosen tile dimensions, producing a heap buffer far smaller than the tile that TIFFReadTile subsequently writes into it. The upstream commit b3e2be4e0f4063991c0b3af1c1447218ed33f0cc reworks this path: it initialises columns/rows to zero, rejects the image when TIFFGetField fails or either dimension is zero, derives buffer sizing from libtiff's own TIFFTileSize()/TIFFTileRowSize() as tmsize_t instead of a hand-rolled 32-bit product, and aborts when those sizes are non-positive. The fix also computes the per-edge tile fragment width with qMin(columns, image->width() - xt) and height with qMin(rows, image->height() - yt), checks the TIFFReadTile return value and skips the tile on failure, adds an explicit 16-bit conversion branch via convertImageData() for SAMPLEFORMAT_UINT and SAMPLEFORMAT_INT, and bounds the remaining byte copy to tileRowSize, so that partially covered tiles in the right-hand column are no longer copied as full tile rows. The CPE cpe:2.3:a:scribus:scribus:*:*:*:*:*:*:*:* with the 'before 1.6.7' statement defines the affected range; the exact trigger is described in the available sources as importing a tiled TIFF with oversized tile dimensions and sample values.

Know when Scribus 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

Vendor (VulnCheck) PRIMARY 8.5 HIGH
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.8 HIGH

File-parsing flaw requiring a locally delivered crafted TIFF and victim import (AV:L, UI:R), no privileges (PR:N), with heap corruption yielding 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:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Scribus before 1.6.7 contains an integer overflow vulnerability in the scimgdataloader_tiff TIFF loader that allows attackers to trigger a heap overflow via crafted tile dimensions. Attackers can supply a tiled TIFF with large tile width, height and sample values for a user to import, corrupting heap memory to crash Scribus or execute code.

Executive ViewAI

Why It Matters

Scribus, a widely used open-source desktop publishing application, contains a high-severity integer overflow vulnerability (CVE-2026-104064) in its TIFF image loader that can lead to heap corruption and potential code execution when a user imports a specially crafted TIFF file. This affects any employee using Scribus to open untrusted image files, primarily in design, marketing, and document production roles, and could result in unauthorized access to sensitive data or disruption of publishing workflows. Leadership should prioritize patching because the vulnerability is trivially triggered by user interaction and the software is commonly used for handling external assets.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
niche open-source desktop publishing application, limited enterprise footprint
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
High

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +42
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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