CVE-2026-93653
MediumCVSS 5.5Exploitation Probability (EPSS)
Low risk2th percentile - higher than 2% of all known CVEs
Summary
A denial of service flaw was found in Poppler's Splash backend. A crafted PDF with tiling-pattern geometry approaching the int32 boundary can cause SplashOutputDev::tilingPatternFill to compute an attacker-controlled repeat count that drives an excessively long loop in the pattern-fill scanline routine, without a corresponding memory allocation. An attacker could exploit this by supplying a malicious PDF to an application that renders it via Poppler's Splash backend, causing the rendering process to consume 100% CPU for an attacker-controlled, extended duration.
Risk Assessment
An attacker can cause prolonged CPU consumption in the rendering process, leading to denial of service for applications using Poppler Splash.
Recommendation
Update Poppler to a patched version and consider limiting CPU resources for processes rendering untrusted PDF files.
Other vulnerabilities in Poppler
See all- CVE-2017-15565High
In Poppler 0.59.0, a NULL Pointer Dereference exists in the GfxImageColorMap::getGrayLine() function in GfxState.cc via a crafted PDF document.
- CVE-2017-14977High
The FoFiTrueType::getCFFBlock function in Poppler 0.59.0 has a NULL pointer dereference vulnerability due to lack of validation of a table pointer, which allows an attacker to launch a denial of service attack.
- CVE-2017-14976High
The FoFiType1C::convertToType0 function in Poppler 0.59.0 has a heap-based buffer over-read vulnerability when encountering an out-of-bounds font dictionary index. This can be exploited by an attacker to launch a denial of service attack.
- CVE-2017-14975High
The FoFiType1C::convertToType0 function in Poppler 0.59.0 has a NULL pointer dereference vulnerability because a data structure is not initialized, allowing an attacker to launch a denial of service attack.
- CVE-2017-14929High
In Poppler 0.59.0, memory corruption occurs in a call to Object::dictLookup() in Object.h after a repeating series of Gfx::display, Gfx::go, Gfx::execOp, Gfx::opFill, Gfx::doPatternFill, Gfx::doTilingPatternFill, and Gfx::drawForm calls. This is a different vulnerability than CVE-2017-14519.
- CVE-2017-14617High
In Poppler 0.59.0, a floating point exception occurs in the ImageStream class in Stream.cc, which may lead to a potential attack when handling malicious PDF files.
- CVE-2017-14520High
In Poppler 0.59.0, a floating point exception occurs in Splash::scaleImageYuXd() in Splash.cc, which may lead to a potential attack when handling malicious PDF files.
- CVE-2017-14519High
In Poppler 0.59.0, memory corruption occurs in a call to Object::streamGetChar in Object.h after a repeating series of Gfx::display, Gfx::go, Gfx::execOp, Gfx::opShowText, and Gfx::doShowText calls (aka a Gfx.cc infinite loop).
- CVE-2017-14518High
In Poppler 0.59.0, a floating point exception exists in the isImageInterpolationRequired() function in Splash.cc via a crafted PDF document.
- CVE-2017-2820High
An exploitable integer overflow vulnerability exists in the JPEG 2000 image parsing functionality of Poppler 0.53.0. Opening a specially crafted PDF file can lead to an overflow, resulting in out of bounds memory overwrite on the heap and potential arbitrary code execution.
Original NVD description (English source)
A denial of service flaw was found in Poppler's Splash backend. A crafted PDF with tiling-pattern geometry approaching the int32 boundary can cause SplashOutputDev::tilingPatternFill to compute an attacker-controlled repeat count that drives an excessively long loop in the pattern-fill scanline routine, without a corresponding memory allocation. An attacker could exploit this by supplying a malicious PDF to an application that renders it via Poppler's Splash backend, causing the rendering process to consume 100% CPU for an attacker-controlled, extended duration.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

