CVE-2016-3616
High · 8.8CVSS
8.8
EPSS
4.4%
Published
Feb 13, 2017
CISA due date
—
Cloudanix analysis
A bug in image processing tools can let attackers crash the program or run their own code by tricking it with a specially made picture file.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Remote Code Execution
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The vulnerability is a NULL pointer dereference in the cjpeg utility that can lead to application crash or potentially arbitrary code execution when processing a maliciously crafted input file.
Why it matters to the business
Attackers could disrupt image processing workflows or gain unauthorized access to systems handling untrusted image files, potentially leading to data breaches or service interruptions in environments using affected libjpeg versions.
How an attack unfolds
An attacker crafts a malicious file designed to trigger the NULL pointer dereference in cjpeg and delivers it to a victim who processes it with the vulnerable utility, resulting in crash or code execution.
How to fix it
Update to a patched version of libjpeg or libjpeg-turbo that resolves the issue in cjpeg. Avoid processing untrusted files with vulnerable versions and consider disabling or sandboxing the cjpeg utility where possible.
How to confirm the fix worked
Verify the installed version of libjpeg or libjpeg-turbo against known affected releases; test cjpeg with both benign and potentially malicious image files to confirm absence of crashes or unexpected behavior.
Typical attack path
- Identify target systems using vulnerable cjpeg utility
- Craft a malicious input file to trigger the NULL pointer dereference
- Deliver the file to the target via email, web download, or other means
- Victim processes the file with cjpeg triggering the flaw
How to detect it
Review system and application logs for unexpected crashes or terminations of cjpeg when handling image files; investigate any instances where untrusted files were processed by the utility.
What your security team should do
- Apply available patches or upgrades to affected libjpeg packages across all systems
- Restrict use of cjpeg to trusted inputs only or replace with safer alternatives
- Implement monitoring for process crashes related to image conversion tools
The record
The cjpeg utility in libjpeg allows remote attackers to cause a denial of service (NULL pointer dereference and application crash) or execute arbitrary code via a crafted file.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | libjpeg-turbo | 0 | 1:1.4.2-1 |
| Debian:12 | libjpeg-turbo | 0 | 1:1.4.2-1 |
| Debian:13 | libjpeg-turbo | 0 | 1:1.4.2-1 |
| Debian:8 | libjpeg-turbo | 0 | 1:1.3.1-12+deb8u1 |
| Red Hat:enterprise_linux:7::client | libjpeg-turbo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::client | libjpeg-turbo-debuginfo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::client | libjpeg-turbo-devel | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::client | libjpeg-turbo-static | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::client | libjpeg-turbo-utils | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::client | turbojpeg | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::client | turbojpeg-devel | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::computenode | libjpeg-turbo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::computenode | libjpeg-turbo-debuginfo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::computenode | libjpeg-turbo-devel | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::computenode | libjpeg-turbo-static | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::computenode | libjpeg-turbo-utils | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::computenode | turbojpeg | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::computenode | turbojpeg-devel | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::server | libjpeg-turbo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::server | libjpeg-turbo-debuginfo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::server | libjpeg-turbo-devel | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::server | libjpeg-turbo-static | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::server | libjpeg-turbo-utils | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::server | turbojpeg | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::server | turbojpeg-devel | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::workstation | libjpeg-turbo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::workstation | libjpeg-turbo-debuginfo | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::workstation | libjpeg-turbo-devel | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::workstation | libjpeg-turbo-static | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::workstation | libjpeg-turbo-utils | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::workstation | turbojpeg | 0 | 0:1.2.90-8.el7 |
| Red Hat:enterprise_linux:7::workstation | turbojpeg-devel | 0 | 0:1.2.90-8.el7 |
| Ubuntu:14.04:LTS | libjpeg-turbo | 0 | 1.3.0-0ubuntu2.1 |
| Ubuntu:16.04:LTS | libjpeg-turbo | 0 | 1.4.2-0ubuntu3 |
| Ubuntu:16.04:LTS | libjpeg-turbo | 0 | 1.4.2-0ubuntu3.1 |
| Ubuntu:18.04:LTS | libjpeg-turbo | 0 | 1.5.2-0ubuntu5.18.04.1 |
| Ubuntu:18.04:LTS | libjpeg9 | 0 | 1:9b-2 |
| Ubuntu:Pro:16.04:LTS | libjpeg9 | 0 | 1:9b-1ubuntu1+esm1 |
Related vulnerabilities
- CVE-2018-14498 get_8bit_row in rdbmp.c in libjpeg-turbo through 1.5.90 and MozJPEG through 3.3.1 allows… Also affects libjpeg-turbo
- CVE-2018-11212 An issue was discovered in libjpeg 9a and 9d. Also affects libjpeg-turbo
- CVE-2014-9092 libjpeg-turbo before 1.3.1 allows remote attackers to cause a denial of service (crash)… Also affects libjpeg-turbo
- CVE-2026-112405 Pillow is a Python imaging library. CWE-476
- CVE-2026-112392 Pillow is a Python imaging library. CWE-476
- CVE-2026-100348 kin-openapi is a Go project for handling OpenAPI files. CWE-476
- CVE-2026-100349 kin-openapi is a Go project for handling OpenAPI files. CWE-476
- CVE-2026-109280 ImageMagick 7.1.0-20 before 7.1.2-32 contains a use after free vulnerability in the -fx… CWE-476