Open-Source Security Intelligence

Know every vulnerability
before it knows you.

DevGuard continuously monitors your dependencies and alerts you when CVEs like this one affect your stack — with real-time threat intelligence built for developers.

Search

CVE-2026-96778

HighCVSS 7.7 / 10
Published Oct 21, 2026·Last modified Oct 24, 2026
Affected Components(15)
python-pillow/pillow
12.3.0
python-pillow/pillow
10.4.0
python-pillow/pillow
12.2.0
1 / 5
Description

Pillow is a Python imaging library. From 9.4.0 until 13.0.0, ImagingJpegEncode() in src/libImaging/JpegEncode.c can call jpeg_write_marker() for a JPEG COM comment when an ICC profile has exactly filled the 65536-byte encoder buffer. libjpeg writes one byte before checking the exhausted free_in_buffer counter, which then wraps and permits the attacker-controlled comment and subsequent compressed image data to overwrite adjacent heap memory. Re-saving an untrusted image as JPEG while preserving its ICC profile and forwarded comment can crash the process and may enable code execution in suitable runtime and heap layouts. This issue is fixed in version 13.0.0.

Upload your SBOM

Upload your own SBOM in CycloneDX 1.6 or higher (JSON) directly here to check your vulnerabilities.

Risk Scores
Base Score
7.7

The vulnerability can be exploited over the network without needing physical access. It is easy for an attacker to exploit this vulnerability. An attacker does not need any special privileges or access rights.

Threat Intelligence
6.8

Exploitation attempts have been detected. Elevated vigilance and prompt remediation are advised.

EPSS
0.45%

The exploit probability is very low. The vulnerability is unlikely to be exploited in the next 30 days.

Exploit
Proof of Concept

A proof of concept is available for this vulnerability (1 exploit found).

Scan your project

Continuously monitor your dependencies and get alerted when vulnerabilities like this one affect your stack.

Checkout DevGuard