Patch Forecast
Amber warning
Patch this week.

CVE-2026-102996 · GHSA-g9cg-prrw-2r8q

pypdf: Possible large memory usage when parsing font data

Risk score
60/100
CVSS
7.5 v3.1
Exploit chance (30 days)
0.3%
Published
30 Sep 2026

Open in the live forecast Today's forecast

What to know

What it is
pypdf is a free and open-source pure-python PDF library. Prior to 6.18.1, a crafted PDF can provide a TrueType or Type1 simple font with an unusually large /Widths array, causing pypdf/_font.py Font._collect_tt_t1_character_widths to process entries beyond the 256 character codes meaningful for a simple font and consu…
Affected
pypdf (pip) < 6.18.1
Fix
Upgrade pypdf to 6.18.1 or later.
Exploitation
No known exploitation

Story map

Story map: pypdfTHE FLAWSTHE FIXCVE-2026-102996Possible large memory usagewhen parsing font dataCVSS 7.5 · EPSS 0%CVE-2026-102993Possible large memory usagewhen retrieving Roman pagelabelsCVSS 7.5 · EPSS 0%CVE-2026-102999Possible long runtimes withlarge amount of embedded filesCVSS 7.5 · EPSS 0%CVE-2026-102998Possible long runtimes whengenerating appearance streamsCVSS 7.5 · EPSS 0%Upgrade pypdf6.18.1 · 6.17.0 · 6.19.0or later on your release lineWho is exposedpypdf (pip) < 6.17.0AMBER · PATCH THIS WEEKpypdfpypdf is a free and open-sourcepure-python PDF library. Priorto 6.17.0, a crafted PDF canprovide unusually large Romanpage-label values that causepypdf/_page_labels.py togenerate excessively large…Where it standsNo known exploitationCONNECTS TOSame weaknessDenial of service (CWE-400)254 other warnings in 30 days →Same productEarlier pypdf warnings4 in the last 90 days →
Story map: the flaws, the fix, how it unfolded and what it connects to. Boxes link to the record or article.

At a glance

pypdf: Amber, patch this week. pypdf is a free and open-source pure-python PDF library. Prior to 6.17.0, a crafted PDF can provide unusually large Roman page-label values that cause pypdf/_page_labels.py to generate excessively large numeral strings when an application retrieves document page labels, consuming large amounts of memory and potentiall…

The flaws

  • CVE-2026-102996: Possible large memory usage when parsing font data (CVSS 7.5 · EPSS 0%)
  • CVE-2026-102993: Possible large memory usage when retrieving Roman page labels (CVSS 7.5 · EPSS 0%)
  • CVE-2026-102999: Possible long runtimes with large amount of embedded files (CVSS 7.5 · EPSS 0%)
  • CVE-2026-102998: Possible long runtimes when generating appearance streams (CVSS 7.5 · EPSS 0%)

The fix

Upgrade pypdf: 6.18.1 · 6.17.0 · 6.19.0 or later on your release line

Who is exposed: pypdf (pip) < 6.17.0

Where it stands

  • No known exploitation

Connects to

Why it is Amber

  • CVSS 7.5 high
  • Remotely exploitable without logging in
  • On your watchlist: PyPI

Affected packages

PackageEcosystemVulnerableFixed in
pypdfpip< 6.18.16.18.1

References

Original description

pypdf is a free and open-source pure-python PDF library. Prior to 6.18.1, a crafted PDF can provide a TrueType or Type1 simple font with an unusually large /Widths array, causing pypdf/_font.py Font._collect_tt_t1_character_widths to process entries beyond the 256 character codes meaningful for a simple font and consume excessive memory during operations such as text extraction. This issue is fixed in version 6.18.1.

Last activity 30 Sep 2026. Patch Forecast updates every hour.