# CVE-2026-112894: Pillow quadratic time PDF object identifier reservation denial of service

Source: https://junglewise.ai/threats/cve-2026-112894-pillow-is-a-python-imaging-library-from-5-1-0-until-13-0-0  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-10-19. Updated: 2026-10-19  
License: CC BY 4.0 with a link back

CVE-2026-112894 · Severity: high · CVSS 4 · Published 2026-10-19

Pillow is a Python library used to process and convert images. An attacker can provide a specially crafted multi-frame image that causes excessive CPU consumption when Pillow converts it to a multi-page PDF, resulting in denial of service. The vulnerability stems from inefficient PDF object ID allocation that worsens with each frame.

Technologies: [pillow (PyPI)](https://junglewise.ai/threats/technologies/pillow), [Python Pillow Project Pillow](https://junglewise.ai/threats/technologies/python-pillow-project-pillow). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi), [Python Pillow Project](https://junglewise.ai/threats/vendors/python-pillow-project).

## Quick answers

**Is CVE-2026-112894 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-112894 being exploited in the wild.

**How severe is CVE-2026-112894?** High severity, with a CVSS score of 4, published 19 October 2026.

**Which products and versions are affected?** pillow (PyPI) >= 5.1.0, < 13.0.0, ECOSYSTEM:introduced=5.1.0,fixed=13.0.0; Python Pillow Project Pillow 5.1.0 through 12.x.x.

**Is there a fix for CVE-2026-112894?** Yes. pillow (PyPI): upgrade to 13.0.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-112894 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-112894?** Check whether you run pillow (PyPI) or Python Pillow Project Pillow at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- pillow (PyPI): upgrade to 13.0.0 or later

  ```sh
  pip install "pillow>=13.0.0"
  ```


## Technical details

The PdfParser.next_object_id() method in Pillow versions 5.1.0 through 13.0.0 exhibits quadratic time complexity when save_all is enabled, as it rebuilds and scans all previously reserved identifiers for each new object. An attacker can exploit this by supplying a multi-frame image with a large declared frame count (such as a crafted APNG) to an application that converts images to multipage PDFs. The fix in version 13.0.0 assigns PDF object IDs in constant time by tracking only the maximum ID rather than rescanning all prior entries.

## Affected products

- Python Pillow Project Pillow 5.1.0 through 12.x.x

## Identifiers

- CVE-2026-112894
- GHSA-jg86-v3jv-hrpm

## Timeline

- 2026-10-19: disclosed

## References

- [https://github.com/python-pillow/Pillow/commit/f6a852555f1a1bdff7781abf25f1a3b8bd6ce6cb](https://github.com/python-pillow/Pillow/commit/f6a852555f1a1bdff7781abf25f1a3b8bd6ce6cb)
- [https://github.com/python-pillow/Pillow/releases/tag/13.0.0](https://github.com/python-pillow/Pillow/releases/tag/13.0.0)

## Related threats

- [Pillow heap buffer overflow in TIFF encoder with mismatched geometry tags](https://junglewise.ai/threats/cve-2026-128067-pillow-heap-buffer-overflow-saving-tiff-with-libtiff-when-tags)
- [Pillow memory denial of service in TIFF and EXIF parsing](https://junglewise.ai/threats/cve-2026-128066-pillow-memory-dos-in-tiff-and-exif-ifd-parsing-via-overlapping)
- [Pillow libtiff encoder memory disclosure and crash via crafted TIFF tags](https://junglewise.ai/threats/cve-2026-112902-pillow-memory-disclosure-and-segfault-in-libtiff-encoder-via)
- [Pillow EPS load decompression bomb check bypass in Ghostscript scaling](https://junglewise.ai/threats/cve-2026-112899-pillow-eps-load-scale-lets-ghostscript-render-past-the)
- [Pillow heap buffer overflow in bundled libopenjp2](https://junglewise.ai/threats/pillow-bundled-libopenjp2-2-5-4-in-all-wheels-since-11-1-0-carries-osv-cd00a842)
