All vulnerabilities
CVE-2026-113786GHSA-5hx5-vpf9-5wcv

pypdf: Unvalidated JPEG image data loading

py-pdf pypdfpipLibraries & packages
CVSS
2.3Low
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.38%Chance of exploitation activity in the next 30 days, higher than 30% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in6.21.1Fixed versionGitHub
Published21 Oct 2026Updated 21 Oct 2026CVE List

What fixes it

  • 6.21.1pypdf, pipGitHub
  • 6.21.1pypdf, PyPIOSVpip install "pypdf>=6.21.1"

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

Impact

An attacker who uses this vulnerability can craft a PDF which leads to arbitrary image parsers being called. This requires loading an image which claims to use the /DCTDecode filter (JPEG data).

Users which do not have the optional *Pillow* dependency installed in their environment are not affected.

Patches

This has been fixed in pypdf==6.21.1.

Workarounds

If you cannot upgrade yet, consider applying the changes from PR #4222.

Text from GitHub Advisory Database

Affected versions 53

  • pypdf, pip< 6.21.1GitHub
  • pypdfaffected: < 6.21.1CVE List
  • pypdf, PyPIfrom first release, fixed in 6.21.1OSV
  • pypdf, PyPI1.0OSV
  • pypdf, PyPI1.1OSV
  • pypdf, PyPI1.10OSV
  • pypdf, PyPI1.11OSV
  • pypdf, PyPI1.12OSV
  • pypdf, PyPI1.13OSV
  • pypdf, PyPI1.2OSV
  • pypdf, PyPI1.3OSV
  • pypdf, PyPI1.4OSV
  • pypdf, PyPI1.5OSV
  • pypdf, PyPI1.6OSV
  • pypdf, PyPI1.7OSV
  • pypdf, PyPI1.8OSV
  • pypdf, PyPI1.9OSV
  • pypdf, PyPI3.1.0OSV
  • pypdf, PyPI3.10.0OSV
  • pypdf, PyPI3.11.0OSV
  • pypdf, PyPI3.11.1OSV
  • pypdf, PyPI3.12.0OSV
  • pypdf, PyPI3.12.1OSV
  • pypdf, PyPI3.12.2OSV
  • pypdf, PyPI3.13.0OSV
  • pypdf, PyPI3.14.0OSV
  • pypdf, PyPI3.15.0OSV
  • pypdf, PyPI3.15.1OSV
  • pypdf, PyPI3.15.2OSV
  • pypdf, PyPI3.15.3OSV
  • pypdf, PyPI3.15.4OSV
  • pypdf, PyPI3.15.5OSV
  • pypdf, PyPI3.16.0OSV
  • pypdf, PyPI3.16.1OSV
  • pypdf, PyPI3.16.2OSV
  • pypdf, PyPI3.16.3OSV
  • pypdf, PyPI3.16.4OSV
  • pypdf, PyPI3.17.0OSV
  • pypdf, PyPI3.17.1OSV
  • pypdf, PyPI3.17.2OSV
  • pypdf, PyPI3.17.3OSV
  • pypdf, PyPI3.17.4OSV
  • pypdf, PyPI3.2.0OSV
  • pypdf, PyPI3.2.1OSV
  • pypdf, PyPI3.3.0OSV
  • pypdf, PyPI3.4.0OSV
  • pypdf, PyPI3.4.1OSV
  • pypdf, PyPI3.5.0OSV
  • pypdf, PyPI3.5.1OSV
  • pypdf, PyPI3.5.2OSV
  • pypdf, PyPI3.6.0OSV
  • pypdf, PyPI3.7.0OSV
  • pypdf, PyPI3.7.1OSV

References 6