Logo
componentpoppler
Name
poppler
Version
22.04.0
Type
library
Description
Poppler is a PDF rendering library based on the xpdf-3.0 code base
Licenses
GPL-2.0-only
PURL
-
CPE
cpe:2.3:*:freedesktop:poppler:22.04.0:*:*:*:*:*:*:*

Other Versions#


Project
Branch
Version
master
25.12.0
scarthgap
23.04.0

Patches#


#
Title
Author
Resolve
1
JBIG2Stream: Fix crash on broken file
Albert Astals Cid <aacid@kde.org>
CVE-2021-30860
CVE-2022-38171
2
Annots: Just return the std::vector instead of two getters
Albert Astals Cid <aacid@kde.org>
CVE-2025-52886
3
Do not overwrite all our build flags
=?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
4
PSStack::roll: Protect against doing int = -INT_MIN
Albert Astals Cid <aacid@kde.org>
CVE-2025-32364
5
JBIG2Bitmap::combine: Fix crash on malformed files
Albert Astals Cid <aacid@kde.org>
CVE-2024-56378
6
Annot: Do refcount with shared_ptr
Sune Vuorela <sune@vuorela.dk>
CVE-2025-52886
7
Make sure regex doesn't stack overflow by limiting it
Albert Astals Cid <aacid@kde.org>
CVE-2025-43718
8
More unicode vectors; fewer raw pointers
Sune Vuorela <sune@vuorela.dk>
CVE-2024-6239
9
Fix crash in pdfseparate
Sune Vuorela <sune@vuorela.dk>
CVE-2025-50420
10
Link: Just return the std::vector instead of two getters
Albert Astals Cid <aacid@kde.org>
CVE-2025-52886
11
pdfinfo: Fix crash in broken documents when using -dests
Albert Astals Cid <aacid@kde.org>
CVE-2024-6239
12
Minic GNU basename() API for non-glibc library e.g. musl
Randy MacLeod <Randy.MacLeod@windriver.com>
13
Move isOk check to inside JBIG2Bitmap::combine
Albert Astals Cid <aacid@kde.org>
CVE-2025-32365
14
Properly verify adbe.pkcs7.sha1 signatures.
Juraj sarinay <juraj@sarinay.com>
CVE-2025-43903
15
Limit ammount of annots per document/page
Sune Vuorela <sune@vuorela.dk>
CVE-2025-52886
16
OutlineItem::open: Fix crash on malformed files
Albert Astals Cid <aacid@kde.org>
CVE-2023-34872
17
Check for duplicate entries
Kevin Backhouse <kevinbackhouse@github.com>
CVE-2025-52885

Vulnerabilities#


Name
Analysis
Description
Patched
Poppler is a PDF rendering library. Versions prior to 25.06.0 use `std::atomic_int` for reference counting. Because `std::atomic_int` is only 32 bits, it is possible to overflow the reference count and trigger a use-after-free. Version 25.06.0 patches the issue.
Patched
Poppler ia a library for rendering PDF files, and examining or modifying their structure. A use-after-free (write) vulnerability has been detected in versions Poppler prior to 25.10.0 within the StructTreeRoot class. The issue arises from the use of raw pointers to elements of a `std::vector`, which can lead to dangling pointers when the vector is resized. The vulnerability stems from the way that refToParentMap stores references to `std::vector` elements using raw pointers. These pointers may become invalid when the vector is resized. This vulnerability is a common security problem involving the use of raw pointers to `std::vectors`. Internally, `std::vector `stores its elements in a dynamically allocated array. When the array reaches its capacity and a new element is added, the vector reallocates a larger block of memory and moves all the existing elements to the new location. At this point if any pointers to elements are stored before a resize occurs, they become dangling pointers once the reallocation happens. Version 25.10.0 contains a patch for the issue.
Patched
An issue in the pdfseparate utility of freedesktop poppler v25.04.0 allows attackers to cause an infinite recursion via supplying a crafted PDF file. This can lead to a Denial of Service (DoS).
Patched
NSSCryptoSignBackend.cc in Poppler before 25.04.0 does not verify the adbe.pkcs7.sha1 signatures on documents, resulting in potential signature forgeries.
Patched
Poppler 24.06.1 through 25.x before 25.04.0 allows stack consumption and a SIGSEGV via deeply nested structures within the metadata (such as GTS_PDFEVersion) of a PDF document, e.g., a regular expression for a long pdfsubver string. This occurs in Dict::lookup, Catalog::getMetadata, and associated functions in PDFDoc, with deep recursion in the regex executor (std::__detail::_Executor).
Patched
Poppler before 25.04.0 allows crafted input files to trigger out-of-bounds reads in the JBIG2Bitmap::combine function in JBIG2Stream.cc because of a misplaced isOk check.
Patched
A floating-point exception in the PSStack::roll function of Poppler before 25.04.0 can cause an application to crash when handling malformed inputs associated with INT_MIN.
Patched
A flaw was found in the Poppler's Pdfinfo utility. This issue occurs when using -dests parameter with pdfinfo utility. By using certain malformed input files, an attacker could cause the utility to crash, leading to a denial of service.
Patched
libpoppler.so in Poppler through 24.12.0 has an out-of-bounds read vulnerability within the JBIG2Bitmap::combine function in JBIG2Stream.cc.
Patched
A vulnerability in Outline.cc for Poppler prior to 23.06.0 allows a remote attacker to cause a Denial of Service (DoS) (crash) via a crafted PDF file in OutlineItem::open.
Exploitable
Poppler prior to and including 22.08.0 contains an integer overflow in the JBIG2 decoder (JBIG2Stream::readTextRegionSeg() in JBIGStream.cc). Processing a specially crafted PDF file or JBIG2 image could lead to a crash or the execution of arbitrary code. This is similar to the vulnerability described by CVE-2022-38171 in Xpdf.
Patched
Xpdf prior to version 4.04 contains an integer overflow in the JBIG2 decoder (JBIG2Stream::readTextRegionSeg() in JBIG2Stream.cc). Processing a specially crafted PDF file or JBIG2 image could lead to a crash or the execution of arbitrary code. This is similar to the vulnerability described by CVE-2021-30860 (Apple CoreGraphics).
Patched
An integer overflow was addressed with improved input validation. This issue is fixed in Security Update 2021-005 Catalina, iOS 14.8 and iPadOS 14.8, macOS Big Sur 11.6, watchOS 7.6.2. Processing a maliciously crafted PDF may lead to arbitrary code execution. Apple is aware of a report that this issue may have been actively exploited.