CVE-2024-28577
Medium · 5.5CVSS
5.5
EPSS
0.3%
Published
Mar 20, 2024
CISA due date
—
Cloudanix analysis
A bug in an image library can make programs that open JPEG pictures crash when they receive a specially made file.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Null pointer dereference in jpeg_read_exif_profile_raw() causes immediate process crash when parsing specially crafted JPEG files.
Why it matters to the business
Applications that process user-supplied JPEG images become unavailable until restarted, disrupting workflows that rely on image handling libraries.
How an attack unfolds
An attacker supplies a JPEG image containing malformed EXIF data to any application linked against the vulnerable FreeImage library; the library dereferences a null pointer inside jpeg_read_exif_profile_raw and terminates.
How to fix it
Upgrade FreeImage to a version containing the fix for the null dereference; rebuild and redeploy all dependent applications. Where immediate patching is impossible, add input validation or sandboxing around JPEG processing.
How to confirm the fix worked
Confirm the installed FreeImage binary no longer contains the vulnerable jpeg_read_exif_profile_raw implementation and that crafted test images no longer cause crashes.
Typical attack path
- Identify an application that accepts JPEG input and uses FreeImage 3.19.0
- Craft a JPEG file that triggers the null dereference in jpeg_read_exif_profile_raw
- Deliver the file through normal application channels (upload, open, preview)
- Observe application crash and denial of service
How to detect it
Review application and system logs for abrupt terminations or segmentation faults that coincide with JPEG processing activity; correlate with file-upload or image-open events.
What your security team should do
- Prioritize patching of any internet-facing or multi-tenant services that accept JPEG images
- Scan build pipelines and package repositories for the vulnerable FreeImage version
- Implement runtime monitoring for unexpected process terminations during image handling
The record
Null Pointer Dereference vulnerability in open source FreeImage v.3.19.0 [r1909] allows a local attacker to cause a denial of service (DoS) via the jpeg_read_exif_profile_raw() function when reading images in JPEG format.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | freeimage | 0 | No fix |
| Debian:12 | freeimage | 0 | No fix |
| Debian:13 | freeimage | 0 | No fix |
| Ubuntu:20.04:LTS | freeimage | 0 | No fix |
| Ubuntu:22.04:LTS | freeimage | 0 | No fix |
| Ubuntu:24.04:LTS | freeimage | 0 | No fix |
| Ubuntu:24.10 | freeimage | 0 | No fix |
| Ubuntu:25.04 | freeimage | 0 | No fix |
| Ubuntu:25.10 | freeimage | 0 | No fix |
| Ubuntu:Pro:14.04:LTS | freeimage | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | freeimage | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | freeimage | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | freeimage | 0 | No fix |
Related vulnerabilities
- CVE-2024-9029 A flaw was found in the freeimage library. Also affects freeimage
- CVE-2024-31570 In FreeImage library version 3.19.0 [r1909], when reading images in XPM format, the… Also affects freeimage
- CVE-2024-28583 Buffer Overflow vulnerability in open source FreeImage v.3.19.0 [r1909] allows a local… Also affects freeimage
- CVE-2024-28584 Null Pointer Dereference vulnerability in open source FreeImage v.3.19.0 [r1909] allows a… Also affects freeimage
- CVE-2024-28578 Buffer Overflow vulnerability in open source FreeImage v.3.19.0 [r1909] allows a local… Also affects freeimage
- CVE-2024-28579 Buffer Overflow vulnerability in open source FreeImage v.3.19.0 [r1909] allows a local… Also affects freeimage
- CVE-2024-28580 Buffer Overflow vulnerability in open source FreeImage v.3.19.0 [r1909] allows a local… Also affects freeimage
- CVE-2024-28582 Buffer Overflow vulnerability in open source FreeImage v.3.19.0 [r1909] allows a local… Also affects freeimage