VulnSea

python-pillow has 27 CVEs on record. Disclosure cadence is accelerating: 27 in the last 90 days against 0 in the 90 before. The busiest recent month was October 2026 with 27. The median CVSS is 8.7 (high), with 4 rated critical. None have a confirmed exploitation report. The dominant weakness classes are CWE-122 (4) and CWE-407 (3).

CVEs per month

Last 12 months, by publish date

111201020304050607080910
Exploited share
0% vs 1% corpus
Median CVSS
8.7
Publish → KEV
—
Last 90 days
27 prev 0

Products

  • Pillow 27
27
Total CVEs
4
Critical
0
CISA KEV
0
Exploited

python-pillow vulnerabilities

CVEs affecting python-pillow, newest first. Open any entry for full detail, references, and exploit status.

27 CVEsRSS

CVE-2026-112900Critical· 9.2
yesterday

Pillow: Argument Injection in Ghostscript call, potentially leading into RCE

Pillow is a Python imaging library. From 2.6.0 until 13.0.0, Pillow is vulnerable to argument injection when invoking Ghostscript for EPS input. EpsImagePlugin.Ghostscript passes a caller-controlled input filename after -f without conver…

▾ Midnightpython-pillow · Pillowvia CVEORG
CVE-2026-112893High· 8.2
yesterday

Pillow: Invalid free in FreeType glyph rendering when a stroker is active

Pillow is a Python imaging library. From 10.0.0 until 13.0.0, Pillow can free an invalid glyph pointer during FreeType rendering with an active stroker. If FT_Load_Glyph fails, cleanup may call FT_Done_Glyph on an uninitialized or stale …

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112895High· 8.7
yesterday

Pillow: Unbounded recursion parsing a PDF page tree or trailer chain (incomplete fix for CVE-2026-42310)

Pillow is a Python imaging library. From 5.1.0 until 13.0.0, Pillow can exhaust resources while parsing an existing PDF during an append operation. PdfParser follows page-tree child references without cycle or duplication tracking and fo…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112894High· 8.7
yesterday

Pillow: Quadratic-time DoS in PDF save_all (PdfParser.next_object_id)

Pillow is a Python imaging library. From 5.1.0 until 13.0.0, Pillow takes quadratic time to reserve PDF object identifiers when saving many frames with save_all enabled. PdfParser.next_object_id() repeatedly rebuilds and scans all previo…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112897High· 8.7
yesterday

Pillow: TiffDecode returns uninitialized memory as pixels for short JPEG strips

Pillow is a Python imaging library. From 5.3.0 until 13.0.0, Pillow can return uninitialized memory as pixels when libtiff performs a short decode of JPEG-compressed or Group 4 fax TIFF data. The _decodeStrip and _decodeTile buffers can …

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112896High· 8.8
yesterday

Pillow: TIFF encoder ColorMap plane-size mismatch causes a heap out-of-bounds read

Pillow is a Python imaging library. Prior to 13.0.0, Pillow's TIFF encoder can read beyond a ColorMap buffer when retained TIFF metadata has a plane size inconsistent with BitsPerSample. A small TIFF can be opened normally and then retai…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112901Medium· 6.9
yesterday

Pillow: ReDoS in XbmImagePlugin: 512-byte file stalls Image.open() for minutes

Pillow is a Python imaging library. Prior to 13.0.0, Pillow's XBM header parser is vulnerable to regular-expression denial of service. In XbmImageFile._open, when an application calls Image.open() on a small crafted XBM file, XbmImagePlu…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112898Medium· 6.9
yesterday

Pillow: Image.quantize() with empty palette leaks uninitialized stack memory

Pillow is a Python imaging library. From 9.1.0 until 13.0.0, Pillow can disclose uninitialized stack memory when Image.quantize() uses an empty palette. ImagingPaletteCacheUpdate() leaves a local cache array uninitialized when the palett…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112390High· 8.2
yesterday

Pillow: Infinite loop in MIC n_frames when the embedded TIFF

Pillow is a Python imaging library. From 7.2.0 until 13.0.0, Pillow can enter an infinite loop while determining the frame count of a MIC image. MicImageFile inherits TIFF frame traversal, but MicImageFile.tell reports the OLE stream ind…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112394Medium· 6.3
yesterday

Pillow: P;2L and P;4L decoders may read 1 to 3 bytes past the passed buffer size

Pillow is a Python imaging library. Prior to 13.0.0, Pillow's P;2L and P;4L raw decoders can read past the end of an input buffer. ImagingRawDecode calculates a packed-pixel row size, while the unpackers read separately padded bit planes…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112391Medium· 6.3
yesterday

Pillow: PdfParser can recurse without limit in get_value() and linearize_page_tree()

Pillow is a Python imaging library. From 5.1.0 until 13.0.0, Pillow's PdfParser.get_value() can recurse without a limit while reading nested PDF objects. The parser follows attacker-controlled arrays and dictionaries when an existing PDF…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112396Medium· 5.9
yesterday

Pillow: Heap use-after-free when encoding TIFF to an in-memory buffer

Pillow is a Python imaging library. From 11.3.0 until 13.0.0, Pillow has a heap use-after-free when libtiff rejects a tag while encoding TIFF data to an in-memory buffer. When an application saves attacker-influenced TIFF tags to BytesIO…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112395Medium· 6.5
yesterday

Pillow tiled-TIFF decoder reads past tile buffer in copy4 (Unpack.c:1290)

Pillow is a Python imaging library. From 8.2.0 until 13.0.0, Pillow's tiled-TIFF decoder can read past the tile buffer while copying four-byte pixels. In _decodeTile, libtiff can return a tile allocation smaller than the required row str…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112398Critical· 9.2
yesterday

Pillow: Heap buffer overflow in FlashPix (FPX) JPEG decoding leads to code execution

Pillow is a Python imaging library. Prior to 13.0.0, Pillow's FlashPix JPEG-tile decoder can write decoded scanlines beyond the allocated tile buffer. FlashPix (FPX) JPEG decoding selects raw mode LA with two bytes per pixel, while an un…

▾ Midnightpython-pillow · Pillowvia CVEORG
CVE-2026-112400High· 8.7
yesterday

Pillow: GIF seek keeps rejected size after DecompressionBombError, allowing DoS

Pillow is a Python imaging library. From 9.2.0 until 13.0.0, Pillow can retain a rejected GIF frame size after a decompression-bomb exception. In GifImageFile._seek, a crafted GIF can leave rejected dimensions stored after Image.Decompre…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112399High· 8.7
yesterday

Pillow: APNG background disposal allocates full canvas before decompression bomb check

Pillow is a Python imaging library. From 8.1.0 until 13.0.0, Pillow can allocate an APNG disposal background at the full canvas size before applying the decompression-bomb check. A crafted APNG with a small first frame, a very large decl…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112401Medium· 6.9
yesterday

Pillow: Quadratic GIF comment concatenation allows DoS in Image.open()

Pillow is a Python imaging library. From 5.4.0 until 13.0.0, Pillow performs quadratic copying while parsing GIF comments. GifImageFile._seek() repeatedly appends immutable bytes for comment sub-blocks and multiple comment extensions, an…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112393Critical· 9.2PoC
yesterday

Pillow: Heap buffer overflow in _tiffWriteProc when saving TIFF to BytesIO

Pillow is a Python imaging library. From 2.0.0 until 13.0.0, Pillow has a heap buffer overflow and stale-heap disclosure in _tiffWriteProc when saving compressed TIFF data through libtiff to a target without a usable fileno(), such as By…

▾ Abyssalpython-pillow · Pillowvia CVEORG
CVE-2026-112392High· 8.2
yesterday

Pillow: NULL dereference in ImagingExpand via rank filters on zero-size images

Pillow is a Python imaging library. Prior to 13.0.0, Pillow's rank-based filters can dereference invalid image storage for a zero-size image. ImagingExpand() allocates a non-empty output and then faults while replicating edges by reading…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112403Critical· 9.2
yesterday

Pillow: Heap buffer overflow in ImagingJpegDecode

Pillow is a Python imaging library. Prior to 13.0.0, Pillow's JPEG decoder can write a full-width scanline into a buffer sized for a requested draft scale. ImagingJpegDecode does not verify libjpeg's actual output width and component cou…

▾ Midnightpython-pillow · Pillowvia CVEORG
CVE-2026-112404High· 8.8
yesterday

Pillow: OOB read in TiffDecode.c tile and RGBA paths leaks heap memory into pixels

Pillow is a Python imaging library. From 8.1.0 until 13.0.0, Pillow's TIFF tile and RGBA decode paths can read beyond row data produced by libtiff. In _decodeTile and the RGBA unpacker path, when Pillow and libtiff interpret duplicated P…

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112405High· 8.7
yesterday

Pillow: NULL pointer dereference in Image.merge via an unvalidated band 0

Pillow is a Python imaging library. From 12.0.0 until 13.0.0, Pillow's Image.merge() can dereference a null image8 plane. Validation skips the first input band, allowing a 32-bit integer or floating-point image backed by image32 storage …

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112406High· 8.7
yesterday

Pillow: Infinite loop in PdfParser.rewrite_pages on page tree Parent cycle

Pillow is a Python imaging library. From 5.1.0 until 13.0.0, Pillow can enter an infinite loop while rewriting PDF pages. PdfParser.rewrite_pages() follows Parent relationships without detecting a cycle in the page tree. An attacker can …

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112891Medium· 6.9
yesterday

Pillow: Quadratic GIF comment copying during save

Pillow is a Python imaging library. From 9.2.0 until 13.0.0, Pillow performs quadratic copying when saving a GIF with a long comment. _get_global_header() repeatedly copies portions of comment data while assembling the global header, inc…

▾ Sunlitpython-pillow · Pillowvia CVEORG
CVE-2026-112892High· 8.7
yesterday

Pillow: MSP RLE decoder expands a tiny file into unbounded memory

Pillow is a Python imaging library. From 4.1.0 until 13.0.0, Pillow's MSP RLE decoder can expand a small file into an unbounded in-memory buffer. The decoder writes run-length output to BytesIO without limiting expansion to the declared …

▾ Twilightpython-pillow · Pillowvia CVEORG
CVE-2026-112402High· 8.7PoC
yesterday

Pillow: Double free in ImagingScaleAffine on calloc failure via Image.transform

Pillow is a Python imaging library. Prior to 13.0.0, Pillow can double free image memory when ImagingScaleAffine encounters a selective allocation failure. The affected fast path handles Transform.EXTENT or pure scale-and-translate Trans…

▾ Midnightpython-pillow · Pillowvia CVEORG
CVE-2026-112397High· 8.7PoC
yesterday

Pillow: Out-of-bounds access in _imagingmorph on a zero-width image

Pillow is a Python imaging library. Prior to 13.0.0, Pillow's ImageMorph.MorphOp.apply() can access memory before a row buffer for a zero-width image. PPM and PGM input can create an image with width zero, and the native morphology routi…

▾ Midnightpython-pillow · Pillowvia CVEORG
python-pillow vulnerabilities (CVEs) · VulnSea