Pillow: PNG eXIf chunk makes EXIF parsing run in quadratic time
影響: pip:Pillow >= 11.0.0, < 13.0.0 → 13.0.0
A PNG file with a large eXIf chunk full of repeated 6-byte markers makes Pillow's EXIF parser take seconds of CPU instead of milliseconds. The cost grows with the square of the chunk size, so a normal small-photo-sized file is enough to cause real delay. ### Details Exif.load() in src/PIL/Image.py strips a marker from the start of the EXIF data like this: python while data and data.startswith(b"Exif\x00\x00"): data = data[6:] Each pass makes a new copy of the remaining data. A real camera write…
Read on GitHub Advisory Database
| CVE | CVE-2026-96643 |
|---|---|
| Source | GitHub Advisory Database |
| Fetched | 10/23/2026, 05:09 AM |
| Data | Markdown JSON |
On 10/23/2026, 01:02 AM, GitHub Advisory Database published "Pillow: PNG eXIf chunk makes EXIF parsing run in quadratic time" (type: Advisory). Severity is "High" (high). Related technologies: Python. CVE: CVE-2026-96643.