44Security
55========
66
7- Prevent decompression bomb when parsing PDF
8- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
7+ :cve: ` 2026-59200 `: Prevent decompression bomb when parsing PDF
8+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
99
1010When parsing a PDF, ``PdfStream.decode() `` attempts to decompress data without any
1111limit. A default maximum of ``ImageFile.SAFEBLOCK `` has been added. ``PdfParser `` was
@@ -19,51 +19,51 @@ If an attacker has control over the path passed to
1919attacker may be able to execute arbitrary shell commands. Reported by Bin Luo,
2020University of Electronic Science and Technology of China (luob87709@gmail.com).
2121
22- EPS image infinite loop
23- ^^^^^^^^^^^^^^^^^^^^^^^
22+ :cve: ` 2026-59203 `: EPS image infinite loop
23+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2424
2525If a negative byte count is specified for the BeginBinary byte count, an infinite loop
2626is possible as Pillow seeks repeatedly backwards. This value will now be validated.
2727BeginBinary parsing was only added in Pillow 12.0.0. Reported by
2828`jiagongzheng-stack <https://github.com/jiagongzheng-stack >`__.
2929
30- JPEG2000 image memory usage
31- ^^^^^^^^^^^^^^^^^^^^^^^^^^^
30+ :cve: ` 2026-59204 `: JPEG2000 image memory usage
31+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3232
3333The total component width was incorrectly accumulated across tiles within a JPEG2000
3434image, potentially leading to excessive memory use. This was introduced as part of an
3535earlier security fix in Pillow 8.2.0, but has now been fixed. Reported by Fr3v1.
3636
37- McIdas out-of-bounds (OOB) read
38- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
37+ :cve: ` 2026-54058 `: McIdas out-of-bounds (OOB) read
38+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3939
4040McIdas images can specify the stride, and if incorrectly set, may cause an OOB read.
4141This has been fixed. Reported by Devansh Shah, RUDRA Cybersecurity Pvt. Ltd.
4242
43- Out-of-bounds (OOB) read when saving 1 mode TGA images
44- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
43+ :cve: ` 2026-59198 `: Out-of-bounds (OOB) read when saving 1 mode TGA images
44+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4545
4646Saving 1 mode images as TGA with run-length encoding can trigger an OOB read. This was
4747added in Pillow 5.2.0, but the functionality is not possible under the TGA
4848specification, so it has been removed. Reported by
4949`Seratov <https://github.com/Seratov >`__.
5050
51- Out-of-bounds (OOB) write from large RankFilter sizes
52- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
51+ :cve: ` 2026-59197 `: Out-of-bounds (OOB) write from large RankFilter sizes
52+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5353
5454:py:class: `~PIL.ImageFilter.RankFilter `, and its subclasses, can potentially write
5555out-of-bounds if given a large size. This has been fixed. Reported by
5656`Seratov <https://github.com/Seratov >`__.
5757
58- Out-of-bounds (OOB) write from ``Image.paste() ``
59- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
58+ :cve: ` 2026-59199 `: Out-of-bounds (OOB) write from ``Image.paste() ``
59+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
6060
6161Large paste box dimensions can cause an OOB write in ``Image.crop() ``,
6262``Image.paste() `` and ``Image.alpha_composite() ``. This has been fixed. Reported by
6363`Seratov <https://github.com/Seratov >`__.
6464
65- Out-of-bounds (OOB) write in ``ImageCmsTransform ``
66- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
65+ :cve: ` 2026-59205 `: Out-of-bounds (OOB) write in ``ImageCmsTransform ``
66+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
6767
6868Apply a transform mode to a different image mode can trigger an OOB write in
6969``ImageCmsTransform ``. Errors are now raised if the mode does not match. Reported by
0 commit comments