Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-10118

CVE-2026-10118: Poppler Splash Backend RCE Vulnerability

CVE-2026-10118 is a remote code execution flaw in Poppler's Splash backend caused by integer overflow in PDF rendering. Attackers can exploit this to execute arbitrary code. This article covers technical details, impact, and mitigation.

Published:

CVE-2026-10118 Overview

CVE-2026-10118 is an integer overflow vulnerability in the Splash rendering backend of Poppler, an open-source PDF rendering library used by numerous Linux desktop applications and document viewers. The flaw resides in the tilingPatternFill function, where arithmetic on attacker-controlled values overflows before a heap allocation. The undersized buffer is then written past its bounds during pattern rendering, producing a heap-based out-of-bounds write. An attacker delivers exploitation through a crafted PDF that the victim opens or previews. Successful exploitation can lead to arbitrary code execution, information disclosure, or denial of service in the context of the PDF-processing application. The weakness is classified under [CWE-190] Integer Overflow or Wraparound.

Critical Impact

A malicious PDF rendered by a vulnerable Poppler build can trigger a heap out-of-bounds write, enabling code execution under the user account that opened the file.

Affected Products

  • Poppler PDF rendering library (Splash backend)
  • Linux distributions packaging vulnerable Poppler builds (see Red Hat advisory)
  • Applications linking Poppler for PDF rendering, including Evince, Okular, and pdftoppm/pdftocairo utilities

Discovery Timeline

  • 2026-06-01 - CVE-2026-10118 published to NVD
  • 2026-06-01 - Last updated in NVD database

Technical Details for CVE-2026-10118

Vulnerability Analysis

The defect lives in Poppler's Splash backend, the software rasterizer responsible for painting PDF content into pixel buffers. The tilingPatternFill routine implements PDF tiling patterns, which repeat a small painted cell across a bounding region. To prepare that cell, the function multiplies tile dimensions and stride values derived from PDF objects and then allocates a heap buffer to hold the rendered tile.

When attacker-influenced inputs make the multiplication exceed the maximum value of the integer type, the result wraps to a small number. The subsequent allocation returns a buffer far smaller than the renderer expects. Pattern painting then writes the full, untruncated tile into that buffer, corrupting adjacent heap metadata and objects.

Exploitation requires user interaction because the victim must open or preview the malicious PDF. The attack vector is local in CVSS terms, but PDFs reach users routinely through email attachments, web downloads, and file shares.

Root Cause

The root cause is missing overflow validation on the product of tile width, height, and bytes-per-row used as an allocation size argument inside tilingPatternFill. Poppler does not check the multiplication against SIZE_MAX or use checked-arithmetic helpers before calling the allocator.

Attack Vector

An attacker crafts a PDF that defines a tiling pattern with dimensions and color components engineered to overflow the size calculation. When a vulnerable viewer or command-line tool renders the document, the undersized allocation is followed by an out-of-bounds heap write controlled by the pattern's pixel data. See the Poppler upstream tracking item and the Red Hat advisory for further technical context.

Detection Methods for CVE-2026-10118

Indicators of Compromise

  • Crashes or segmentation faults in processes linking libpoppler or libpoppler-glib while rendering PDFs
  • PDF files containing tiling pattern dictionaries with unusually large BBox, XStep, or YStep values
  • Unexpected child processes spawned from document viewers such as evince, okular, or xpdf shortly after a PDF is opened
  • Heap corruption signatures recorded by glibc malloc checks or AddressSanitizer in PDF tooling

Detection Strategies

  • Inventory installed Poppler packages across endpoints and compare versions against vendor fixed releases referenced in the Red Hat bug report
  • Run untrusted PDFs through a sandboxed pdftoppm instance built with AddressSanitizer to surface the out-of-bounds write
  • Parse incoming PDFs at the mail or web gateway and flag documents declaring tiling patterns with extreme dimension parameters

Monitoring Recommendations

  • Alert on abnormal termination of PDF viewer processes followed by execution of shells or scripting interpreters
  • Monitor EDR telemetry for memory-protection violations in Poppler-linked binaries
  • Track package management events that install or downgrade poppler, poppler-utils, and language bindings on production hosts

How to Mitigate CVE-2026-10118

Immediate Actions Required

  • Apply the Poppler updates published by your Linux distribution as soon as they are available
  • Restrict opening PDFs from untrusted sources on systems that cannot be patched immediately
  • Render unknown PDFs inside sandboxed or containerized viewers that limit filesystem and network access
  • Disable automatic PDF previews in file managers and mail clients until patched packages are deployed

Patch Information

Refer to the Red Hat Security advisory for CVE-2026-10118 and the upstream Poppler work item #1715 for fixed versions and backported patches. Distribution maintainers ship updated poppler packages through their standard security channels.

Workarounds

  • Route PDF rendering through alternative engines that do not use Poppler's Splash backend where operationally feasible
  • Strip or reject PDFs containing tiling patterns at the gateway using a PDF-aware content filter
  • Run document viewers under firejail, bubblewrap, or equivalent confinement to contain heap corruption impact
bash
# Example: update Poppler on Red Hat-based systems once the fixed package is published
sudo dnf check-update poppler poppler-utils poppler-glib
sudo dnf upgrade --security poppler poppler-utils poppler-glib
rpm -q poppler poppler-utils

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.